aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
diff options
context:
space:
mode:
authorBrian Durand <brian@embellishedvisions.com>2011-08-01 12:05:29 -0500
committerXavier Noria <fxn@hashref.com>2011-08-13 16:22:27 -0700
commit05d4b9d2fdb0aceb9082303301ecaf77605288a0 (patch)
tree46769c7148838fefa6cacad50aff917ec1aff580 /activesupport
parentcc78a8f04cb8a4ced280e73de6337cec25070a8e (diff)
downloadrails-05d4b9d2fdb0aceb9082303301ecaf77605288a0.tar.gz
rails-05d4b9d2fdb0aceb9082303301ecaf77605288a0.tar.bz2
rails-05d4b9d2fdb0aceb9082303301ecaf77605288a0.zip
Pass options in ActiveSupport::Cache::CacheStore#read_multi through to the delete_entry call.
Diffstat (limited to 'activesupport')
-rw-r--r--activesupport/lib/active_support/cache.rb2
-rw-r--r--activesupport/test/caching_test.rb8
2 files changed, 9 insertions, 1 deletions
diff --git a/activesupport/lib/active_support/cache.rb b/activesupport/lib/active_support/cache.rb
index 2d2264e58a..95d936b32f 100644
--- a/activesupport/lib/active_support/cache.rb
+++ b/activesupport/lib/active_support/cache.rb
@@ -347,7 +347,7 @@ module ActiveSupport
entry = read_entry(key, options)
if entry
if entry.expired?
- delete_entry(key)
+ delete_entry(key, options)
else
results[name] = entry.value
end
diff --git a/activesupport/test/caching_test.rb b/activesupport/test/caching_test.rb
index dff3d6ef0d..6bb13ec9b8 100644
--- a/activesupport/test/caching_test.rb
+++ b/activesupport/test/caching_test.rb
@@ -199,6 +199,14 @@ module CacheStoreBehavior
@cache.write('fud', 'biz')
assert_equal({"foo" => "bar", "fu" => "baz"}, @cache.read_multi('foo', 'fu'))
end
+
+ def test_read_multi_with_expires
+ @cache.write('foo', 'bar', :expires_in => 0.001)
+ @cache.write('fu', 'baz')
+ @cache.write('fud', 'biz')
+ sleep(0.002)
+ assert_equal({"fu" => "baz"}, @cache.read_multi('foo', 'fu'))
+ end
def test_read_and_write_compressed_small_data
@cache.write('foo', 'bar', :compress => true)