MCPcopy Create free account
hub / github.com/CPChain/chain / TestLDBDatabase_Iterator

Function TestLDBDatabase_Iterator

database/leveldb_test.go:39–84  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

37}
38
39func TestLDBDatabase_Iterator(t *testing.T) {
40 db, remove := newTestLDB()
41 defer remove()
42 iter := db.NewIterator()
43
44 // test NewIterator
45 if err := db.Put([]byte("aaa"), []byte("bbb")); err != nil {
46 t.Fatalf("put failed: %v\n", err)
47 }
48 for iter.Next() {
49 key := iter.Key()
50 val := iter.Value()
51 if !bytes.Equal(key, []byte("aaa")) {
52 t.Fatal("key corrupted")
53 }
54 if !bytes.Equal(val, []byte("bbb")) {
55 t.Fatal("value corrupted")
56 }
57 }
58 iter.Release()
59 if err := iter.Error(); err != nil {
60 t.Fatalf("release failed: %v\n", err)
61 }
62
63 // test NewIteratorWithPrefix
64 iter = db.NewIteratorWithPrefix([]byte("foobar"))
65 // test NewIterator
66 if err := db.Put([]byte("aaa"), []byte("bbb")); err != nil {
67 t.Fatalf("put failed: %v\n", err)
68 }
69 for iter.Next() {
70 key := iter.Key()
71 val := iter.Value()
72 if !bytes.Equal(key, []byte("foobaraaa")) {
73 t.Fatal("key corrupted")
74 }
75 if !bytes.Equal(val, []byte("bbb")) {
76 t.Fatal("value corrupted")
77 }
78 }
79 iter.Release()
80 if err := iter.Error(); err != nil {
81 t.Fatalf("release failed: %v\n", err)
82 }
83
84}
85
86func TestLDBBatch(t *testing.T) {
87 db, remove := newTestLDB()

Callers

nothing calls this directly

Calls 9

newTestLDBFunction · 0.85
NewIteratorMethod · 0.80
NewIteratorWithPrefixMethod · 0.80
PutMethod · 0.65
ValueMethod · 0.65
EqualMethod · 0.65
FatalMethod · 0.65
ErrorMethod · 0.65
NextMethod · 0.45

Tested by

no test coverage detected