MCPcopy Create free account
hub / github.com/IceFireDB/IceFireDB / TestWriteBatch_MixedOperations

Function TestWriteBatch_MixedOperations

driver/hybriddb/write_batch_test.go:67–116  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

65}
66
67func TestWriteBatch_MixedOperations(t *testing.T) {
68 tempDir := t.TempDir()
69 cfg := &config.Config{
70 LevelDB: config.LevelDBConfig{
71 CacheSize: 64 * 1024 * 1024,
72 BlockSize: 4 * 1024,
73 WriteBufferSize: 4 * 1024 * 1024,
74 MaxOpenFiles: 1000,
75 Compression: true,
76 },
77 }
78
79 db, err := Store{}.Open(tempDir, cfg)
80 require.NoError(t, err)
81 defer db.Close()
82
83 // Setup initial data
84 err = db.Put([]byte("key1"), []byte("value1"))
85 require.NoError(t, err)
86 err = db.Put([]byte("key2"), []byte("value2"))
87 require.NoError(t, err)
88
89 // Create batch with mixed operations
90 wb := db.NewWriteBatch()
91 defer wb.Close()
92
93 // Update existing key
94 wb.Put([]byte("key1"), []byte("updated-value1"))
95 // Delete existing key
96 wb.Delete([]byte("key2"))
97 // Add new key
98 wb.Put([]byte("key3"), []byte("value3"))
99
100 // Commit batch
101 err = wb.Commit()
102 require.NoError(t, err)
103
104 // Verify results
105 val, err := db.Get([]byte("key1"))
106 require.NoError(t, err)
107 assert.Equal(t, []byte("updated-value1"), val)
108
109 val, err = db.Get([]byte("key2"))
110 require.NoError(t, err)
111 assert.Nil(t, val)
112
113 val, err = db.Get([]byte("key3"))
114 require.NoError(t, err)
115 assert.Equal(t, []byte("value3"), val)
116}
117
118func TestWriteBatch_SyncCommit(t *testing.T) {
119 tempDir := t.TempDir()

Callers

nothing calls this directly

Calls 10

CloseMethod · 0.95
PutMethod · 0.95
DeleteMethod · 0.95
CommitMethod · 0.95
CloseMethod · 0.65
EqualMethod · 0.65
OpenMethod · 0.45
PutMethod · 0.45
NewWriteBatchMethod · 0.45
GetMethod · 0.45

Tested by

no test coverage detected