diff --git a/lib/rspec_junit_formatter.rb b/lib/rspec_junit_formatter.rb index 4a69291..75d9dbd 100644 --- a/lib/rspec_junit_formatter.rb +++ b/lib/rspec_junit_formatter.rb @@ -20,7 +20,7 @@ def xml_dump output << %{ tests="#{example_count}"} output << %{ skipped="#{pending_count}"} output << %{ failures="#{failure_count}"} - output << %{ errors="0"} + output << %{ errors="#{error_count}"} output << %{ time="#{escape("%.6f" % duration)}"} output << %{ timestamp="#{escape(started.iso8601)}"} output << %{ hostname="#{escape(Socket.gethostname)}"} diff --git a/lib/rspec_junit_formatter/rspec2.rb b/lib/rspec_junit_formatter/rspec2.rb index a4adfd5..8171cc7 100644 --- a/lib/rspec_junit_formatter/rspec2.rb +++ b/lib/rspec_junit_formatter/rspec2.rb @@ -64,6 +64,10 @@ def failure_for(example) "#{message}\n#{backtrace.join("\n")}" end + def error_count + 0 + end + def find_shared_group(example) group_and_parent_groups(example).find { |group| group.metadata[:shared_group_name] } end diff --git a/lib/rspec_junit_formatter/rspec3.rb b/lib/rspec_junit_formatter/rspec3.rb index 0e513e4..af59096 100644 --- a/lib/rspec_junit_formatter/rspec3.rb +++ b/lib/rspec_junit_formatter/rspec3.rb @@ -45,6 +45,15 @@ def examples @examples_notification.notifications end + def error_count + # Introduced in rspec 3.6 + if @summary_notification.respond_to?(:errors_outside_of_examples_count) + @summary_notification.errors_outside_of_examples_count + else + 0 + end + end + def result_of(notification) notification.example.execution_result.status end