Class: ApiTester::ApiReport

Inherits:
Object
  • Object
show all
Defined in:
lib/api-tester/reporter/api_report.rb

Overview

class for dealing with reports generated by the modules during test suite

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeApiReport

Returns a new instance of ApiReport.



10
11
12
# File 'lib/api-tester/reporter/api_report.rb', line 10

def initialize
  self.reports = []
end

Instance Attribute Details

#reportsObject

Returns the value of attribute reports.



8
9
10
# File 'lib/api-tester/reporter/api_report.rb', line 8

def reports
  @reports
end

Instance Method Details

#add_new(url:, request:, expected_response:, actual_response:, description: 'case') ⇒ Object



14
15
16
17
18
19
20
21
# File 'lib/api-tester/reporter/api_report.rb', line 14

def add_new(url:, request:, expected_response:, actual_response:, description: 'case')
  report = Report.new description,
                      url,
                      request,
                      expected_response,
                      actual_response
  reports << report
end

#add_new_report(report) ⇒ Object



23
24
25
# File 'lib/api-tester/reporter/api_report.rb', line 23

def add_new_report(report)
  reports << report
end

#add_reports(reports) ⇒ Object



27
28
29
30
31
# File 'lib/api-tester/reporter/api_report.rb', line 27

def add_reports(reports)
  reports.each do |report|
    add_new_report(report)
  end
end


33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/api-tester/reporter/api_report.rb', line 33

def print
  puts ''
  if reports.size.zero?
    puts 'No issues found'
  else
    puts "Issues discovered: #{reports.size}"
    reports.each do |report|
      report.print
      puts ''
      puts ''
    end
    puts "Total issues: #{reports.size}"
  end
end