diff options
-rw-r--r-- | ChangeLog | 14 | ||||
-rwxr-xr-x | bin/testrb | 2 | ||||
-rw-r--r-- | lib/test/unit.rb | 10 |
3 files changed, 22 insertions, 4 deletions
@@ -1,3 +1,17 @@ +Sun Feb 13 00:29:18 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * lib/test/unit.rb (Test::Unit::Options#process_args): always + return options. + + * lib/test/unit.rb (Test::Unit::RequireFiles#non_options): return + if any test case get loaded. + + * lib/test/unit.rb (Test::Unit::AutoRunner#initialize): do not add + default directory if it is nil. + + * lib/test/unit.rb (Test::Unit::AutoRunner#process_args): return + true if any test cases to run. + Sat Feb 12 23:17:43 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> * lib/test/unit.rb (assert_include): add alias. diff --git a/bin/testrb b/bin/testrb index d03f057224..e9046eb147 100755 --- a/bin/testrb +++ b/bin/testrb @@ -5,6 +5,6 @@ tests.options.banner.sub!(/\[options\]/, '\& tests...') unless tests.process_args(ARGV) abort tests.options.banner end -p files = tests.to_run +files = tests.to_run $0 = files.size == 1 ? File.basename(files[0]) : files.to_s exit tests.run diff --git a/lib/test/unit.rb b/lib/test/unit.rb index d079f47d42..fd50d8100d 100644 --- a/lib/test/unit.rb +++ b/lib/test/unit.rb @@ -48,7 +48,7 @@ module Test opts.parse!(args) orig_args -= args args = @init_hook.call(args, options) if @init_hook - non_options(args, options) or return nil + non_options(args, options) @help = orig_args.map { |s| s =~ /[\s|&<>$()]/ ? s.inspect : s }.join " " @options = options end @@ -167,7 +167,8 @@ module Test module RequireFiles def non_options(files, options) - return false if !super or files.empty? + return false if !super + result = false files.each {|f| d = File.dirname(path = File.expand_path(f)) unless $:.include? d @@ -175,10 +176,12 @@ module Test end begin require path + result = true rescue LoadError puts "#{f}: #{$!}" end } + result end end @@ -227,7 +230,7 @@ module Test def initialize(force_standalone = false, default_dir = nil, argv = ARGV) @runner = Runner.new do |files, options| options[:base_directory] ||= default_dir - files << default_dir if files.empty? + files << default_dir if files.empty? and default_dir @to_run = files yield self if block_given? files @@ -238,6 +241,7 @@ module Test def process_args(*args) @runner.process_args(*args) + !@to_run.empty? end def run |