From 98d69f426fc1243de3817e602fe2da959962375e Mon Sep 17 00:00:00 2001 From: kou Date: Sat, 3 Nov 2012 08:56:22 +0000 Subject: * bin/testrb: Use only Test::Unit::AutoRunner in test-unit gem compatible API to be available by both test/unit bundled in Ruby and test-unit gem. * lib/test/unit.rb (Test::Unit::AutoRunner): Move codes from testrb. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 9 +++++++++ bin/testrb | 9 +-------- lib/test/unit.rb | 7 +++++++ 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4f91ecd00c..4db5564153 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Sat Nov 3 17:55:07 2012 Kouhei Sutou + +Sat Nov 3 17:53:43 2012 Kouhei Sutou + + * bin/testrb: Use only Test::Unit::AutoRunner in test-unit gem + compatible API to be available by both test/unit bundled in Ruby + and test-unit gem. + * lib/test/unit.rb (Test::Unit::AutoRunner): Move codes from testrb. + Sat Nov 3 14:56:21 2012 Tadayoshi Funaba * ext/date/date_parse.c (parse_eu): should capture apostrophe too. diff --git a/bin/testrb b/bin/testrb index e9046eb147..23a00b439f 100755 --- a/bin/testrb +++ b/bin/testrb @@ -1,10 +1,3 @@ #!/usr/bin/env ruby require 'test/unit' -tests = Test::Unit::AutoRunner.new(true) -tests.options.banner.sub!(/\[options\]/, '\& tests...') -unless tests.process_args(ARGV) - abort tests.options.banner -end -files = tests.to_run -$0 = files.size == 1 ? File.basename(files[0]) : files.to_s -exit tests.run +exit Test::Unit::AutoRunner.run(true) diff --git a/lib/test/unit.rb b/lib/test/unit.rb index d1d40524a8..e08087154d 100644 --- a/lib/test/unit.rb +++ b/lib/test/unit.rb @@ -804,6 +804,7 @@ module Test attr_accessor :to_run, :options def initialize(force_standalone = false, default_dir = nil, argv = ARGV) + @force_standalone = force_standalone @runner = Runner.new do |files, options| options[:base_directory] ||= default_dir files << default_dir if files.empty? and default_dir @@ -813,6 +814,9 @@ module Test end Runner.runner = @runner @options = @runner.option_parser + if @force_standalone + @options.banner.sub!(/\[options\]/, '\& tests...') + end @argv = argv end @@ -822,6 +826,9 @@ module Test end def run + if @force_standalone and not process_args(@argv) + abort @options.banner + end @runner.run(@argv) || true end -- cgit v1.2.3