features/support/env.rb in xcpretty-0.1.2 vs features/support/env.rb in xcpretty-0.1.3

- old
+ new

@@ -7,10 +7,11 @@ require 'lib/xcpretty/version' require 'lib/xcpretty/syntax' require 'rexml/document' require 'lib/xcpretty/formatters/formatter' require 'lib/xcpretty/reporters/junit' +require 'lib/xcpretty/reporters/html' include XCPretty::ANSI TEST_RUN_START_MATCHER = /Test Suite .+ started/ TEST_SUITE_COMPLETION_MATCHER = /Executed \d+ tests, with \d+ failures \(\d+ unexpected\) in \d+\.\d+ \(\d+\.\d+\) seconds/ @@ -39,10 +40,25 @@ def run_output @output ||= '' end +def html_report + @html_report ||= REXML::Document.new(File.open(XCPretty::HTML::FILEPATH, 'r').read.sub("<!DOCTYPE html>","")) +end + +def html_report_body + html_report.root.get_elements('//body').first +end + +def html_test_suites + parent = html_report_body.get_elements("//*[@id='test-suites']/").first + parent.elements.to_a.select do |e| + e.attributes['class'] && e.attributes['class'].include?('test-suite') + end +end + def junit_report REXML::Document.new(File.open(XCPretty::JUnit::FILEPATH, 'r').read) end def junit_report_root @@ -70,7 +86,9 @@ After do @input = "" @output = "" @custom_report_file1.unlink if @custom_report_file1 @custom_report_file2.unlink if @custom_report_file2 + @html_report = nil FileUtils.rm_rf(XCPretty::JUnit::FILEPATH) + FileUtils.rm_rf(XCPretty::HTML::FILEPATH) end