diff options
author | Valery Piashchynski <[email protected]> | 2020-12-21 14:24:45 +0300 |
---|---|---|
committer | GitHub <[email protected]> | 2020-12-21 14:24:45 +0300 |
commit | 8543980775e5f8b12e5e200a0764052cdb4350a5 (patch) | |
tree | c1c6dff8e6bd81bcf51d608c5ed935702911ae81 /plugins/redis/tests/plugin1.go | |
parent | fd6e9cc403fc0c3857dcf29768429a374bd85636 (diff) | |
parent | 7b32b6b93576ec72b4b7fdf2068e655f869e9cf8 (diff) |
Merge pull request #453 from spiral/plugin/redis
Plugin/redis
Diffstat (limited to 'plugins/redis/tests/plugin1.go')
-rw-r--r-- | plugins/redis/tests/plugin1.go | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/plugins/redis/tests/plugin1.go b/plugins/redis/tests/plugin1.go new file mode 100644 index 00000000..e19ca90a --- /dev/null +++ b/plugins/redis/tests/plugin1.go @@ -0,0 +1,43 @@ +package tests + +import ( + "context" + "time" + + "github.com/go-redis/redis/v8" + "github.com/spiral/errors" + redisPlugin "github.com/spiral/roadrunner/v2/interfaces/redis" +) + +type Plugin1 struct { + redisClient redis.UniversalClient +} + +func (p *Plugin1) Init(redis redisPlugin.Redis) error { + p.redisClient = redis.GetClient() + return nil +} + +func (p *Plugin1) Serve() chan error { + const op = errors.Op("plugin1 serve") + errCh := make(chan error, 1) + p.redisClient.Set(context.Background(), "foo", "bar", time.Minute) + + stringCmd := p.redisClient.Get(context.Background(), "foo") + data, err := stringCmd.Result() + if err != nil { + errCh <- errors.E(op, err) + return errCh + } + + if data != "bar" { + errCh <- errors.E(op, errors.Str("no such key")) + return errCh + } + + return errCh +} + +func (p *Plugin1) Stop() error { + return p.redisClient.Close() +} |