mirror of
https://github.com/jimeh/redistat.git
synced 2026-02-19 05:16:39 +00:00
68 lines
2.0 KiB
Ruby
68 lines
2.0 KiB
Ruby
require "spec_helper"
|
|
include Redistat
|
|
|
|
describe Redistat::Connection do
|
|
|
|
before(:each) do
|
|
@redis = Redistat.redis
|
|
end
|
|
|
|
it "should have a valid Redis client instance" do
|
|
Redistat.redis.should_not be_nil
|
|
end
|
|
|
|
it "should have initialized custom testing connection" do
|
|
@redis.client.host.should == '127.0.0.1'
|
|
@redis.client.port.should == 8379
|
|
@redis.client.db.should == 15
|
|
end
|
|
|
|
it "should be able to set and get data" do
|
|
@redis.set("hello", "world")
|
|
@redis.get("hello").should == "world"
|
|
@redis.del("hello").should be_true
|
|
end
|
|
|
|
it "should be able to store hashes to Redis" do
|
|
@redis.hset("hash", "field", "1")
|
|
@redis.hget("hash", "field").should == "1"
|
|
@redis.hincrby("hash", "field", 1)
|
|
@redis.hget("hash", "field").should == "2"
|
|
@redis.hincrby("hash", "field", -1)
|
|
@redis.hget("hash", "field").should == "1"
|
|
@redis.del("hash")
|
|
end
|
|
|
|
it "should be accessible from Redistat module" do
|
|
Redistat.redis.should == Connection.get
|
|
Redistat.redis.should == Redistat.connection
|
|
end
|
|
|
|
it "should handle multiple connections with refs" do
|
|
Redistat.redis.client.db.should == 15
|
|
Redistat.connect(:port => 8379, :db => 14, :ref => "Custom")
|
|
Redistat.redis.client.db.should == 15
|
|
Redistat.redis("Custom").client.db.should == 14
|
|
end
|
|
|
|
it "should be able to overwrite default and custom refs" do
|
|
Redistat.redis.client.db.should == 15
|
|
Redistat.connect(:port => 8379, :db => 14)
|
|
Redistat.redis.client.db.should == 14
|
|
|
|
Redistat.redis("Custom").client.db.should == 14
|
|
Redistat.connect(:port => 8379, :db => 15, :ref => "Custom")
|
|
Redistat.redis("Custom").client.db.should == 15
|
|
|
|
# Reset the default connection to the testing server or all hell
|
|
# might brake loose from the rest of the specs
|
|
Redistat.connect(:port => 8379, :db => 15)
|
|
end
|
|
|
|
# TODO: Test thread-safety
|
|
it "should be thread-safe" do
|
|
pending("need to figure out a way to test thread-safety")
|
|
end
|
|
|
|
end
|