Skip to content

Commit

Permalink
Add tests for HashWithStateEx()
Browse files Browse the repository at this point in the history
Signed-off-by: Jim Zhang <jim.zhang@kaleido.io>
  • Loading branch information
jimthematrix committed Sep 9, 2024
1 parent 36ba894 commit eea596d
Showing 1 changed file with 89 additions and 0 deletions.
89 changes: 89 additions & 0 deletions poseidon/poseidon_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -305,6 +305,95 @@ func TestHashWithState(t *testing.T) {
h.String())
}

func TestHashWithStateEx(t *testing.T) {
initState0 := big.NewInt(0)
initState1 := big.NewInt(7)

b1 := big.NewInt(1)
b2 := big.NewInt(2)
b3 := big.NewInt(3)
b4 := big.NewInt(4)
b5 := big.NewInt(5)
b6 := big.NewInt(6)
b7 := big.NewInt(7)
b8 := big.NewInt(8)
b9 := big.NewInt(9)
b10 := big.NewInt(10)
b11 := big.NewInt(11)
b12 := big.NewInt(12)
b13 := big.NewInt(13)
b14 := big.NewInt(14)
b15 := big.NewInt(15)
b16 := big.NewInt(16)
b17 := big.NewInt(17)

h, err := HashWithStateEx([]*big.Int{b1, b2, b3, b4, b5, b6}, initState0, 6)
assert.Nil(t, err)
assert.Equal(t, 6, len(h))
assert.Equal(t,
"20400040500897583745843009878988256314335038853985262692600694741116813247201",
h[0].String())

h, err = HashWithStateEx([]*big.Int{b1, b2, b3, b4}, initState1, 4)
assert.Nil(t, err)
assert.Equal(t, 4, len(h))
assert.Equal(t,
"1569211601569591254857354699102545060324851338714426496554851741114291465006",
h[0].String())

h, err = HashWithStateEx([]*big.Int{b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16}, b17, 16)
assert.Nil(t, err)
assert.Equal(t, 16, len(h))
assert.Equal(t,
"7865037705064445207187340054656830232157001572238023180016026650118519857086",
h[0].String())
assert.Equal(t,
"9292383997006336854008325030029058442489692927472584277596649832441082093099",
h[1].String())
assert.Equal(t,
"21700625464938935909463291795162623951575229166945244593449711331894544619498",
h[2].String())
assert.Equal(t,
"1749964961100464837642084889776091157070407086051097880220367435814831060919",
h[3].String())
assert.Equal(t,
"14926884742736943105557530036865339747160219875259470496706517357951967126770",
h[4].String())
assert.Equal(t,
"2039691552066237153485547245250552033884196017621501609319319339955236135906",
h[5].String())
assert.Equal(t,
"15632370980418377873678240526508190824831030254352022226082241110936555130543",
h[6].String())
assert.Equal(t,
"12415717486933552680955550946925876656737401305417786097937904386023163034597",
h[7].String())
assert.Equal(t,
"19518791782429957526810500613963817986723905805167983704284231822835104039583",
h[8].String())
assert.Equal(t,
"3946357499058599914103088366834769377007694643795968939540941315474973940815",
h[9].String())
assert.Equal(t,
"5618081863604788554613937982328324792980580854673130938690864738082655170455",
h[10].String())
assert.Equal(t,
"9119013501536010391475078939286676645280972023937320238963975266387024327421",
h[11].String())
assert.Equal(t,
"8377736769906336164136520530350338558030826788688113957410934156526990238336",
h[12].String())
assert.Equal(t,
"15295058061474937220002017533551270394267030149562824985607747654793981405060",
h[13].String())
assert.Equal(t,
"3767094797637425204201844274463024412131937665868967358407323347727519975724",
h[14].String())
assert.Equal(t,
"11046361685833871233801453306150294246339755171874771935347992312124050338976",
h[15].String())
}

func TestInitStateNotInField(t *testing.T) {
var err error

Expand Down

0 comments on commit eea596d

Please sign in to comment.