Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

109 lines (90 sloc) 2.605 kb
require 'abstract_unit'
require 'active_support/dependencies'
module ActiveSupport
module Dependencies
class ClassCacheTest < ActiveSupport::TestCase
def setup
@cache = ClassCache.new
end
def test_empty?
assert @cache.empty?
@cache[ClassCacheTest] = ClassCacheTest
assert !@cache.empty?
end
def test_clear!
assert @cache.empty?
@cache[ClassCacheTest] = ClassCacheTest
assert !@cache.empty?
@cache.clear!
assert @cache.empty?
end
def test_set_key
@cache[ClassCacheTest] = ClassCacheTest
assert @cache.key?(ClassCacheTest.name)
end
def test_set_rejects_strings
@cache[ClassCacheTest.name] = ClassCacheTest
assert @cache.empty?
end
def test_get_with_class
@cache[ClassCacheTest] = ClassCacheTest
assert_equal ClassCacheTest, @cache[ClassCacheTest]
end
def test_get_with_name
@cache[ClassCacheTest] = ClassCacheTest
assert_equal ClassCacheTest, @cache[ClassCacheTest.name]
end
def test_get_constantizes
assert @cache.empty?
assert_equal ClassCacheTest, @cache[ClassCacheTest.name]
end
def test_get_is_an_alias
assert_equal @cache[ClassCacheTest], @cache.get(ClassCacheTest.name)
end
def test_new
assert_deprecated do
@cache.new ClassCacheTest
end
assert @cache.key?(ClassCacheTest.name)
end
def test_new_rejects_strings_when_called_on_a_new_string
assert_deprecated do
@cache.new ClassCacheTest.name
end
assert !@cache.key?(ClassCacheTest.name)
end
def test_new_rejects_strings
@cache.store ClassCacheTest.name
assert !@cache.key?(ClassCacheTest.name)
end
def test_store_returns_self
x = @cache.store ClassCacheTest
assert_equal @cache, x
end
def test_new_returns_proxy
v = nil
assert_deprecated do
v = @cache.new ClassCacheTest.name
end
assert_deprecated do
assert_equal ClassCacheTest, v.get
end
end
def test_anonymous_class_fail
assert_raises(ArgumentError) do
assert_deprecated do
@cache.new Class.new
end
end
assert_raises(ArgumentError) do
x = Class.new
@cache[x] = x
end
assert_raises(ArgumentError) do
x = Class.new
@cache.store x
end
end
end
end
end
Jump to Line
Something went wrong with that request. Please try again.