mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	* lib/test/unit.rb: use standalone runner for -e.
* lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): accept multiple -p and -x options. * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#recursive_collect): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
		
							parent
							
								
									3cf7c1758f
								
							
						
					
					
						commit
						8c299e6e26
					
				
					 5 changed files with 37 additions and 16 deletions
				
			
		
							
								
								
									
										10
									
								
								ChangeLog
									
										
									
									
									
								
							
							
						
						
									
										10
									
								
								ChangeLog
									
										
									
									
									
								
							|  | @ -1,3 +1,13 @@ | ||||||
|  | Sun Dec 19 11:01:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org> | ||||||
|  | 
 | ||||||
|  | 	* lib/test/unit.rb: use standalone runner for -e. | ||||||
|  | 
 | ||||||
|  | 	* lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): accept | ||||||
|  | 	  multiple -p and -x options. | ||||||
|  | 
 | ||||||
|  | 	* lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#recursive_collect): | ||||||
|  | 	  ditto. | ||||||
|  | 
 | ||||||
| Sat Dec 18 16:36:23 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org> | Sat Dec 18 16:36:23 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org> | ||||||
| 
 | 
 | ||||||
| 	* ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate): | 	* ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate): | ||||||
|  |  | ||||||
|  | @ -271,4 +271,8 @@ module Test # :nodoc: | ||||||
|   end |   end | ||||||
| end | end | ||||||
| 
 | 
 | ||||||
| at_exit{exit(Test::Unit::AutoRunner.run($0)) unless($! || Test::Unit.run?)} | at_exit do | ||||||
|  |   unless $! || Test::Unit.run? | ||||||
|  |     exit Test::Unit::AutoRunner.run($0 != "-e" && $0) | ||||||
|  |   end | ||||||
|  | end | ||||||
|  |  | ||||||
|  | @ -1,3 +1,4 @@ | ||||||
|  | require 'test/unit' | ||||||
| require 'test/unit/ui/testrunnerutilities' | require 'test/unit/ui/testrunnerutilities' | ||||||
| require 'optparse' | require 'optparse' | ||||||
| 
 | 
 | ||||||
|  | @ -55,8 +56,8 @@ module Test | ||||||
|           require 'test/unit/collector/dir' |           require 'test/unit/collector/dir' | ||||||
|           c = Collector::Dir.new |           c = Collector::Dir.new | ||||||
|           c.filter = r.filters |           c.filter = r.filters | ||||||
|           c.pattern = r.pattern if(r.pattern) |           c.pattern.concat(r.pattern) if(r.pattern) | ||||||
|           c.exclude = r.exclude if(r.exclude) |           c.exclude.concat(r.exclude) if(r.exclude) | ||||||
|           c.collect(*(r.to_run.empty? ? ['.'] : r.to_run)) |           c.collect(*(r.to_run.empty? ? ['.'] : r.to_run)) | ||||||
|         end, |         end, | ||||||
|       } |       } | ||||||
|  | @ -109,14 +110,16 @@ module Test | ||||||
|               @to_run.concat(a) |               @to_run.concat(a) | ||||||
|             end |             end | ||||||
| 
 | 
 | ||||||
|  |             @pattern = [] | ||||||
|             o.on('-p', '--pattern=PATTERN', Regexp, |             o.on('-p', '--pattern=PATTERN', Regexp, | ||||||
|                  "Match files to collect against PATTERN.") do |e| |                  "Match files to collect against PATTERN.") do |e| | ||||||
|               @pattern = e |               @pattern << e | ||||||
|             end |             end | ||||||
| 
 | 
 | ||||||
|  |             @exclude = [] | ||||||
|             o.on('-x', '--exclude=PATTERN', Regexp, |             o.on('-x', '--exclude=PATTERN', Regexp, | ||||||
|                  "Ignore files to collect against PATTERN.") do |e| |                  "Ignore files to collect against PATTERN.") do |e| | ||||||
|               @exclude = e |               @exclude << e | ||||||
|             end |             end | ||||||
|           end |           end | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -7,7 +7,7 @@ module Test | ||||||
|       class Dir |       class Dir | ||||||
|         include Collector |         include Collector | ||||||
| 
 | 
 | ||||||
|         attr_writer :pattern, :exclude |         attr_reader :pattern, :exclude | ||||||
| 
 | 
 | ||||||
