feat: 支持redis的LTrim方法 (#1443)
This commit is contained in:
@@ -880,6 +880,18 @@ func (s *Redis) Lrem(key string, count int, value string) (val int, err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Ltrim is the implementation of redis ltrim command.
|
||||||
|
func (s *Redis) Ltrim(key string, start, stop int64) error {
|
||||||
|
return s.brk.DoWithAcceptable(func() error {
|
||||||
|
conn, err := getRedis(s)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
return conn.LTrim(key, start, stop).Err()
|
||||||
|
}, acceptable)
|
||||||
|
}
|
||||||
|
|
||||||
// Mget is the implementation of redis mget command.
|
// Mget is the implementation of redis mget command.
|
||||||
func (s *Redis) Mget(keys ...string) (val []string, err error) {
|
func (s *Redis) Mget(keys ...string) (val []string, err error) {
|
||||||
err = s.brk.DoWithAcceptable(func() error {
|
err = s.brk.DoWithAcceptable(func() error {
|
||||||
|
|||||||
@@ -361,6 +361,11 @@ func TestRedis_List(t *testing.T) {
|
|||||||
vals, err = client.Lrange("key", 0, 10)
|
vals, err = client.Lrange("key", 0, 10)
|
||||||
assert.Nil(t, err)
|
assert.Nil(t, err)
|
||||||
assert.EqualValues(t, []string{"value2", "value3", "value4"}, vals)
|
assert.EqualValues(t, []string{"value2", "value3", "value4"}, vals)
|
||||||
|
err = client.Ltrim("key", 0, 1)
|
||||||
|
assert.Nil(t, err)
|
||||||
|
vals, err = client.Lrange("key", 0, 10)
|
||||||
|
assert.Nil(t, err)
|
||||||
|
assert.EqualValues(t, []string{"value2", "value3"}, vals)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user