discourse/spec/components/redis_store_spec.rb
Sam b703d8c77a BUGFIX: redis-rails has always been a problem child
implemented an ActiveSupport::Cache::Store for our internal use.
* allows for expire by family
* works correctly in multisite
* namespaced correctly

Removed redis-rails from the project, no longer needed
2014-01-06 16:50:04 +11:00

59 lines
889 B
Ruby

require 'spec_helper'
require 'cache'
describe "Redis Store" do
let :cache do
Cache.new(namespace: 'foo')
end
let :store do
DiscourseRedis.new_redis_store
end
before(:each) do
cache.redis.del "key"
store.delete "key"
end
it "can store stuff" do
store.fetch "key" do
"key in store"
end
r = store.read "key"
r.should == "key in store"
end
it "doesn't collide with our Cache" do
store.fetch "key" do
"key in store"
end
cache.fetch "key" do
"key in cache"
end
r = store.read "key"
r.should == "key in store"
end
it "can be cleared without clearing our cache" do
store.fetch "key" do
"key in store"
end
cache.fetch "key" do
"key in cache"
end
store.clear
store.read("key").should be_nil
cache.fetch("key").should == "key in cache"
end
end