MCPcopy Create free account
hub / github.com/ByteStorage/FlyDB / TestDB_WriteBatch

Function TestDB_WriteBatch

engine/batch_test.go:13–48  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

11)
12
13func TestDB_WriteBatch(t *testing.T) {
14 opts := config.DefaultOptions
15 dir, _ := os.MkdirTemp("", "flydb-batch-1")
16 opts.DirPath = dir
17 db, err := NewDB(opts)
18 defer db.Clean()
19 assert.Nil(t, err)
20 assert.NotNil(t, db)
21
22 // Do not submit data after writing
23 wb := db.NewWriteBatch(config.DefaultWriteBatchOptions)
24 err = wb.Put(randkv.GetTestKey(1), randkv.RandomValue(10))
25 assert.Nil(t, err)
26 err = wb.Delete(randkv.GetTestKey(2))
27 assert.Nil(t, err)
28
29 _, err = db.Get(randkv.GetTestKey(1))
30 assert.Equal(t, _const.ErrKeyNotFound, err)
31
32 // Normal submission data
33 err = wb.Commit()
34 assert.Nil(t, err)
35
36 val, err := db.Get(randkv.GetTestKey(1))
37 assert.NotNil(t, val)
38 assert.Nil(t, err)
39
40 wb2 := db.NewWriteBatch(config.DefaultWriteBatchOptions)
41 err = wb2.Delete(randkv.GetTestKey(1))
42 assert.Nil(t, err)
43 err = wb2.Commit()
44 assert.Nil(t, err)
45
46 _, err = db.Get(randkv.GetTestKey(1))
47 assert.Equal(t, _const.ErrKeyNotFound, err)
48}
49
50func TestDB_WriteBatchRestart(t *testing.T) {
51 opts := config.DefaultOptions

Callers

nothing calls this directly

Calls 9

CleanMethod · 0.95
NewWriteBatchMethod · 0.95
PutMethod · 0.95
DeleteMethod · 0.95
GetMethod · 0.95
CommitMethod · 0.95
GetTestKeyFunction · 0.92
RandomValueFunction · 0.92
NewDBFunction · 0.85

Tested by

no test coverage detected