MCPcopy Index your code
hub / github.com/CovenantSQL/CovenantSQL / TestLevelDBWal_Write

Function TestLevelDBWal_Write

kayak/wal/leveldb_wal_test.go:30–147  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

28)
29
30func TestLevelDBWal_Write(t *testing.T) {
31 Convey("wal write/get/close", t, func() {
32 dbFile := "testWrite.ldb"
33
34 var p *LevelDBWal
35 var err error
36 p, err = NewLevelDBWal(dbFile)
37 So(err, ShouldBeNil)
38 defer os.RemoveAll(dbFile)
39
40 err = p.Write(nil)
41 So(err, ShouldNotBeNil)
42
43 l1 := &kt.Log{
44 LogHeader: kt.LogHeader{
45 Index: 0,
46 Type: kt.LogPrepare,
47 Producer: proto.NodeID("0000000000000000000000000000000000000000000000000000000000000000"),
48 },
49 Data: []byte("happy1"),
50 }
51
52 err = p.Write(l1)
53 So(err, ShouldBeNil)
54 err = p.Write(l1)
55 So(err, ShouldNotBeNil)
56
57 // test get
58 var l *kt.Log
59 l, err = p.Get(l1.Index)
60 So(err, ShouldBeNil)
61 So(l, ShouldResemble, l1)
62
63 _, err = p.Get(10000)
64 So(err, ShouldNotBeNil)
65
66 // test consecutive writes
67 l2 := &kt.Log{
68 LogHeader: kt.LogHeader{
69 Index: 1,
70 Type: kt.LogPrepare,
71 },
72 Data: []byte("happy2"),
73 }
74 err = p.Write(l2)
75 So(err, ShouldBeNil)
76
77 // test not consecutive writes
78 l4 := &kt.Log{
79 LogHeader: kt.LogHeader{
80 Index: 3,
81 Type: kt.LogPrepare,
82 },
83 Data: []byte("happy3"),
84 }
85 err = p.Write(l4)
86 So(err, ShouldBeNil)
87

Callers

nothing calls this directly

Calls 6

WriteMethod · 0.95
GetMethod · 0.95
ReadMethod · 0.95
CloseMethod · 0.95
NodeIDTypeAlias · 0.92
NewLevelDBWalFunction · 0.85

Tested by

no test coverage detected