@@ -2551,6 +2551,36 @@ var _ = Describe("Commands", func() {
25512551 Expect (sInter .Val ()).To (Equal ([]string {"c" }))
25522552 })
25532553
2554+ It ("should SInterCard" , func () {
2555+ sAdd := client .SAdd (ctx , "set1" , "a" )
2556+ Expect (sAdd .Err ()).NotTo (HaveOccurred ())
2557+ sAdd = client .SAdd (ctx , "set1" , "b" )
2558+ Expect (sAdd .Err ()).NotTo (HaveOccurred ())
2559+ sAdd = client .SAdd (ctx , "set1" , "c" )
2560+ Expect (sAdd .Err ()).NotTo (HaveOccurred ())
2561+
2562+ sAdd = client .SAdd (ctx , "set2" , "b" )
2563+ Expect (sAdd .Err ()).NotTo (HaveOccurred ())
2564+ sAdd = client .SAdd (ctx , "set2" , "c" )
2565+ Expect (sAdd .Err ()).NotTo (HaveOccurred ())
2566+ sAdd = client .SAdd (ctx , "set2" , "d" )
2567+ Expect (sAdd .Err ()).NotTo (HaveOccurred ())
2568+ sAdd = client .SAdd (ctx , "set2" , "e" )
2569+ Expect (sAdd .Err ()).NotTo (HaveOccurred ())
2570+ //limit 0 means no limit,see https://redis.io/commands/sintercard/ for more details
2571+ sInterCard := client .SInterCard (ctx , 0 , "set1" , "set2" )
2572+ Expect (sInterCard .Err ()).NotTo (HaveOccurred ())
2573+ Expect (sInterCard .Val ()).To (Equal (int64 (2 )))
2574+
2575+ sInterCard = client .SInterCard (ctx , 1 , "set1" , "set2" )
2576+ Expect (sInterCard .Err ()).NotTo (HaveOccurred ())
2577+ Expect (sInterCard .Val ()).To (Equal (int64 (1 )))
2578+
2579+ sInterCard = client .SInterCard (ctx , 3 , "set1" , "set2" )
2580+ Expect (sInterCard .Err ()).NotTo (HaveOccurred ())
2581+ Expect (sInterCard .Val ()).To (Equal (int64 (2 )))
2582+ })
2583+
25542584 It ("should SInterStore" , func () {
25552585 sAdd := client .SAdd (ctx , "set1" , "a" )
25562586 Expect (sAdd .Err ()).NotTo (HaveOccurred ())
0 commit comments