prysm-pulse/beacon-chain/state/stateutil/field_root_test.go
Nishant Das 37bc407b56
Refactor States To Allow for Single Cached Hasher (#9922)
* initial changes

* gaz

* unexport and add in godoc

* nocache

* fix edge case

* fix bad implementation

* fix build file

* add it in

* terence's review

* gaz

* fix build

* Apply suggestions from code review

remove assigned ctx

Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-11-29 16:30:17 +00:00

24 lines
704 B
Go

package stateutil
import (
"testing"
"github.com/prysmaticlabs/prysm/testing/assert"
)
func TestArraysTreeRoot_OnlyPowerOf2(t *testing.T) {
_, err := NocachedHasher.arraysRoot([][]byte{}, 1, "testing")
assert.NoError(t, err)
_, err = NocachedHasher.arraysRoot([][]byte{}, 4, "testing")
assert.NoError(t, err)
_, err = NocachedHasher.arraysRoot([][]byte{}, 8, "testing")
assert.NoError(t, err)
_, err = NocachedHasher.arraysRoot([][]byte{}, 10, "testing")
assert.ErrorContains(t, "hash layer is a non power of 2", err)
}
func TestArraysTreeRoot_ZeroLength(t *testing.T) {
_, err := NocachedHasher.arraysRoot([][]byte{}, 0, "testing")
assert.ErrorContains(t, "zero leaves provided", err)
}