diff options
author | Taylor Gerring <taylor.gerring@gmail.com> | 2015-02-11 18:40:12 +0800 |
---|---|---|
committer | Taylor Gerring <taylor.gerring@gmail.com> | 2015-02-11 18:40:12 +0800 |
commit | cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007 (patch) | |
tree | ab28c518bd1b78f6b8ac8b241951ad161cb268a9 /trie/trie_test.go | |
parent | 21fd31dad8bc6e0291ca405314b516670333c707 (diff) | |
parent | c6af5f0a275608ea6c797ef826e6090885f24eac (diff) | |
download | dexon-cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007.tar dexon-cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007.tar.gz dexon-cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007.tar.bz2 dexon-cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007.tar.lz dexon-cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007.tar.xz dexon-cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007.tar.zst dexon-cfddb7f3cd3b8cecb1e59412ce4db5769f6c8007.zip |
Merge branch 'develop' into jsonrpc
Conflicts:
rpc/ws/server.go
Diffstat (limited to 'trie/trie_test.go')
-rw-r--r-- | trie/trie_test.go | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/trie/trie_test.go b/trie/trie_test.go index ffb78d4f2..4b185f355 100644 --- a/trie/trie_test.go +++ b/trie/trie_test.go @@ -257,3 +257,42 @@ func BenchmarkUpdate(b *testing.B) { } trie.Hash() } + +type kv struct { + k, v []byte + t bool +} + +func TestLargeData(t *testing.T) { + trie := NewEmpty() + vals := make(map[string]*kv) + + for i := byte(1); i < 255; i++ { + value := &kv{ethutil.LeftPadBytes([]byte{i}, 32), []byte{i}, false} + value2 := &kv{ethutil.LeftPadBytes([]byte{10, i}, 32), []byte{i}, false} + trie.Update(value.k, value.v) + trie.Update(value2.k, value2.v) + vals[string(value.k)] = value + vals[string(value2.k)] = value2 + fmt.Println(value, "\n", value2) + } + + it := trie.Iterator() + for it.Next() { + vals[string(it.Key)].t = true + } + + var untouched []*kv + for _, value := range vals { + if !value.t { + untouched = append(untouched, value) + } + } + + if len(untouched) > 0 { + t.Errorf("Missed %d nodes", len(untouched)) + for _, value := range untouched { + t.Error(value) + } + } +} |