@@ -21,12 +21,21 @@ var _ = Describe("RedisMock", func() {
21
21
ctx := context .TODO ()
22
22
23
23
var (
24
- client * redis.Client
25
- mock ClientMock
24
+ client * redis.Client
25
+ mock ClientMock
26
+ disorder func () map [string ]interface {}
26
27
)
27
28
28
29
BeforeEach (func () {
29
30
client , mock = NewClientMock ()
31
+ disorder = func () map [string ]interface {} {
32
+ d := make (map [string ]interface {})
33
+ for i := 0 ; i < 16 ; i ++ {
34
+ k , v := fmt .Sprintf ("key-%d" , i ), fmt .Sprintf ("value-%d" , i )
35
+ d [k ] = v
36
+ }
37
+ return d
38
+ }
30
39
})
31
40
32
41
AfterEach (func () {
@@ -756,6 +765,18 @@ var _ = Describe("RedisMock", func() {
756
765
})
757
766
})
758
767
768
+ It ("MSet Map" , func () {
769
+ mock .ExpectMSet (disorder ()).SetVal ("OK" )
770
+ res , err := client .MSet (ctx , disorder ()).Result ()
771
+ Expect (err ).NotTo (HaveOccurred ())
772
+ Expect (res ).To (Equal ("OK" ))
773
+
774
+ mock .ExpectMSet ("key1" , "value1" , "key2" , "value2" ).SetVal ("OK" )
775
+ res , err = client .MSet (ctx , "key2" , "value2" , "key1" , "value1" ).Result ()
776
+ Expect (err ).NotTo (HaveOccurred ())
777
+ Expect (res ).To (Equal ("OK" ))
778
+ })
779
+
759
780
It ("MSetNX" , func () {
760
781
operationBoolCmd (mock , func () * ExpectedBool {
761
782
return mock .ExpectMSetNX ()
@@ -764,6 +785,18 @@ var _ = Describe("RedisMock", func() {
764
785
})
765
786
})
766
787
788
+ It ("MSetNX Map" , func () {
789
+ mock .ExpectMSetNX (disorder ()).SetVal (true )
790
+ res , err := client .MSetNX (ctx , disorder ()).Result ()
791
+ Expect (err ).NotTo (HaveOccurred ())
792
+ Expect (res ).To (BeTrue ())
793
+
794
+ mock .ExpectMSetNX ("key1" , "value1" , "key2" , "value2" ).SetVal (true )
795
+ res , err = client .MSetNX (ctx , "key2" , "value2" , "key1" , "value1" ).Result ()
796
+ Expect (err ).NotTo (HaveOccurred ())
797
+ Expect (res ).To (BeTrue ())
798
+ })
799
+
767
800
It ("Set" , func () {
768
801
operationStatusCmd (mock , func () * ExpectedStatus {
769
802
return mock .ExpectSet ("key" , "value" , 1 * time .Minute )
@@ -1002,6 +1035,18 @@ var _ = Describe("RedisMock", func() {
1002
1035
})
1003
1036
})
1004
1037
1038
+ It ("HSet Map" , func () {
1039
+ mock .ExpectHSet ("key" , disorder ()).SetVal (1 )
1040
+ res , err := client .HSet (ctx , "key" , disorder ()).Result ()
1041
+ Expect (err ).NotTo (HaveOccurred ())
1042
+ Expect (res ).To (Equal (int64 (1 )))
1043
+
1044
+ mock .ExpectHSet ("key" , "key1" , "value1" , "key2" , "value2" ).SetVal (1 )
1045
+ res , err = client .HSet (ctx , "key" , "key2" , "value2" , "key1" , "value1" ).Result ()
1046
+ Expect (err ).NotTo (HaveOccurred ())
1047
+ Expect (res ).To (Equal (int64 (1 )))
1048
+ })
1049
+
1005
1050
It ("HMSet" , func () {
1006
1051
operationBoolCmd (mock , func () * ExpectedBool {
1007
1052
return mock .ExpectHMSet ("key" , "field1" , "value1" , "field2" , "value2" )
@@ -1010,6 +1055,18 @@ var _ = Describe("RedisMock", func() {
1010
1055
})
1011
1056
})
1012
1057
1058
+ It ("HMSet Map" , func () {
1059
+ mock .ExpectHMSet ("key" , disorder ()).SetVal (true )
1060
+ res , err := client .HMSet (ctx , "key" , disorder ()).Result ()
1061
+ Expect (err ).NotTo (HaveOccurred ())
1062
+ Expect (res ).To (BeTrue ())
1063
+
1064
+ mock .ExpectHMSet ("key" , "key1" , "value1" , "key2" , "value2" ).SetVal (true )
1065
+ res , err = client .HMSet (ctx , "key" , "key2" , "value2" , "key1" , "value1" ).Result ()
1066
+ Expect (err ).NotTo (HaveOccurred ())
1067
+ Expect (res ).To (BeTrue ())
1068
+ })
1069
+
1013
1070
It ("HSetNX" , func () {
1014
1071
operationBoolCmd (mock , func () * ExpectedBool {
1015
1072
return mock .ExpectHSetNX ("key" , "field" , "value" )
0 commit comments