@@ -13,7 +13,7 @@ func TestPrefixKV(t *testing.T) {
13
13
assert := assert .New (t )
14
14
require := require .New (t )
15
15
16
- base := NewInMemoryKVStore ()
16
+ base := NewDefaultInMemoryKVStore ()
17
17
18
18
p1 := NewPrefixKV (base , []byte {1 })
19
19
p2 := NewPrefixKV (base , []byte {2 })
@@ -71,3 +71,36 @@ func TestPrefixKV(t *testing.T) {
71
71
require .NoError (err )
72
72
assert .Equal (val22 , v )
73
73
}
74
+
75
+ func TestPrefixKVBatch (t * testing.T ) {
76
+ t .Parallel ()
77
+
78
+ assert := assert .New (t )
79
+ require := require .New (t )
80
+
81
+ basekv := NewDefaultInMemoryKVStore ()
82
+ prefixkv := NewPrefixKV (basekv , []byte ("prefix1" ))
83
+ prefixbatchkv1 := prefixkv .NewBatch ()
84
+
85
+ keys := [][]byte {[]byte ("key1" ), []byte ("key2" ), []byte ("key3" ), []byte ("key4" )}
86
+ values := [][]byte {[]byte ("value1" ), []byte ("value2" ), []byte ("value3" ), []byte ("value4" )}
87
+
88
+ for i := 0 ; i < len (keys ); i ++ {
89
+ err := prefixbatchkv1 .Set (keys [i ], values [i ])
90
+ require .NoError (err )
91
+ }
92
+
93
+ err := prefixbatchkv1 .Commit ()
94
+ require .NoError (err )
95
+
96
+ for i := 0 ; i < len (keys ); i ++ {
97
+ vals , err := prefixkv .Get (keys [i ])
98
+ assert .Equal (vals , values [i ])
99
+ require .NoError (err )
100
+ }
101
+
102
+ prefixbatchkv2 := prefixkv .NewBatch ()
103
+ err = prefixbatchkv2 .Delete ([]byte ("key1" ))
104
+ require .NoError (err )
105
+
106
+ }
0 commit comments