From 421160c740db7e0b9be4e0bd69e56febde998256 Mon Sep 17 00:00:00 2001 From: Damir Zekic Date: Wed, 11 Jun 2014 19:22:04 +0200 Subject: [PATCH 1/2] Report failed test name in dot format output Dot formatter didn't show name of a failed test which made it hard to find a failed example. --- lib/turn/reporters/dot_reporter.rb | 5 ++++- test/helper.rb | 20 ++++++++++++++++++++ test/test_reporters.rb | 8 ++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/lib/turn/reporters/dot_reporter.rb b/lib/turn/reporters/dot_reporter.rb index 092a2ad..c63bec3 100644 --- a/lib/turn/reporters/dot_reporter.rb +++ b/lib/turn/reporters/dot_reporter.rb @@ -57,8 +57,11 @@ def finish_suite(suite) unless list.empty? # or verbose? #report << "\n\n-- Failures and Errors --\n\n" list.uniq.each do |testunit| + heading = [] message = [] - message << (testunit.fail? ? FAIL : ERROR) + heading << (testunit.fail? ? FAIL : ERROR) + heading << testunit.name + message << heading.join(' ') message << testunit.message.tabto(2) message << clean_backtrace(testunit.backtrace).join("\n").tabto(2) report << "\n" << message.join("\n") << "\n" diff --git a/test/helper.rb b/test/helper.rb index 55eba0f..e5a848b 100644 --- a/test/helper.rb +++ b/test/helper.rb @@ -89,6 +89,26 @@ def test_error HERE end +# +def setup_testunit_dotted + text = <<-HERE +class DottedTest < Test::Unit::TestCase + def test_pass + assert_equal(1,1) + end + + def test_fail + assert_equal(1,2) + end + + def test_error + raise + end +end + HERE + save_test(text, 'dotted_test.rb') +end + # def setup_testunit_outline text = <<-HERE diff --git a/test/test_reporters.rb b/test/test_reporters.rb index 59803e0..1676550 100644 --- a/test/test_reporters.rb +++ b/test/test_reporters.rb @@ -19,6 +19,14 @@ def test_dotted assert result.index('0 errors'), "ACTUAL RESULT:\n#{result}" end + def test_dotted_shows_name + file = setup_testunit_dotted + result = turn '--dotted', file + assert result.index('FAIL test_fail'), "ACTUAL RESULT:\n#{result}" + assert result.index('ERROR test_error'), "ACTUAL RESULT:\n#{result}" + assert !result.index('test_pass'), "ACTUAL RESULT:\n#{result}" + end + def test_marshal file = setup_testunit result = turn '--marshal', file From 44805acbb29d4467bdf005a5e37095d6c8b11ea7 Mon Sep 17 00:00:00 2001 From: Damir Zekic Date: Wed, 11 Jun 2014 19:36:31 +0200 Subject: [PATCH 2/2] Show suite name for failed tests in dotted format --- lib/turn/reporters/dot_reporter.rb | 6 +++--- test/test_reporters.rb | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/turn/reporters/dot_reporter.rb b/lib/turn/reporters/dot_reporter.rb index c63bec3..2a97812 100644 --- a/lib/turn/reporters/dot_reporter.rb +++ b/lib/turn/reporters/dot_reporter.rb @@ -49,18 +49,18 @@ def finish_suite(suite) suite.each do |testcase| testcase.each do |testunit| if testunit.fail? || testunit.error? - list << testunit + list << [testcase, testunit] end end end unless list.empty? # or verbose? #report << "\n\n-- Failures and Errors --\n\n" - list.uniq.each do |testunit| + list.uniq.each do |(testcase, testunit)| heading = [] message = [] heading << (testunit.fail? ? FAIL : ERROR) - heading << testunit.name + heading << "#{testcase.name}::#{testunit.name}" message << heading.join(' ') message << testunit.message.tabto(2) message << clean_backtrace(testunit.backtrace).join("\n").tabto(2) diff --git a/test/test_reporters.rb b/test/test_reporters.rb index 1676550..2661284 100644 --- a/test/test_reporters.rb +++ b/test/test_reporters.rb @@ -22,8 +22,8 @@ def test_dotted def test_dotted_shows_name file = setup_testunit_dotted result = turn '--dotted', file - assert result.index('FAIL test_fail'), "ACTUAL RESULT:\n#{result}" - assert result.index('ERROR test_error'), "ACTUAL RESULT:\n#{result}" + assert result.index('FAIL DottedTest::test_fail'), "ACTUAL RESULT:\n#{result}" + assert result.index('ERROR DottedTest::test_error'), "ACTUAL RESULT:\n#{result}" assert !result.index('test_pass'), "ACTUAL RESULT:\n#{result}" end