Sha256: a58b9589022bab06fb6a67eab904f03a9da165951736fc24bb2b843266369e56

Contents?: true

Size: 1.04 KB

Versions: 1

Compression:

Stored size: 1.04 KB

Contents

# frozen_string_literal: true

require 'api-tester/reporter/report'

module ApiTester
  # class for dealing with reports generated by the modules during test suite
  class ApiReport
    attr_accessor :reports

    def initialize
      self.reports = []
    end

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

    def add_new_report(report)
      reports << report
    end

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

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

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
api-tester-1.1.1 lib/api-tester/reporter/api_report.rb