Files
go-zero/core/stores/redis/redistest/redistest.go

32 lines
552 B
Go
Raw Normal View History

2020-11-02 17:51:33 +08:00
package redistest
import (
"time"
"github.com/alicebob/miniredis/v2"
"github.com/zeromicro/go-zero/core/lang"
"github.com/zeromicro/go-zero/core/stores/redis"
2020-11-02 17:51:33 +08:00
)
// CreateRedis returns a in process redis.Redis.
2020-11-02 17:51:33 +08:00
func CreateRedis() (r *redis.Redis, clean func(), err error) {
mr, err := miniredis.Run()
if err != nil {
return nil, nil, err
}
return redis.New(mr.Addr()), func() {
2020-11-02 17:51:33 +08:00
ch := make(chan lang.PlaceholderType)
2020-11-02 17:51:33 +08:00
go func() {
mr.Close()
close(ch)
}()
2020-11-02 17:51:33 +08:00
select {
case <-ch:
case <-time.After(time.Second):
}
}, nil
}