github.com/gogf/gf@v1.16.9/frame/gins/gins_z_unit_redis_test.go (about) 1 // Copyright GoFrame Author(https://goframe.org). All Rights Reserved. 2 // 3 // This Source Code Form is subject to the terms of the MIT License. 4 // If a copy of the MIT was not distributed with this file, 5 // You can obtain one at https://github.com/gogf/gf. 6 7 package gins_test 8 9 import ( 10 "github.com/gogf/gf/debug/gdebug" 11 "github.com/gogf/gf/frame/gins" 12 "github.com/gogf/gf/os/gtime" 13 "testing" 14 "time" 15 16 "github.com/gogf/gf/os/gfile" 17 "github.com/gogf/gf/test/gtest" 18 ) 19 20 func Test_Redis(t *testing.T) { 21 redisContent := gfile.GetContents( 22 gdebug.TestDataPath("redis", "config.toml"), 23 ) 24 25 gtest.C(t, func(t *gtest.T) { 26 var err error 27 dirPath := gfile.TempDir(gtime.TimestampNanoStr()) 28 err = gfile.Mkdir(dirPath) 29 t.Assert(err, nil) 30 defer gfile.Remove(dirPath) 31 32 name := "config.toml" 33 err = gfile.PutContents(gfile.Join(dirPath, name), redisContent) 34 t.Assert(err, nil) 35 36 err = gins.Config().AddPath(dirPath) 37 t.Assert(err, nil) 38 39 defer gins.Config().Clear() 40 41 // for gfsnotify callbacks to refresh cache of config file 42 time.Sleep(500 * time.Millisecond) 43 44 //fmt.Println("gins Test_Redis", Config().Get("test")) 45 46 redisDefault := gins.Redis() 47 redisCache := gins.Redis("cache") 48 redisDisk := gins.Redis("disk") 49 t.AssertNE(redisDefault, nil) 50 t.AssertNE(redisCache, nil) 51 t.AssertNE(redisDisk, nil) 52 53 r, err := redisDefault.Do("PING") 54 t.Assert(err, nil) 55 t.Assert(r, "PONG") 56 57 r, err = redisCache.Do("PING") 58 t.Assert(err, nil) 59 t.Assert(r, "PONG") 60 61 _, err = redisDisk.Do("SET", "k", "v") 62 t.Assert(err, nil) 63 r, err = redisDisk.Do("GET", "k") 64 t.Assert(err, nil) 65 t.Assert(r, []byte("v")) 66 }) 67 }