-
Notifications
You must be signed in to change notification settings - Fork 3
/
redis_test.go
73 lines (59 loc) · 1.61 KB
/
redis_test.go
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
69
70
71
72
73
package dlock
import (
"math/rand"
"strconv"
"testing"
"time"
"github.com/dongzerun/nodemgr"
"github.com/garyburd/redigo/redis"
)
func Test_WriteRedisOK(t *testing.T) {
rand.Seed(time.Now().UnixNano())
randKey := strconv.Itoa(rand.Intn(1000000))
randValue := strconv.Itoa(rand.Intn(1000000))
expire := 1000
d, err := NewRedisDelegater("testlock", []string{"127.0.0.1:6379"}, 100)
if err != nil {
t.Fatalf("NewRedisDelegater err:%v", err)
}
err = d.LockWithToken(randKey, randValue, expire)
if err != nil {
t.Fatalf("LockWithToken err:%v", err)
}
conn, err := redis.Dial("tcp", "127.0.0.1:6379")
if err != nil {
t.Fatalf("dial redis 127.0.0.1:6379 %v", err)
}
value, err := redis.String(conn.Do("get", randKey))
if err != nil {
t.Fatalf("redis get %s err:%v", randKey, err)
}
if value != randValue {
t.Fatalf("redis get value:%s expected:%s", value, randValue)
}
ttl, err := redis.Int(conn.Do("ttl", randKey))
if err != nil {
t.Fatalf("redis ttl %s err:%v", randKey, err)
}
if ttl != expire {
t.Fatalf("redis ttl get %d, but expected %d", ttl, expire)
}
}
func Test_RedisClient(t *testing.T) {
_, err := NewRedisClient("testredis", []string{"127.0.0.1:6379"}, 100)
if err != nil {
t.Fatal("redis init fatal %v", err)
}
_, err = NewRedisClient("testredis1", []string{"127.0.0.1:6379"}, 100)
if err != nil {
t.Fatal("redis init fatal %v", err)
}
_, err = NewRedisClient("testredis1", []string{"127.0.0.1:6379"}, 100)
if err != nil {
t.Fatal("redis init fatal %v", err)
}
_, err = nodemgr.GetAllNodes("testredis")
if err != nil {
t.Fatal("GetAllNodes fatal %v", err)
}
}