Project

General

Profile

Actions

Feature #4657

closed

add option to hide skip messages on unit/test

Added by sorah (Sorah Fukumori) almost 13 years ago. Updated almost 13 years ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-dev:43493]

Description

最近test-allでSkipが多いので、skipのメッセージ表示を抑制するオプションを追加してはどうでしょう。

ちなみに、ruby-jaで以下のような流れがありました。

nurse: そういえば、うささんの今のtest-allのskipって、test-allの最後で表示されたほうが嬉しいの?
unak: まったくうれしくない。
nurse: 今表示されてるのも消えたほうがいい?
unak: skipの表示を抑制するオプションはほしい。

以下のパッチを適用するとtest/unit (test-all)に--hide-skipオプションが追加され、
--hide-skipオプションを付けて実行するとSkippedメッセージが表示されなくなります。

従来通り、Skip数は末尾のレポートで確認することができるようになっています。

出力例:

$ make TESTS='--hide-skip date' test-all
./miniruby -I../../lib -I. -I.ext/common ../../tool/runruby.rb --extout=.ext -- "../../test/runner.rb" --ruby="./miniruby -I../../lib -I. -I.ext/common ../../tool/runruby.rb --extout=.ext --" --hide-skip date
Run options: "--ruby=./miniruby -I../../lib -I. -I.ext/common ../../tool/runruby.rb --extout=.ext --" --hide-skip

Running tests:

..............................SSS....SSSSSSSSSSSSSSSS.SS........................................................................

Finished tests in 11.376260s, 11.2515 tests/s, 14151.3116 assertions/s.

128 tests, 160989 assertions, 0 failures, 0 errors, 21 skips

= patch below

diff --git lib/test/unit.rb lib/test/unit.rb
index 1f1bb09..e88309f 100644
--- lib/test/unit.rb
+++ lib/test/unit.rb
@@ -103,6 +103,10 @@ module Test
opts.on '--ruby VAL', "Path to ruby; It'll have used at -j option" do |a|
options[:ruby] = a.split(/ /).reject(&:empty?)
end
+

  •    opts.on '--hide-skip', 'Hide skipped tests' do
    
  •      options[:hide_skip] = true
    
  •    end
     end
    
     def non_options(files, options)
    

@@ -547,6 +551,7 @@ module Test
end
}
end

  •    report.reject!{|r| r.start_with? "Skipped:" } if @opts[:hide_skip]
       result
     end
    

diff --git test/testunit/test4test_hideskip.rb test/testunit/test4test_hideskip.rb
new file mode 100644
index 0000000..6fe3284
--- /dev/null
+++ test/testunit/test4test_hideskip.rb
@@ -0,0 +1,7 @@
+require 'test/unit'
+
+class TestForTestHideSkip < Test::Unit::TestCase

  • def test_skip
  • skip
  • end
    +end
    diff --git test/testunit/test_hideskip.rb test/testunit/test_hideskip.rb
    new file mode 100644
    index 0000000..967ecaf
    --- /dev/null
    +++ test/testunit/test_hideskip.rb
    @@ -0,0 +1,20 @@
    +require 'test/unit'

+class TestHideSkip < Test::Unit::TestCase

  • def test_hideskip
  • test_out, o = IO.pipe
  • spawn(*@options[:ruby], "#{File.dirname(FILE)}/test4test_hideskip.rb",
  •      out: o, err: o)
    
  • o.close
  • assert_match(/assertions/s.\n\n 1) Skipped/,test_out.read)
  • test_out.close
  • test_out, o = IO.pipe
  • spawn(*@options[:ruby], "#{File.dirname(FILE)}/test4test_hideskip.rb",
  •      "--hide-skip", out: o, err: o)
    
  • o.close
  • assert_match(/assertions/s.\n\n1 tests, 0 assertions, 0 failures, 0 errors, 1 skips/,
  •             test_out.read)
    
  • test_out.close
  • end
    +end
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0