(t *testing.T)
| 11 | ) |
| 12 | |
| 13 | func 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 | |
| 50 | func TestDB_WriteBatchRestart(t *testing.T) { |
| 51 | opts := config.DefaultOptions |
nothing calls this directly
no test coverage detected