diff options
| author | Thibaut Horel <thibaut.horel@gmail.com> | 2016-05-04 15:54:19 -0400 |
|---|---|---|
| committer | Thibaut Horel <thibaut.horel@gmail.com> | 2016-05-04 15:54:19 -0400 |
| commit | 7943430749a22e6f26aa16ca2c48e97e9277998f (patch) | |
| tree | 51a4d95e987d60f1b2936d5a5da9f5040efdf835 /merkle_test.go | |
| download | pos-7943430749a22e6f26aa16ca2c48e97e9277998f.tar.gz | |
Initial commit
Diffstat (limited to 'merkle_test.go')
| -rw-r--r-- | merkle_test.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/merkle_test.go b/merkle_test.go new file mode 100644 index 0000000..c486dc1 --- /dev/null +++ b/merkle_test.go @@ -0,0 +1,34 @@ +package main + +import ( + "bytes" + "testing" +) + +func testMerkle(mtype string) bool { + m := NewMerkle(mtype, 4, "test.db") + root := m.Build() + id := m.Size() / 2 + proof := m.Proof(id) + v := verify(id, proof) + if !bytes.Equal(v, root) { + return false + } + + id = m.Size()/2 + 1 + proof = m.Proof(id) + v = verify(id, proof) + if !bytes.Equal(v, root) { + return false + } + return true +} + +func TestMerkle(t *testing.T) { + tests := []string{"bfs", "post"} + for _, test := range tests { + if !testMerkle(test) { + t.Error(test) + } + } +} |
