spec/base_spec.rb in cachedis-0.0.1 vs spec/base_spec.rb in cachedis-0.0.2
- old
+ new
@@ -7,12 +7,11 @@
@cachedis = Cachedis.new
end
describe 'when setting something' do
it 'sets without errors' do
- with_no_cache
- @cachedis.redis_instance.should_receive(:set).exactly(1).times.and_return(['element', 'element 2'].to_yaml)
+ with_no_cache(['element', 'element 2'])
lambda {
@cachedis.cachedis 'expensive-query' do
['element', 'element 2']
end }.should_not raise_error
@@ -27,8 +26,31 @@
result = @cachedis.cachedis 'expensive-query' do
"query"
end
result.should == "query".to_yaml
+ end
+ end
+
+ describe 'when setting additonal redis parameters' do
+ context 'with one argument' do
+ it 'sets them in redis' do
+ with_no_cache
+
+ @cachedis.redis_instance.should_receive(:expire).exactly(1).times
+
+ @cachedis.cachedis 'name', :expire => 60 * 60 do
+ end
+ end
+ end
+
+ context 'with an array of arguments' do
+ it 'sets them in redis' do
+ with_no_cache
+ @cachedis.redis_instance.should_receive(:rename).exactly(1).times
+
+ @cachedis.cachedis 'name', :rename => ['key', 'otherkey'] do
+ end
+ end
end
end
end