@@ -775,6 +775,23 @@ var testHash = func(t *testing.T, configs util.KvrocksServerConfigs) {
775775 require .Equal (t , "b" , rdb .HGet (ctx , "hash" , strings .Repeat ("k" , 336 )).Val ())
776776 })
777777
778+ t .Run ("HSCAN without NOVALUES" , func (t * testing.T ) {
779+ rdb .Del (ctx , "langhash" )
780+ rdb .HMSet (ctx , "langhash" , []string {"lang1" , "C++" , "lang2" , "JavaScript" , "lang3" , "Python" , "lang4" , "GoLanguage" })
781+ res , _ , _ := rdb .HScan (ctx , "langhash" , 0 , "lang1" , 0 ).Result ()
782+ require .Equal (t , 2 , len (res ))
783+ require .Equal (t , "lang1" , res [0 ])
784+ require .Equal (t , "C++" , res [1 ])
785+ })
786+
787+ t .Run ("HSCAN with NOVALUES" , func (t * testing.T ) {
788+ rdb .Del (ctx , "langhash" )
789+ rdb .HMSet (ctx , "langhash" , []string {"lang1" , "C++" , "lang2" , "JavaScript" , "lang3" , "Python" , "lang4" , "GoLanguage" })
790+ res , _ , _ := rdb .HScanNoValues (ctx , "langhash" , 0 , "lang1" , 0 ).Result ()
791+ require .Equal (t , 1 , len (res ))
792+ require .Equal (t , "lang1" , res [0 ])
793+ })
794+
778795 for _ , size := range []int64 {10 , 512 } {
779796 t .Run (fmt .Sprintf ("Hash fuzzing #1 - %d fields" , size ), func (t * testing.T ) {
780797 for times := 0 ; times < 10 ; times ++ {
0 commit comments