diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | lib/test/unit/testcase.rb | 14 |
2 files changed, 11 insertions, 9 deletions
@@ -1,6 +1,10 @@ +Sat Jul 21 15:13:42 2012 Shota Fukumori <sorah@tubusu.net> + + * lib/test/unit/testcase.rb(method_added): refactoring. + Sat Jul 21 14:06:41 2012 Shota Fukumori <sorah@tubusu.net> - * lib/test/unit.rb: warn when test_* method is redefined. + * lib/test/unit/testcase.rb: warn when test_* method is redefined. Patch by mame (Yusuke Endoh). [Feature #2643] [ruby-core:27790] * test/testunit/test_redefinition.rb: Test for above. diff --git a/lib/test/unit/testcase.rb b/lib/test/unit/testcase.rb index 11f34b6f51..59637e1234 100644 --- a/lib/test/unit/testcase.rb +++ b/lib/test/unit/testcase.rb @@ -21,15 +21,13 @@ module Test :sorted end - Methods = {} - def self.method_added(name) - return unless name.to_s[/\Atest_/] - Methods[self] ||= {} - if Methods[self][name] - warn("test/unit warning: method #{ self }##{ name } is redefined") - end - Methods[self][name] = true + return unless name.to_s.start_with?("test_") + @test_methods ||= {} + if @test_methods[name] + warn "test/unit warning: method #{ self }##{ name } is redefined" + end + @test_methods[name] = true end end end |