Fix ABI encoding of channel; should be in a tuple

This commit is contained in:
Mark Spanbroek 2021-02-23 11:34:09 +01:00
parent 38a6e6ab95
commit 61df75b1a1
2 changed files with 4 additions and 0 deletions

View File

@ -12,7 +12,9 @@ type
proc getChannelId*(channel: Channel): array[32, byte] =
var writer: AbiWriter
writer.startTuple()
writer.write(channel.chainId)
writer.write(channel.participants)
writer.write(channel.nonce)
writer.finishTuple()
keccak256.digest(writer.finish()).data

View File

@ -10,9 +10,11 @@ suite "channel":
test "calculates channel id":
var writer: AbiWriter
writer.startTuple()
writer.write(channel.chainId)
writer.write(channel.participants)
writer.write(channel.nonce)
writer.finishTuple()
let encoded = writer.finish()
let hashed = keccak256.digest(encoded).data
check getChannelId(channel) == hashed