From d62382afa39d7ea413b24cf33a6dbb55d8cc1f1c Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Thu, 12 Jun 2008 18:22:30 -0700 Subject: Ruby 1.9 compat: instance_methods are symbols instead of strings. Use the quicker instance_method(sym) rescue false check. --- activesupport/lib/active_support/test_case.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'activesupport/lib/active_support') diff --git a/activesupport/lib/active_support/test_case.rb b/activesupport/lib/active_support/test_case.rb index d450cc117d..2fd02d5313 100644 --- a/activesupport/lib/active_support/test_case.rb +++ b/activesupport/lib/active_support/test_case.rb @@ -9,13 +9,14 @@ end module ActiveSupport class TestCase < Test::Unit::TestCase - # test "verify something" do + # test "verify something" do # ... - # end + # end def self.test(name, &block) - test_name = "test_#{name.gsub(/[\s]/,'_')}".to_sym - raise "#{test_name} is already defined in #{self}" if self.instance_methods.include?(test_name.to_s) + test_name = "test_#{name.gsub(/\s+/,'_')}".to_sym + defined = instance_method(test_name) rescue false + raise "#{test_name} is already defined in #{self}" if defined define_method(test_name, &block) end end -end \ No newline at end of file +end -- cgit v1.2.3