mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
created unit tests and fixed bug that failed tests
Signed-off-by: David Heinemeier Hansson <david@loudthinking.com>
This commit is contained in:
parent
250dfb18af
commit
be1dbf321a
2 changed files with 22 additions and 2 deletions
|
@ -138,7 +138,7 @@ module ActiveSupport
|
|||
# cache.fetch("foo") # => nil
|
||||
def fetch(key, options = {})
|
||||
@logger_off = true
|
||||
if !options[:force] && value = read(key, options)
|
||||
if !options[:force] && ((value = read(key, options)) || exist?(key, options))
|
||||
@logger_off = false
|
||||
log("hit", key, options)
|
||||
value
|
||||
|
|
|
@ -90,7 +90,27 @@ module CacheStoreBehavior
|
|||
@cache.write('foo', nil)
|
||||
assert_equal nil, @cache.read('foo')
|
||||
end
|
||||
|
||||
|
||||
def test_should_read_and_write_false
|
||||
@cache.write('foo', false)
|
||||
assert_equal false, @cache.read('foo')
|
||||
end
|
||||
|
||||
def test_should_read_and_write_true
|
||||
@cache.write('foo', true)
|
||||
assert_equal true, @cache.read('foo')
|
||||
end
|
||||
|
||||
def test_fetch_false_without_cache_miss
|
||||
@cache.write('foo', false)
|
||||
assert_equal false, @cache.fetch('foo') { 'baz' }
|
||||
end
|
||||
|
||||
def test_fetch_nil_without_cache_miss
|
||||
@cache.write('foo', nil)
|
||||
assert_equal nil, @cache.fetch('foo') { 'baz' }
|
||||
end
|
||||
|
||||
def test_fetch_without_cache_miss
|
||||
@cache.write('foo', 'bar')
|
||||
assert_equal 'bar', @cache.fetch('foo') { 'baz' }
|
||||
|
|
Loading…
Reference in a new issue