Sha256: e45fcd9cd51e881dd8af9a0b8a509d974b89de8ae2c2dfb9a7996e17a2d3e398

Contents?: true

Size: 729 Bytes

Versions: 5

Compression:

Stored size: 729 Bytes

Contents

module SpecTracker
  module TestReportParser
    module JUnit
      class Parser < BaseParser
        def initialize
          @test_result_mapper = Mapper.new
        end

        private

        attr_reader :test_result_mapper

        def parse_single(file)
          test_results = []
          return test_results unless valid_extension?(file)
          xml_report = File.open(file) {|f| Nokogiri::XML(f)}
          test_cases(xml_report).each {|test_case| test_results << test_result_mapper.map(test_case)}
          test_results
        end

        def file_extension
          '.xml'.freeze
        end

        def test_cases(xml_report)
          xml_report.xpath('//testcase')
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
spec_tracker-1.2.4 lib/spec_tracker/test_report_parser/j_unit/parser.rb
spec_tracker-1.2.3 lib/spec_tracker/test_report_parser/j_unit/parser.rb
spec_tracker-1.2.2 lib/spec_tracker/test_report_parser/j_unit/parser.rb
spec_tracker-1.2.1 lib/spec_tracker/test_report_parser/j_unit/parser.rb
spec_tracker-1.2.0 lib/spec_tracker/test_report_parser/j_unit/parser.rb