1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
// Copyright (c) 2012-2016 The Revel Framework Authors, All rights reserved.
// Revel Framework source code and usage is governed by a MIT style
// license that can be found in the LICENSE file.
// +build ignore
package cache
import (
"net"
"testing"
"time"
"github.com/revel/config"
"github.com/revel/revel"
)
// These tests require redis server running on localhost:6379 (the default)
const redisTestServer = "localhost:6379"
var newRedisCache = func(t *testing.T, defaultExpiration time.Duration) Cache {
revel.Config = config.NewContext()
c, err := net.Dial("tcp", redisTestServer)
if err == nil {
if _, err = c.Write([]byte("flush_all\r\n")); err != nil {
t.Errorf("Write failed: %s", err)
}
_ = c.Close()
redisCache := NewRedisCache(redisTestServer, "", defaultExpiration)
if err = redisCache.Flush(); err != nil {
t.Errorf("Flush failed: %s", err)
}
return redisCache
}
t.Errorf("couldn't connect to redis on %s", redisTestServer)
t.FailNow()
panic("")
}
func TestRedisCache_TypicalGetSet(t *testing.T) {
typicalGetSet(t, newRedisCache)
}
func TestRedisCache_IncrDecr(t *testing.T) {
incrDecr(t, newRedisCache)
}
func TestRedisCache_Expiration(t *testing.T) {
expiration(t, newRedisCache)
}
func TestRedisCache_EmptyCache(t *testing.T) {
emptyCache(t, newRedisCache)
}
func TestRedisCache_Replace(t *testing.T) {
testReplace(t, newRedisCache)
}
func TestRedisCache_Add(t *testing.T) {
testAdd(t, newRedisCache)
}
func TestRedisCache_GetMulti(t *testing.T) {
testGetMulti(t, newRedisCache)
}
|