spec/redis_spec.rb in redis-0.1.1 vs spec/redis_spec.rb in redis-0.1.2

- old
+ new

@@ -525,11 +525,42 @@ @r.delete('set2') @r.delete('set3') @r.delete('set4') @r.delete('zset') end - + # + it "should be able to get a score for a specific value in a zset (ZSCORE)" do + @r.zset_add "zset", 23, "value" + @r.zset_score("zset", "value").should == "23" + + @r.zset_score("zset", "value2").should be_nil + @r.zset_score("unknown_zset", "value").should be_nil + + @r.delete("zset") + end + # + it "should be able to increment a range score of a zset (ZINCRBY)" do + # create a new zset + @r.zset_increment_by "hackers", 1965, "Yukihiro Matsumoto" + @r.zset_score("hackers", "Yukihiro Matsumoto").should == "1965" + + # add a new element + @r.zset_increment_by "hackers", 1912, "Alan Turing" + @r.zset_score("hackers", "Alan Turing").should == "1912" + + # update the score + @r.zset_increment_by "hackers", 100, "Alan Turing" # yeah, we are making Turing a bit younger + @r.zset_score("hackers", "Alan Turing").should == "2012" + + # attempt to update a key that's not a zset + @r["i_am_not_a_zet"] = "value" + lambda { @r.zset_incr_by "i_am_not_a_zet", 23, "element" }.should raise_error + + @r.delete("hackers") + @r.delete("i_am_not_a_zet") + end + # it "should provide info (INFO)" do [:last_save_time, :redis_version, :total_connections_received, :connected_clients, :total_commands_processed, :connected_slaves, :uptime_in_seconds, :used_memory, :uptime_in_days, :changes_since_last_save].each do |x| @r.info.keys.should include(x) end end @@ -581,10 +612,10 @@ @r.msetnx :keynx1 => "valuenx1", :keynx2 => "valuenx2" @r.mget('keynx1', 'keynx2').should == ["value1", "value2"] end it "should bgsave" do - @r.bgsave.should == 'OK' + ['OK', 'Background saving started'].include?( @r.bgsave).should == true end it "should be able to ECHO" do @r.echo("message in a bottle\n").should == "message in a bottle\n" end