refactor: command - always return nil on error

This commit is contained in:
Anton
2024-04-26 10:35:38 +05:00
parent 8435f8d81d
commit d7e0e9a777
27 changed files with 27 additions and 27 deletions

View File

@@ -36,7 +36,7 @@ func (cmd *Expire) Run(w Writer, red Redka) (any, error) {
err := red.Key().Expire(cmd.key, cmd.ttl)
if err != nil && err != core.ErrNotFound {
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}
if err == core.ErrNotFound {
w.WriteInt(0)

View File

@@ -36,7 +36,7 @@ func (cmd *ExpireAt) Run(w Writer, red Redka) (any, error) {
err := red.Key().ExpireAt(cmd.key, cmd.at)
if err != nil && err != core.ErrNotFound {
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}
if err == core.ErrNotFound {
w.WriteInt(0)

View File

@@ -19,7 +19,7 @@ func (cmd *FlushDB) Run(w Writer, red Redka) (any, error) {
err := red.Key().DeleteAll()
if err != nil {
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}
w.WriteString("OK")
return true, nil

View File

@@ -27,7 +27,7 @@ func (cmd *Get) Run(w Writer, red Redka) (any, error) {
}
if err != nil {
w.WriteError(cmd.Error(err))
return val, err
return nil, err
}
w.WriteBulk(val)
return val, nil

View File

@@ -29,7 +29,7 @@ func (cmd *HGet) Run(w Writer, red Redka) (any, error) {
}
if err != nil {
w.WriteError(cmd.Error(err))
return val, err
return nil, err
}
w.WriteBulk(val)
return val, nil

View File

@@ -23,7 +23,7 @@ func (cmd *Persist) Run(w Writer, red Redka) (any, error) {
err := red.Key().Persist(cmd.key)
if err != nil && err != core.ErrNotFound {
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}
if err == core.ErrNotFound {
w.WriteInt(0)

View File

@@ -23,7 +23,7 @@ func (cmd *Rename) Run(w Writer, red Redka) (any, error) {
err := red.Key().Rename(cmd.key, cmd.newKey)
if err != nil {
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}
w.WriteString("OK")
return true, nil

View File

@@ -121,7 +121,7 @@ func TestRenameExec(t *testing.T) {
conn := new(fakeConn)
res, err := cmd.Run(conn, red)
testx.AssertEqual(t, err, core.ErrNotFound)
testx.AssertEqual(t, res, false)
testx.AssertEqual(t, res, nil)
testx.AssertEqual(t, strings.HasPrefix(conn.out(), ErrNotFound.Error()), true)
key, _ := db.Key().Get("name")

View File

@@ -23,7 +23,7 @@ func (cmd *RenameNX) Run(w Writer, red Redka) (any, error) {
ok, err := red.Key().RenameNotExists(cmd.key, cmd.newKey)
if err != nil {
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}
if ok {
w.WriteInt(1)

View File

@@ -123,7 +123,7 @@ func TestRenameNXExec(t *testing.T) {
conn := new(fakeConn)
res, err := cmd.Run(conn, red)
testx.AssertEqual(t, err, core.ErrNotFound)
testx.AssertEqual(t, res, false)
testx.AssertEqual(t, res, nil)
testx.AssertEqual(t, strings.HasPrefix(conn.out(), ErrNotFound.Error()), true)
key, _ := db.Key().Get("name")

View File

@@ -71,7 +71,7 @@ func (cmd *Set) Run(w Writer, red Redka) (any, error) {
err := red.Str().SetExpires(cmd.key, cmd.value, cmd.ttl)
if err != nil {
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}
w.WriteString("OK")
return true, nil

View File

@@ -13,5 +13,5 @@ func parseUnknown(b baseCmd) (*Unknown, error) {
func (cmd *Unknown) Run(w Writer, _ Redka) (any, error) {
err := ErrUnknownCmd
w.WriteError(cmd.Error(err))
return false, err
return nil, err
}

View File

@@ -28,7 +28,7 @@ func (cmd *ZAdd) Run(w Writer, red Redka) (any, error) {
count, err := red.ZSet().AddMany(cmd.key, cmd.items)
if err != nil {
w.WriteError(cmd.Error(err))
return 0, err
return nil, err
}
w.WriteInt(count)
return count, nil

View File

@@ -146,7 +146,7 @@ func TestZAddExec(t *testing.T) {
conn := new(fakeConn)
res, err := cmd.Run(conn, red)
testx.AssertErr(t, err, core.ErrKeyType)
testx.AssertEqual(t, res, 0)
testx.AssertEqual(t, res, nil)
testx.AssertEqual(t, conn.out(), ErrKeyType.Error()+" (zadd)")
})
}

View File

@@ -21,7 +21,7 @@ func (cmd *ZCard) Run(w Writer, red Redka) (any, error) {
n, err := red.ZSet().Len(cmd.key)
if err != nil {
w.WriteError(cmd.Error(err))
return 0, err
return nil, err
}
w.WriteInt(n)
return n, nil

View File

@@ -29,7 +29,7 @@ func (cmd *ZCount) Run(w Writer, red Redka) (any, error) {
n, err := red.ZSet().Count(cmd.key, cmd.min, cmd.max)
if err != nil {
w.WriteError(cmd.Error(err))
return 0, err
return nil, err
}
w.WriteInt(n)
return n, nil

View File

@@ -44,7 +44,7 @@ func (cmd *ZInterStore) Run(w Writer, red Redka) (any, error) {
count, err := inter.Store()
if err != nil {
w.WriteError(cmd.Error(err))
return count, err
return nil, err
}
w.WriteInt(count)

View File

@@ -258,7 +258,7 @@ func TestZInterStoreExec(t *testing.T) {
conn := new(fakeConn)
res, err := cmd.Run(conn, red)
testx.AssertErr(t, err, core.ErrKeyType)
testx.AssertEqual(t, res, 0)
testx.AssertEqual(t, res, nil)
testx.AssertEqual(t, conn.out(), ErrKeyType.Error()+" (zinterstore)")
dest, _ := db.Str().Get("dest")

View File

@@ -63,7 +63,7 @@ func (cmd *ZRange) Run(w Writer, red Redka) (any, error) {
items, err := rang.Run()
if err != nil {
w.WriteError(cmd.Error(err))
return items, err
return nil, err
}
// write the response with/without scores

View File

@@ -47,7 +47,7 @@ func (cmd *ZRangeByScore) Run(w Writer, red Redka) (any, error) {
items, err := rang.Run()
if err != nil {
w.WriteError(cmd.Error(err))
return items, err
return nil, err
}
// write the response with/without scores

View File

@@ -29,7 +29,7 @@ func (cmd *ZRem) Run(w Writer, red Redka) (any, error) {
n, err := red.ZSet().Delete(cmd.key, cmd.members...)
if err != nil {
w.WriteError(cmd.Error(err))
return 0, err
return nil, err
}
w.WriteInt(n)
return n, nil

View File

@@ -31,7 +31,7 @@ func (cmd *ZRemRangeByRank) Run(w Writer, red Redka) (any, error) {
n, err := red.ZSet().DeleteWith(cmd.key).ByRank(cmd.start, cmd.stop).Run()
if err != nil {
w.WriteError(cmd.Error(err))
return 0, err
return nil, err
}
w.WriteInt(n)
return n, nil

View File

@@ -31,7 +31,7 @@ func (cmd *ZRemRangeByScore) Run(w Writer, red Redka) (any, error) {
n, err := red.ZSet().DeleteWith(cmd.key).ByScore(cmd.min, cmd.max).Run()
if err != nil {
w.WriteError(cmd.Error(err))
return 0, err
return nil, err
}
w.WriteInt(n)
return n, nil

View File

@@ -33,7 +33,7 @@ func (cmd *ZRevRange) Run(w Writer, red Redka) (any, error) {
items, err := red.ZSet().RangeWith(cmd.key).ByRank(cmd.start, cmd.stop).Desc().Run()
if err != nil {
w.WriteError(cmd.Error(err))
return items, err
return nil, err
}
// write the response with/without scores

View File

@@ -47,7 +47,7 @@ func (cmd *ZRevRangeByScore) Run(w Writer, red Redka) (any, error) {
items, err := rang.Run()
if err != nil {
w.WriteError(cmd.Error(err))
return items, err
return nil, err
}
// write the response with/without scores

View File

@@ -44,7 +44,7 @@ func (cmd *ZUnionStore) Run(w Writer, red Redka) (any, error) {
count, err := union.Store()
if err != nil {
w.WriteError(cmd.Error(err))
return count, err
return nil, err
}
w.WriteInt(count)

View File

@@ -244,7 +244,7 @@ func TestZUnionStoreExec(t *testing.T) {
conn := new(fakeConn)
res, err := cmd.Run(conn, red)
testx.AssertErr(t, err, core.ErrKeyType)
testx.AssertEqual(t, res, 0)
testx.AssertEqual(t, res, nil)
testx.AssertEqual(t, conn.out(), ErrKeyType.Error()+" (zunionstore)")
dest, _ := db.Str().Get("dest")