Class: JunitModel::XMLBuilder

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

Overview

Convert Junit::TestGroup to XML

Class Method Summary collapse

Class Method Details

.suite_hash(suite) ⇒ Object



20
21
22
23
24
# File 'lib/junit_model/xml.rb', line 20

def self.suite_hash(suite)
  suite_hash = suite.to_h
  suite_hash.delete(:testcase)
  suite_hash
end

.xml_for_result(result) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/junit_model/xml.rb', line 6

def self.xml_for_result(result)
  builder = Builder::XmlMarkup.new indent: 2
  builder.instruct! :xml, version: '1.0', encoding: 'UTF-8'
  builder.testsuites(tests: result.test_count, failures: result.failures_count) do |suite_builder|
    result.test_suites.each do |suite|
      suite_builder.testsuite(suite_hash(suite)) do |test_builder|
        suite.test_cases.each do |test_case|
          test_builder.testcase(test_case.to_h)
        end
      end
    end
  end
end