difftreelog
tests: fix setVariableMetadata sponsoring calls
in: master
1 file changed
tests/src/setVariableMetadataSponsoringRateLimit.test.tsdiffbeforeafterboth1//2// This file is subject to the terms and conditions defined in3// file 'LICENSE', which is part of this source code package.4//56import { IKeyringPair } from '@polkadot/types/types';7import privateKey from './substrate/privateKey';8import usingApi from './substrate/substrate-api';9import {10 confirmSponsorshipExpectSuccess,11 createCollectionExpectSuccess,12 createItemExpectSuccess,13 findNotExistingCollection,14 findUnusedAddress,15 setCollectionLimitsExpectSuccess,16 setCollectionSponsorExpectSuccess,17 setVariableMetaDataExpectFailure,18 setVariableMetaDataExpectSuccess,19 setVariableMetaDataSponsoringRateLimitExpectFailure,20 setVariableMetaDataSponsoringRateLimitExpectSuccess,21} from './util/helpers';2223describe('Integration Test setVariableMetadataSponsoringRateLimit', () => {24 let alice: IKeyringPair;25 let userWithNoBalance: IKeyringPair;2627 before(async () => {28 await usingApi(async (api) => {29 alice = privateKey('//Alice');30 userWithNoBalance = await findUnusedAddress(api);31 });32 });3334 it('sponsored setVariableMetaData can be called twice with pause for free', async () => {35 const collectionId = await createCollectionExpectSuccess();36 await setCollectionSponsorExpectSuccess(collectionId, alice.address);37 await confirmSponsorshipExpectSuccess(collectionId);38 await setVariableMetaDataSponsoringRateLimitExpectSuccess(alice, collectionId, 1);3940 const itemId = await createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);41 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);42 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);43 });4445 it('sponsored setVariableMetaData can\'t be called twice without pause for free', async () => {46 const collectionId = await createCollectionExpectSuccess();47 await setCollectionSponsorExpectSuccess(collectionId, alice.address);48 await confirmSponsorshipExpectSuccess(collectionId);49 await setVariableMetaDataSponsoringRateLimitExpectSuccess(alice, collectionId, 10);5051 const itemId = await createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);52 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);53 await setVariableMetaDataExpectFailure(userWithNoBalance, collectionId, itemId, [1, 2, 3]);54 });5556 it('sponsored setVariableMetaData can\'t be called for free with variable metadata above collection limits', async () => {57 const collectionId = await createCollectionExpectSuccess();58 await setCollectionSponsorExpectSuccess(collectionId, alice.address);59 await confirmSponsorshipExpectSuccess(collectionId);60 await setVariableMetaDataSponsoringRateLimitExpectSuccess(alice, collectionId, 1);61 await setCollectionLimitsExpectSuccess(alice, collectionId, {62 SponsoredDataSize: 1,63 });64 const itemId = await createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);6566 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1]);67 await setVariableMetaDataExpectFailure(userWithNoBalance, collectionId, itemId, [1, 2]);68 });69});7071describe('Negative Integration Test setVariableMetadataSponsoringRateLimit', () => {72 let alice: IKeyringPair;73 let nonExistingCollection: number;7475 before(async () => {76 await usingApi(async (api) => {77 alice = privateKey('//Alice');78 nonExistingCollection = await findNotExistingCollection(api);79 });80 });8182 it('fails when called with non-existing collection id', async () => {83 await setVariableMetaDataSponsoringRateLimitExpectFailure(alice, nonExistingCollection, 1);84 });8586 it('fails when called by non collection sponsor', async () => {87 const collectionId = await createCollectionExpectSuccess();88 await setVariableMetaDataSponsoringRateLimitExpectFailure(alice, collectionId, 1);89 });90});1//2// This file is subject to the terms and conditions defined in3// file 'LICENSE', which is part of this source code package.4//56import { IKeyringPair } from '@polkadot/types/types';7import privateKey from './substrate/privateKey';8import usingApi from './substrate/substrate-api';9import {10 confirmSponsorshipExpectSuccess,11 createCollectionExpectSuccess,12 createItemExpectSuccess,13 findUnusedAddress,14 setCollectionLimitsExpectSuccess,15 setCollectionSponsorExpectSuccess,16 setVariableMetaDataExpectFailure,17 setVariableMetaDataExpectSuccess,18} from './util/helpers';1920describe('Integration Test setVariableMetadataSponsoringRateLimit', () => {21 let alice: IKeyringPair;22 let userWithNoBalance: IKeyringPair;2324 before(async () => {25 await usingApi(async (api) => {26 alice = privateKey('//Alice');27 userWithNoBalance = await findUnusedAddress(api);28 });29 });3031 it('sponsored setVariableMetaData can be called twice with pause for free', async () => {32 const collectionId = await createCollectionExpectSuccess();33 await setCollectionSponsorExpectSuccess(collectionId, alice.address);34 await confirmSponsorshipExpectSuccess(collectionId);35 await setCollectionLimitsExpectSuccess(alice, collectionId, {36 SponsoredDataRateLimit: 0,37 });3839 const itemId = await createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);40 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);41 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);42 });4344 it('sponsored setVariableMetaData can\'t be called twice without pause for free', async () => {45 const collectionId = await createCollectionExpectSuccess();46 await setCollectionSponsorExpectSuccess(collectionId, alice.address);47 await confirmSponsorshipExpectSuccess(collectionId);48 await setCollectionLimitsExpectSuccess(alice, collectionId, {49 SponsoredDataRateLimit: 10,50 });5152 const itemId = await createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);53 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);54 await setVariableMetaDataExpectFailure(userWithNoBalance, collectionId, itemId, [1, 2, 3]);55 });5657 it('sponsored setVariableMetaData can\'t be called for free with variable metadata above collection limits', async () => {58 const collectionId = await createCollectionExpectSuccess();59 await setCollectionSponsorExpectSuccess(collectionId, alice.address);60 await confirmSponsorshipExpectSuccess(collectionId);61 await setCollectionLimitsExpectSuccess(alice, collectionId, {62 SponsoredDataRateLimit: 0,63 SponsoredDataSize: 1,64 });65 const itemId = await createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);6667 await setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1]);68 await setVariableMetaDataExpectFailure(userWithNoBalance, collectionId, itemId, [1, 2]);69 });70});