diff --git a/commands.go b/commands.go index 6e925afa..3953859f 100644 --- a/commands.go +++ b/commands.go @@ -2068,6 +2068,16 @@ func (c *cmdable) ClientID() *IntCmd { return cmd } +func (c *cmdable) ClientUnblock(id int64, isError bool) *IntCmd { + args := []interface{}{"client", "unblock", id} + if isError { + args = append(args, "error") + } + cmd := NewIntCmd(args...) + c.process(cmd) + return cmd +} + // ClientSetName assigns a name to the connection. func (c *statefulCmdable) ClientSetName(name string) *BoolCmd { cmd := NewBoolCmd("client", "setname", name) diff --git a/commands_test.go b/commands_test.go index ea646be5..70e6af79 100644 --- a/commands_test.go +++ b/commands_test.go @@ -127,6 +127,13 @@ var _ = Describe("Commands", func() { Expect(client.ClientID().Val()).To(BeNumerically(">=", 0)) }) + It("should ClientUnblock", func() { + id := client.ClientID().Val() + r, err := client.ClientUnblock(id, true).Result() + Expect(err).NotTo(HaveOccurred()) + Expect(r).To(Equal(int64(0))) + }) + It("should ClientPause", func() { err := client.ClientPause(time.Second).Err() Expect(err).NotTo(HaveOccurred())