1import {getApiConnection} from '../substrate/substrate-api';2import {expectTxFailure, requirePallets, Pallets} from './util/helpers';3import {mintNft, createCollection, setResourcePriorities} from './util/tx';45describe('integration test: set NFT resource priorities', () => {6 let api: any;7 before(async function () {8 api = await getApiConnection();9 await requirePallets(this, [Pallets.RmrkCore]);10 });1112 const alice = '//Alice';13 const bob = '//Bob';1415 const createTestCollection = (issuerUri: string) => {16 return createCollection(17 api,18 issuerUri,19 'resprio-collection-metadata',20 null,21 'resprio',22 );23 };2425 it('set NFT resource priorities', async () => {26 const owner = alice;2728 const collectionId = await createTestCollection(alice);29 const nftId = await mintNft(api, alice, owner, collectionId, 'resprio-nft-metadata');3031 await setResourcePriorities(api, alice, collectionId, nftId, [10, 42]);32 });3334 it('[negative] set NFT resource priorities by a not-an-owner', async () => {35 const owner = alice;36 const attacker = bob;3738 const collectionId = await createTestCollection(alice);39 const nftId = await mintNft(api, alice, owner, collectionId, 'resprio-nft-metadata');4041 const tx = setResourcePriorities(api, attacker, collectionId, nftId, [10, 42]);4243 await expectTxFailure(/rmrkCore\.NoPermission/, tx);44 });4546 it('[negative] set NFT resource priorities to non-existing NFT', async () => {47 const collectionId = 0;48 const maxNftId = 0xFFFFFFFF;4950 const tx = setResourcePriorities(api, alice, collectionId, maxNftId, [10, 42]);5152 await expectTxFailure(/rmrkCore\.NoAvailableNftId/, tx);53 });5455 after(async() => { await api.disconnect(); });56});