58 lines
1.8 KiB
Nim

import
std/options,
testutils/unittests,
chronos,
libp2p/crypto/crypto,
web3
import
../../../waku/incentivization/[
rpc,
rpc_codec,
common,
txid_proof,
eligibility
]
let txHash = TxHash.fromHex(
"0x0000000000000000000000000000000000000000000000000000000000000000"
)
let txHashAsBytes = @(txHash.bytes())
suite "Waku Incentivization Eligibility Codec":
asyncTest "encode eligibility proof":
let txHash = TxHash.fromHex(
"0x0000000000000000000000000000000000000000000000000000000000000000")
let txHashAsBytes = @(txHash.bytes())
let eligibilityProof = EligibilityProof(proofOfPayment: some(txHashAsBytes))
let encoded = encode(eligibilityProof)
let decoded = EligibilityProof.decode(encoded.buffer).get()
check:
eligibilityProof == decoded
asyncTest "encode eligibility status":
let eligibilityStatus = genEligibilityStatus(true)
let encoded = encode(eligibilityStatus)
let decoded = EligibilityStatus.decode(encoded.buffer).get()
check:
eligibilityStatus == decoded
asyncTest "encode dummy request":
let txHash = TxHash.fromHex(
"0x0000000000000000000000000000000000000000000000000000000000000000")
let txHashAsBytes = @(txHash.bytes())
let dummyRequest = genDummyRequestWithTxIdEligibilityProof(txHashAsBytes)
let encoded = encode(dummyRequest)
let decoded = DummyRequest.decode(encoded.buffer).get()
check:
dummyRequest == decoded
asyncTest "encode dummy response":
var dummyResponse = genDummyResponseWithEligibilityStatus(true)
let encoded = encode(dummyResponse)
let decoded = DummyResponse.decode(encoded.buffer).get()
check:
dummyResponse == decoded