difftreelog
tests: add setVariableMetadataSponsoringRateLimit
in: master
3 files changed
runtime_types.jsondiffbeforeafterboth--- a/runtime_types.json
+++ b/runtime_types.json
@@ -93,7 +93,7 @@
},
"CollectionLimits": {
"AccountTokenOwnershipLimit": "u32",
- "SponsoredMintSize": "u32",
+ "SponsoredDataSize": "u32",
"TokenLimit": "u32",
"SponsorTimeout": "u32",
"OwnerCanTransfer": "bool",
tests/package.jsondiffbeforeafterboth--- a/tests/package.json
+++ b/tests/package.json
@@ -42,7 +42,8 @@
"testEnableContractSponsoring": "mocha --timeout 9999999 -r ts-node/register ./**/enableContractSponsoring.test.ts",
"testSetContractSponsoringRateLimit": "mocha --timeout 9999999 -r ts-node/register ./**/setContractSponsoringRateLimit.test.ts",
"testSetOffchainSchema": "mocha --timeout 9999999 -r ts-node/register ./**/setOffchainSchema.test.ts",
- "testOverflow": "mocha --timeout 9999999 -r ts-node/register ./**/overflow.test.ts"
+ "testOverflow": "mocha --timeout 9999999 -r ts-node/register ./**/overflow.test.ts",
+ "setVariableMetadataSponsoringRateLimit": "mocha --timeout 9999999 -r ts-node/register ./**/setVariableMetadataSponsoringRateLimit.test.ts"
},
"author": "",
"license": "SEE LICENSE IN ../LICENSE",
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});