From 900ad3076e161465916e7e8bfbc295c83e87661c Mon Sep 17 00:00:00 2001 From: Yaroslav Bolyukin Date: Wed, 17 Feb 2021 11:07:23 +0000 Subject: [PATCH] tests: add transfer result parser --- --- a/tests/src/util/helpers.ts +++ b/tests/src/util/helpers.ts @@ -38,6 +38,15 @@ itemId: number; } +interface TransferResult { + success: boolean; + collectionId: number; + itemId: number; + sender: string; + recipient: string; + value: bigint; +} + interface IReFungibleOwner { Fraction: BN; Owner: number[]; @@ -111,6 +120,31 @@ return result; } +export function getTransferResult(events: EventRecord[]): TransferResult { + const result: TransferResult = { + success: false, + collectionId: 0, + itemId: 0, + sender: '', + recipient: '', + value: 0n, + }; + + events.forEach(({event: {data, method, section}}) => { + if (method === 'ExtrinsicSuccess') { + result.success = true; + } else if (section === 'nft' && method === 'Transfer') { + result.collectionId = +data[0].toString(); + result.itemId = +data[1].toString(); + result.sender = data[2].toString(); + result.recipient = data[3].toString(); + result.value = BigInt(data[4].toString()); + } + }); + + return result; +} + interface Invalid { type: 'Invalid'; } -- gitstuff