123456789101112131415161718import {ApiPromise} from '@polkadot/api';19import {IKeyringPair} from '@polkadot/types/types';20import chai from 'chai';21import chaiAsPromised from 'chai-as-promised';22import usingApi, {submitTransactionAsync} from '../substrate/substrate-api';23import {createCollectionExpectSuccess, createItemExpectSuccess, uniqueEventMessage, normalizeAccountId} from '../util/helpers';2425chai.use(chaiAsPromised);26const expect = chai.expect;2728describe('Transfer from event ', () => {29 let alice: IKeyringPair;30 let bob: IKeyringPair;31 const checkSection = 'Transfer';32 const checkTreasury = 'Deposit';33 const checkSystem = 'ExtrinsicSuccess';34 before(async () => {35 await usingApi(async (api, privateKeyWrapper) => {36 alice = privateKeyWrapper('//Alice');37 bob = privateKeyWrapper('//Bob');38 });39 });40 it('Check event from transferFrom(): ', async () => {41 await usingApi(async (api: ApiPromise) => {42 const collectionID = await createCollectionExpectSuccess();43 const itemID = await createItemExpectSuccess(alice, collectionID, 'NFT');44 const transferFrom = api.tx.unique.transferFrom(normalizeAccountId(alice.address), normalizeAccountId(bob.address), collectionID, itemID, 1);45 const events = await submitTransactionAsync(alice, transferFrom);46 const msg = JSON.stringify(uniqueEventMessage(events));47 expect(msg).to.be.contain(checkSection);48 expect(msg).to.be.contain(checkTreasury);49 expect(msg).to.be.contain(checkSystem);50 });51 });52});