--- a/tests/src/eth/events.test.ts +++ b/tests/src/eth/events.test.ts @@ -19,7 +19,7 @@ import {EthUniqueHelper, itEth, usingEthPlaygrounds} from './util'; import {IEvent, TCollectionMode} from '../util/playgrounds/types'; import {Pallets, requirePalletsOrSkip} from '../util'; -import {NormalizedEvent} from './util/playgrounds/types'; +import {EthTokenPermissions, NormalizedEvent} from './util/playgrounds/types'; let donor: IKeyringPair; @@ -119,7 +119,13 @@ ethEvents.push(event); }); const {unsubscribe, collectedEvents: subEvents} = await helper.subscribeEvents([{section: 'common', names: ['PropertyPermissionSet']}]); - await collection.methods.setTokenPropertyPermissions([['testKey', [[0, true], [1, true], [2, true]]]]).send({from: owner}); + await collection.methods.setTokenPropertyPermissions([ + ['A', [ + [EthTokenPermissions.Mutable, true], + [EthTokenPermissions.TokenOwner, true], + [EthTokenPermissions.CollectionAdmin, true]], + ], + ]).send({from: owner}); await helper.wait.newBlocks(1); expect(ethEvents).to.be.like([ { @@ -374,7 +380,13 @@ const collectionHelper = helper.ethNativeContract.collectionHelpers(owner); const result = await collection.methods.mint(owner).send({from: owner}); const tokenId = result.events.Transfer.returnValues.tokenId; - await collection.methods.setTokenPropertyPermissions([['A', [[0, true], [1, true], [2, true]]]]).send({from: owner}); + await collection.methods.setTokenPropertyPermissions([ + ['A', [ + [EthTokenPermissions.Mutable, true], + [EthTokenPermissions.TokenOwner, true], + [EthTokenPermissions.CollectionAdmin, true]], + ], + ]).send({from: owner}); const ethEvents: any = []; --- a/tests/src/eth/tokenProperties.test.ts +++ b/tests/src/eth/tokenProperties.test.ts @@ -20,6 +20,7 @@ import {ITokenPropertyPermission} from '../util/playgrounds/types'; import {Pallets} from '../util'; import {UniqueNFTCollection, UniqueNFToken, UniqueRFTCollection} from '../util/playgrounds/unique'; +import {EthTokenPermissions} from './util/playgrounds/types'; describe('EVM token properties', () => { let donor: IKeyringPair; @@ -36,7 +37,7 @@ {mode: 'nft' as const, requiredPallets: []}, {mode: 'rft' as const, requiredPallets: [Pallets.ReFungible]}, ].map(testCase => - itEth.ifWithPallets.only(`[${testCase.mode}] Set and get token property permissions`, testCase.requiredPallets, async({helper}) => { + itEth.ifWithPallets(`[${testCase.mode}] Set and get token property permissions`, testCase.requiredPallets, async({helper}) => { const owner = await helper.eth.createAccountWithBalance(donor); const caller = await helper.ethCrossAccount.createAccountWithBalance(donor); for(const [mutable,collectionAdmin, tokenOwner] of cartesian([], [false, true], [false, true], [false, true])) { @@ -44,7 +45,13 @@ const collection = await helper.ethNativeContract.collection(collectionAddress, testCase.mode, owner); await collection.methods.addCollectionAdminCross(caller).send({from: owner}); - await collection.methods.setTokenPropertyPermissions([['testKey', [[0, mutable], [1, tokenOwner], [2, collectionAdmin]]]]).send({from: caller.eth}); + await collection.methods.setTokenPropertyPermissions([ + ['testKey', [ + [EthTokenPermissions.Mutable, mutable], + [EthTokenPermissions.TokenOwner, tokenOwner], + [EthTokenPermissions.CollectionAdmin, collectionAdmin]], + ], + ]).send({from: caller.eth}); expect(await helper[testCase.mode].getPropertyPermissions(collectionId)).to.be.deep.equal([{ key: 'testKey', @@ -52,7 +59,11 @@ }]); expect(await collection.methods.tokenPropertyPermissions().call({from: caller.eth})).to.be.like([ - ['testKey', [['0', mutable], ['1', tokenOwner], ['2', collectionAdmin]]], + ['testKey', [ + [EthTokenPermissions.Mutable.toString(), mutable], + [EthTokenPermissions.TokenOwner.toString(), tokenOwner], + [EthTokenPermissions.CollectionAdmin.toString(), collectionAdmin]], + ], ]); } })); --- a/tests/src/eth/util/playgrounds/types.ts +++ b/tests/src/eth/util/playgrounds/types.ts @@ -20,3 +20,8 @@ export type EthProperty = string[]; +export enum EthTokenPermissions { + Mutable, + TokenOwner, + CollectionAdmin +} \ No newline at end of file