logos-delivery/tests/waku_relay/test_message_id.nim
Ivan FB 3b03ca29b1
refactor: introduce proper logos_delivery layers folder structure (#3935)
Co-authored-by: NagyZoltanPeter <113987313+NagyZoltanPeter@users.noreply.github.com>
2026-06-08 13:37:53 +02:00

40 lines
1.1 KiB
Nim

import
unittest,
results,
stew/byteutils,
nimcrypto/sha2,
libp2p/protocols/pubsub/rpc/messages
import logos_delivery/waku/waku_relay/message_id
suite "Message ID Provider":
test "Non-empty string":
let message = Message(data: "Hello, world!".toBytes())
let result = defaultMessageIdProvider(message)
let expected = MDigest[256].fromHex(
"315f5bdb76d078c43b8ac0064e4a0164612b1fce77c869345bfc94c75894edd3"
)
check:
result.isOk()
result.get() == expected.data
test "Empty string":
let message = Message(data: "".toBytes())
let result = defaultMessageIdProvider(message)
let expected = MDigest[256].fromHex(
"E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855"
)
check:
result.isOk()
result.get() == expected.data
test "Empty array":
let message = Message(data: @[])
let result = defaultMessageIdProvider(message)
let expected = MDigest[256].fromHex(
"E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855"
)
check:
result.isOk()
result.get() == expected.data