From 256e78d1f7e936cd989071a7c6d88eb43c3f00d2 Mon Sep 17 00:00:00 2001 From: Samuel Gendler Date: Wed, 26 Jan 2022 21:01:58 -0800 Subject: [PATCH 1/4] add Do() commands to mock --- mock.go | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/mock.go b/mock.go index d2162b8..0df1108 100644 --- a/mock.go +++ b/mock.go @@ -447,7 +447,34 @@ func (m *mock) ExpectDo(args ...interface{}) *ExpectedCmd { default: panic("ExpectDo: unsupported client type") } + m.pushExpect(e) + return e +} + +func (m *mock) ExpectIntSliceDo(args ...interface{}) *ExpectedIntSlice { + e := &ExpectedIntSlice{} + e.cmd = redis.NewCmd(m.ctx, args) + m.pushExpect(e) + return e +} +func (m *mock) ExpectIntDo(args ...interface{}) *ExpectedInt { + e := &ExpectedInt{} + e.cmd = redis.NewCmd(m.ctx, args) + m.pushExpect(e) + return e +} + +func (m *mock) ExpectStringDo(args ...interface{}) *ExpectedString { + e := &ExpectedString{} + e.cmd = redis.NewCmd(m.ctx, args) + m.pushExpect(e) + return e +} + +func (m *mock) ExpectStringSliceDo(args ...interface{}) *ExpectedStringSlice { + e := &ExpectedStringSlice{} + e.cmd = redis.NewCmd(m.ctx, args) m.pushExpect(e) return e } From 8255f501fc600054dc12e0c137e9b8bc0c6097ad Mon Sep 17 00:00:00 2001 From: Samuel Gendler Date: Wed, 26 Jan 2022 21:25:31 -0800 Subject: [PATCH 2/4] add ExpectDo methods to interface --- expect.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/expect.go b/expect.go index f62e316..aa16fd5 100644 --- a/expect.go +++ b/expect.go @@ -28,6 +28,10 @@ type baseMock interface { MatchExpectationsInOrder(b bool) ExpectDo(args ...interface{}) *ExpectedCmd + ExpectIntSliceDo(args ...interface{}) *ExpectedIntSlice + ExpectIntDo(args ...interface{}) *ExpectedInt + ExpectStringSliceDo(args ...interface{}) *ExpectedStringSlice + ExpectStringDo(args ...interface{}) *ExpectedString ExpectCommand() *ExpectedCommandsInfo ExpectClientGetName() *ExpectedString ExpectEcho(message interface{}) *ExpectedString From d933529115a82353c3842045cc352c34c6c51bcc Mon Sep 17 00:00:00 2001 From: Samuel Gendler Date: Wed, 26 Jan 2022 21:55:57 -0800 Subject: [PATCH 3/4] fix args in ExpectDo methods --- mock.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mock.go b/mock.go index 0df1108..644fce5 100644 --- a/mock.go +++ b/mock.go @@ -453,28 +453,28 @@ func (m *mock) ExpectDo(args ...interface{}) *ExpectedCmd { func (m *mock) ExpectIntSliceDo(args ...interface{}) *ExpectedIntSlice { e := &ExpectedIntSlice{} - e.cmd = redis.NewCmd(m.ctx, args) + e.cmd = redis.NewCmd(m.ctx, args...) m.pushExpect(e) return e } func (m *mock) ExpectIntDo(args ...interface{}) *ExpectedInt { e := &ExpectedInt{} - e.cmd = redis.NewCmd(m.ctx, args) + e.cmd = redis.NewCmd(m.ctx, args...) m.pushExpect(e) return e } func (m *mock) ExpectStringDo(args ...interface{}) *ExpectedString { e := &ExpectedString{} - e.cmd = redis.NewCmd(m.ctx, args) + e.cmd = redis.NewCmd(m.ctx, args...) m.pushExpect(e) return e } func (m *mock) ExpectStringSliceDo(args ...interface{}) *ExpectedStringSlice { e := &ExpectedStringSlice{} - e.cmd = redis.NewCmd(m.ctx, args) + e.cmd = redis.NewCmd(m.ctx, args...) m.pushExpect(e) return e } From 358245b0d0374d64883be1eefbd84ba2e8485ba4 Mon Sep 17 00:00:00 2001 From: Samuel Gendler Date: Wed, 26 Jan 2022 23:58:32 -0800 Subject: [PATCH 4/4] restore strongly typed slices to ExpectedIntSlice and ExpectedStringSlice --- mock.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mock.go b/mock.go index 644fce5..7d7154d 100644 --- a/mock.go +++ b/mock.go @@ -453,28 +453,28 @@ func (m *mock) ExpectDo(args ...interface{}) *ExpectedCmd { func (m *mock) ExpectIntSliceDo(args ...interface{}) *ExpectedIntSlice { e := &ExpectedIntSlice{} - e.cmd = redis.NewCmd(m.ctx, args...) + e.cmd = redis.NewIntSliceCmd(m.ctx, args...) m.pushExpect(e) return e } func (m *mock) ExpectIntDo(args ...interface{}) *ExpectedInt { e := &ExpectedInt{} - e.cmd = redis.NewCmd(m.ctx, args...) + e.cmd = redis.NewIntCmd(m.ctx, args...) m.pushExpect(e) return e } func (m *mock) ExpectStringDo(args ...interface{}) *ExpectedString { e := &ExpectedString{} - e.cmd = redis.NewCmd(m.ctx, args...) + e.cmd = redis.NewStringCmd(m.ctx, args...) m.pushExpect(e) return e } func (m *mock) ExpectStringSliceDo(args ...interface{}) *ExpectedStringSlice { e := &ExpectedStringSlice{} - e.cmd = redis.NewCmd(m.ctx, args...) + e.cmd = redis.NewStringSliceCmd(m.ctx, args...) m.pushExpect(e) return e }