diff --git a/activesupport/lib/active_support/testing/constant_lookup.rb b/activesupport/lib/active_support/testing/constant_lookup.rb index 8cb84b3f20..73e87befb6 100644 --- a/activesupport/lib/active_support/testing/constant_lookup.rb +++ b/activesupport/lib/active_support/testing/constant_lookup.rb @@ -1,4 +1,5 @@ require "active_support/concern" +require "active_support/inflector" module ActiveSupport module Testing @@ -33,9 +34,7 @@ module ActiveSupport def determine_constant_from_test_name(test_name) names = test_name.split "::" while names.size > 0 do - names.last.sub! /Test$/, "" - # Rails 3.0 doesn't have safe_constantize, - # so we'll do it the hard way. + names.last.sub!(/Test$/, "") begin constant = names.join("::").constantize break(constant) if yield(constant) diff --git a/activesupport/test/testing/constant_lookup_test.rb b/activesupport/test/testing/constant_lookup_test.rb index f39d38e5cd..d6552b5e49 100644 --- a/activesupport/test/testing/constant_lookup_test.rb +++ b/activesupport/test/testing/constant_lookup_test.rb @@ -8,7 +8,7 @@ end class Baz < Bar; end module FooBar; end -class TestLookup < ActiveSupport::TestCase +class ConstantLookupTest < ActiveSupport::TestCase def find_foo(name) self.class.determine_constant_from_test_name(name) do |constant|