1import { getApiConnection } from '../substrate/substrate-api';2import { expectTxFailure } from './util/helpers';3import { mintNft, createCollection, setResourcePriorities } from './util/tx';45describe("integration test: set NFT resource priorities", () => {6 let api: any;7 before(async () => { api = await getApiConnection(); });89 const alice = '//Alice';10 const bob = '//Bob';1112 const createTestCollection = (issuerUri: string) => {13 return createCollection(14 api,15 issuerUri,16 'resprio-collection-metadata',17 null,18 'resprio'19 );20 };2122 it("set NFT resource priorities", async () => {23 const owner = alice;2425 const collectionId = await createTestCollection(alice);26 const nftId = await mintNft(api, alice, owner, collectionId, 'resprio-nft-metadata');2728 await setResourcePriorities(api, alice, collectionId, nftId, [10, 42]);29 });3031 it("[negative] set NFT resource priorities by a not-an-owner", async () => {32 const owner = alice;33 const attacker = bob;3435 const collectionId = await createTestCollection(alice);36 const nftId = await mintNft(api, alice, owner, collectionId, 'resprio-nft-metadata');3738 const tx = setResourcePriorities(api, attacker, collectionId, nftId, [10, 42]);3940 await expectTxFailure(/rmrkCore\.NoPermission/, tx);41 });4243 it("[negative] set NFT resource priorities to non-existing NFT", async () => {44 const owner = alice;4546 const collectionId = 0;47 const maxNftId = 0xFFFFFFFF;4849 const tx = setResourcePriorities(api, alice, collectionId, maxNftId, [10, 42]);5051 await expectTxFailure(/rmrkCore\.NoAvailableNftId/, tx);52 });5354 after(() => { api.disconnect(); });55});