Class: TDI

Inherits:
Object
  • Object
show all
Defined in:
lib/tdi.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeTDI

Returns a new instance of TDI.



26
27
28
29
30
31
32
# File 'lib/tdi.rb', line 26

def initialize
  @skip = 0
  @pass = 0
  @warn = 0
  @fail = 0
  @report = {hostname: Socket.gethostname}
end

Instance Attribute Details

#failObject

Returns the value of attribute fail.



24
25
26
# File 'lib/tdi.rb', line 24

def fail
  @fail
end

#passObject

Returns the value of attribute pass.



24
25
26
# File 'lib/tdi.rb', line 24

def pass
  @pass
end

#reportObject

Returns the value of attribute report.



24
25
26
# File 'lib/tdi.rb', line 24

def report
  @report
end

#skipObject

Returns the value of attribute skip.



24
25
26
# File 'lib/tdi.rb', line 24

def skip
  @skip
end

#warnObject

Returns the value of attribute warn.



24
25
26
# File 'lib/tdi.rb', line 24

def warn
  @warn
end

Instance Method Details

#failure(role_name, plan_name, res_msg, res_dict) ⇒ Object



54
55
56
57
58
# File 'lib/tdi.rb', line 54

def failure(role_name, plan_name, res_msg, res_dict)
  update_report(:fail, role_name, plan_name, res_dict)
  printf("%-70s [ %s ]\n", res_msg, 'FAIL'.light_red)
  @fail += 1
end

#success(role_name, plan_name, res_msg, res_dict) ⇒ Object



41
42
43
44
45
46
# File 'lib/tdi.rb', line 41

def success(role_name, plan_name, res_msg, res_dict)
  update_report(:pass, role_name, plan_name, res_dict)
  # I like the seventies.
  printf("%-70s [ %s ]\n", res_msg, 'PASS'.light_green)
  @pass += 1
end

#totalObject



60
61
62
# File 'lib/tdi.rb', line 60

def total
  @skip + @pass + @warn + @fail
end

#update_report(status, role_name, plan_name, res_dict) ⇒ Object



34
35
36
37
38
39
# File 'lib/tdi.rb', line 34

def update_report(status, role_name, plan_name, res_dict)
  @report[role_name] = {} unless @report.has_key?(role_name)
  @report[role_name][plan_name] = [] unless @report[role_name].has_key?(plan_name)
  res_dict[:status] = status
  @report[role_name][plan_name] << res_dict
end

#warning(role_name, plan_name, res_msg, res_dict) ⇒ Object



48
49
50
51
52
# File 'lib/tdi.rb', line 48

def warning(role_name, plan_name, res_msg, res_dict)
  update_report(:warn, role_name, plan_name, res_dict)
  printf("%-70s [ %s ]\n", res_msg, 'WARN'.light_yellow)
  @warn += 1
end