MCPcopy Create free account
hub / github.com/nutsdb/nutsdb / TestIsPrefixSearchScan

Function TestIsPrefixSearchScan

errors_test.go:187–227  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

185}
186
187func TestIsPrefixSearchScan(t *testing.T) {
188 regs := "(.+)"
189 bucket := "test_prefix_search_scan"
190 t.Run("if prefix and search scanning not found the result return true", func(t *testing.T) {
191 withDefaultDB(t, func(t *testing.T, db *DB) {
192 {
193 txCreateBucket(t, db, DataStructureBTree, bucket, nil)
194
195 tx, err := db.Begin(true)
196 require.NoError(t, err)
197 for i := 0; i <= 10; i++ {
198 key := []byte("key_" + fmt.Sprintf("%07d", i))
199 val := []byte("val" + fmt.Sprintf("%07d", i))
200 err = tx.Put(bucket, key, val, Persistent)
201 assert.NoError(t, err)
202 }
203 assert.NoError(t, tx.Commit())
204 }
205 {
206 tx, err = db.Begin(false)
207 require.NoError(t, err)
208 prefix := []byte("key_")
209 es, err := tx.PrefixSearchScan(bucket, prefix, regs, 0, 10)
210 assert.NoError(t, tx.Commit())
211 assert.NotEmpty(t, es)
212 got := IsPrefixSearchScan(err)
213 assert.Equal(t, false, got)
214 }
215 {
216 tx, err = db.Begin(false)
217 require.NoError(t, err)
218 prefix := []byte("foo_")
219 es, err := tx.PrefixSearchScan(bucket, prefix, regs, 0, 10)
220 assert.NoError(t, tx.Commit())
221 assert.Empty(t, es)
222 got := IsPrefixSearchScan(err)
223 assert.Equal(t, true, got)
224 }
225 })
226 })
227}

Callers

nothing calls this directly

Calls 8

withDefaultDBFunction · 0.85
txCreateBucketFunction · 0.85
IsPrefixSearchScanFunction · 0.85
RunMethod · 0.80
BeginMethod · 0.80
CommitMethod · 0.80
PrefixSearchScanMethod · 0.65
PutMethod · 0.45

Tested by

no test coverage detected