Post#fast_count: fix cache expiry not being set (#3925).

This commit is contained in:
evazion
2018-10-01 10:38:15 -05:00
parent 151fa00933
commit 4425150298
2 changed files with 6 additions and 3 deletions

View File

@@ -1267,9 +1267,7 @@ class Post < ApplicationRecord
end
def set_count_in_cache(tags, count, expiry = nil)
if expiry.nil?
[count.seconds, 20.hours].min
end
expiry ||= [count.seconds, 20.hours].min
Cache.put(count_cache_key(tags), count, expiry)
end

View File

@@ -2555,6 +2555,11 @@ class PostTest < ActiveSupport::TestCase
should "return the true count, if not cached" do
assert_equal(1, Post.fast_count("aaa score:42"))
end
should "set the expiration time" do
Cache.expects(:put).with(Post.count_cache_key("aaa score:42"), 1, 1)
Post.fast_count("aaa score:42")
end
end
context "a blank search" do