package redis import ( "bytes" "testing" "github.com/gomodule/redigo/redis" ) func TestRedisCache(t *testing.T) { conn, err := redis.Dial("tcp", "localhost:6379") if err != nil { // TODO: rather than skip the test, fall back to a faked redis server t.Skipf("skipping test; no server running at localhost:6379") } conn.Do("FLUSHALL") cache := NewWithClient(conn) key := "testKey" _, ok := cache.Get(key) if ok { t.Fatal("retrieved key before adding it") } val := []byte("some bytes") cache.Set(key, val) retVal, ok := cache.Get(key) if !ok { t.Fatal("could not retrieve an element we just added") } if !bytes.Equal(retVal, val) { t.Fatal("retrieved a different value than what we put in") } cache.Delete(key) _, ok = cache.Get(key) if ok { t.Fatal("deleted key still present") } }