|         def initialize(dir=::Dir, file=::File, object_space=::ObjectSpace, req=nil) |         def initialize(dir=::Dir, file=::File, object_space=::ObjectSpace, req=nil) | ||||||
|           super() |           super() | ||||||
|  | @ -15,8 +15,8 @@ module Test | ||||||
|           @file = file |           @file = file | ||||||
|           @object_space = object_space |           @object_space = object_space | ||||||
|           @req = req |           @req = req | ||||||
|           @pattern = /\btest_.*\.rb\Z/m |           @pattern = [/\btest_.*\.rb\Z/m] | ||||||
|           @exclude = nil |           @exclude = [] | ||||||
|         end |         end | ||||||
| 
 | 
 | ||||||
|         def collect(*from) |         def collect(*from) | ||||||
|  | @ -52,13 +52,17 @@ module Test | ||||||
|               next if(e == '.' || e == '..') |               next if(e == '.' || e == '..') | ||||||
|               e_name = @file.join(name, e) |               e_name = @file.join(name, e) | ||||||
|               if(@file.directory?(e_name)) |               if(@file.directory?(e_name)) | ||||||
|  |                 next if /\ACVS\z/ =~ e | ||||||
|                 sub_suite = recursive_collect(e_name, already_gathered) |                 sub_suite = recursive_collect(e_name, already_gathered) | ||||||
|                 sub_suites << sub_suite unless(sub_suite.empty?) |                 sub_suites << sub_suite unless(sub_suite.empty?) | ||||||
|               else |               else | ||||||
|                 next if %r(/CVS|~\Z|\.\#) =~ e_name |                 next if /~\z/ =~ e_name or /\A\.\#/ =~ e | ||||||
|                 next unless /test_/ =~ e_name |                 if @pattern and !@pattern.empty? | ||||||
|                 (next unless(@pattern =~ e_name)) if(@pattern) |                   next unless @pattern.any? {|pat| pat =~ e_name} | ||||||
|                 (next if(@exclude =~ e_name)) if(@exclude) |                 end | ||||||
|  |                 if @exclude and !@exclude.empty? | ||||||
|  |                   next if @exclude.any? {|pat| pat =~ e_name} | ||||||
|  |                 end | ||||||
|                 collect_file(e_name, sub_suites, already_gathered) |                 collect_file(e_name, sub_suites, already_gathered) | ||||||
|               end |               end | ||||||
|             end |             end | ||||||
|  |  | ||||||
|  | @ -164,11 +164,11 @@ module Test | ||||||
| 
 | 
 | ||||||
|         def test_dir |         def test_dir | ||||||
|           inner_dir = nil |           inner_dir = nil | ||||||
|           dir = FileSystem::Directory.new('/', nil) do |           dirs = FileSystem::Directory.new('/', nil) do | ||||||
|             file 'a', nil |             file 'a', nil | ||||||
|             inner_dir = dir 'b' |             inner_dir = dir 'b' | ||||||
|           end |           end | ||||||
|           assert_equal(inner_dir, dir['b']) |           assert_equal(inner_dir, dirs['b']) | ||||||
|         end |         end | ||||||
| 
 | 
 | ||||||
|         def test_fs |         def test_fs | ||||||
|  | @ -370,7 +370,7 @@ module Test | ||||||
|         def test_nil_pattern |         def test_nil_pattern | ||||||
|           expected = TestSuite.new('d2') |           expected = TestSuite.new('d2') | ||||||
|           expected << @t5.suite |           expected << @t5.suite | ||||||
|           @c.pattern = nil |           @c.pattern.clear | ||||||
|           assert_equal(expected, @c.collect('d2')) |           assert_equal(expected, @c.collect('d2')) | ||||||
|         end |         end | ||||||
| 
 | 
 | ||||||
|  | @ -385,7 +385,7 @@ module Test | ||||||
|           expected = TestSuite.new('[d1, d2]') |           expected = TestSuite.new('[d1, d2]') | ||||||
|           expected << (TestSuite.new('d1') << @t3.suite) |           expected << (TestSuite.new('d1') << @t3.suite) | ||||||
|           expected << (TestSuite.new('d2') << @t5.suite) |           expected << (TestSuite.new('d2') << @t5.suite) | ||||||
|           @c.pattern = /\btest_/ |           @c.pattern.replace([/\btest_/]) | ||||||
|           assert_equal(expected, @c.collect('d1', 'd2')) |           assert_equal(expected, @c.collect('d1', 'd2')) | ||||||
|         end |         end | ||||||
|       end |       end | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 nobu
						nobu