1import {expect} from 'chai';2import {getApiConnection} from '../substrate/substrate-api';3import {requirePallets, Pallets} from './util/helpers';4import {getOwnedNfts} from './util/fetch';5import {mintNft, createCollection} from './util/tx';67describe('integration test: get owned NFTs', () => {8 let api: any;9 10 before(async function () {11 api = await getApiConnection();12 await requirePallets(this, [Pallets.RmrkCore]);13 });141516 const alice = '//Alice';1718 it('fetch all NFTs owned by a user', async () => {19 const owner = alice;20 const collectionMetadata = 'aliceCollectionMetadata';21 const collectionMax = null;22 const collectionSymbol = 'AliceSym';23 const recipientUri = null;24 const royalty = null;25 const nftMetadata = 'alice-NFT-metadata';2627 const collectionId = await createCollection(28 api,29 alice,30 collectionMetadata,31 collectionMax,32 collectionSymbol,33 );3435 const nftIds = [36 await mintNft(37 api,38 alice,39 owner,40 collectionId,41 nftMetadata + '-0',42 recipientUri,43 royalty,44 ),45 await mintNft(46 api,47 alice,48 owner,49 collectionId,50 nftMetadata + '-1',51 recipientUri,52 royalty,53 ),54 await mintNft(55 api,56 alice,57 owner,58 collectionId,59 nftMetadata + '-2',60 recipientUri,61 royalty,62 ),63 ];6465 const ownedNfts = await getOwnedNfts(api, alice, collectionId);6667 const isFound = (nftId: number) => {68 return ownedNfts.find((ownedNftId) => {69 return ownedNftId === nftId;70 }) !== undefined;71 };7273 nftIds.forEach((nftId) => {74 expect(isFound(nftId), `NFT ${nftId} should be owned by ${alice}`)75 .to.be.true;76 });77 });7879 after(async() => { await api.disconnect(); });80});