git.delta.rocks / unique-network / refs/commits / 55c7c972e8a3

difftreelog

Fix after review

Max Andreev2022-10-04parent: #f6544e6.patch.diff
in: master
Accounts moved inside describe

4 files changed

modifiedtests/src/burnItem.test.tsdiffbeforeafterboth
before · tests/src/burnItem.test.ts
1// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.2// This file is part of Unique Network.34// Unique Network is free software: you can redistribute it and/or modify5// it under the terms of the GNU General Public License as published by6// the Free Software Foundation, either version 3 of the License, or7// (at your option) any later version.89// Unique Network is distributed in the hope that it will be useful,10// but WITHOUT ANY WARRANTY; without even the implied warranty of11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the12// GNU General Public License for more details.1314// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.1617import {IKeyringPair} from '@polkadot/types/types';18import {expect, itSub, Pallets, usingPlaygrounds} from './util/playgrounds';1920let donor: IKeyringPair;21let alice: IKeyringPair;22let bob: IKeyringPair;2324describe('integration test: ext. burnItem():', () => {25  before(async () => {26    await usingPlaygrounds(async (helper, privateKey) => {27      donor = privateKey('//Alice');28      [alice, bob] = await helper.arrange.createAccounts([100n, 100n], donor);29    });30  });3132  itSub('Burn item in NFT collection', async ({helper}) => {33    const collection = await helper.nft.mintCollection(alice);34    const token = await collection.mintToken(alice);3536    await token.burn(alice);37    expect(await token.isExist()).to.be.false;38  });3940  itSub('Burn item in Fungible collection', async ({helper}) => {41    const collection = await helper.ft.mintCollection(alice, {}, 10);42    await collection.mint(alice, 10n);4344    await collection.burnTokens(alice, 1n);45    expect(await collection.getBalance({Substrate: alice.address})).to.eq(9n);46  });4748  itSub.ifWithPallets('Burn item in ReFungible collection', [Pallets.ReFungible], async function({helper}) {49    const collection = await helper.rft.mintCollection(alice);50    const token = await collection.mintToken(alice, 100n);5152    await token.burn(alice, 90n);53    expect(await token.getBalance({Substrate: alice.address})).to.eq(10n);5455    await token.burn(alice, 10n);56    expect(await token.getBalance({Substrate: alice.address})).to.eq(0n);57  });5859  itSub.ifWithPallets('Burn owned portion of item in ReFungible collection', [Pallets.ReFungible], async function({helper}) {60    const collection = await helper.rft.mintCollection(alice);61    const token = await collection.mintToken(alice, 100n);6263    await token.transfer(alice, {Substrate: bob.address}, 1n);6465    expect(await token.getBalance({Substrate: alice.address})).to.eq(99n);66    expect(await token.getBalance({Substrate: bob.address})).to.eq(1n);6768    await token.burn(bob, 1n);6970    expect(await token.getBalance({Substrate: alice.address})).to.eq(99n);71    expect(await token.getBalance({Substrate: bob.address})).to.eq(0n);72  });73});7475describe('integration test: ext. burnItem() with admin permissions:', () => {76  before(async () => {77    await usingPlaygrounds(async (helper, privateKey) => {78      donor = privateKey('//Alice');79      [alice, bob] = await helper.arrange.createAccounts([100n, 100n], donor);80    });81  });8283  itSub('Burn item in NFT collection', async ({helper}) => {84    const collection = await helper.nft.mintCollection(alice);85    await collection.setLimits(alice, {ownerCanTransfer: true});86    await collection.addAdmin(alice, {Substrate: bob.address});87    const token = await collection.mintToken(alice);8889    await token.burnFrom(bob, {Substrate: alice.address});90    expect(await token.isExist()).to.be.false;91  });9293  itSub('Burn item in Fungible collection', async ({helper}) => {94    const collection = await helper.ft.mintCollection(alice, {}, 0);95    await collection.setLimits(alice, {ownerCanTransfer: true});96    await collection.addAdmin(alice, {Substrate: bob.address});97    await collection.mint(alice, 10n);9899    await collection.burnTokensFrom(bob, {Substrate: alice.address}, 1n);100    expect(await collection.getBalance({Substrate: alice.address})).to.eq(9n);101  });102103  itSub.ifWithPallets('Burn item in ReFungible collection', [Pallets.ReFungible], async function({helper}) {104    const collection = await helper.rft.mintCollection(alice);105    await collection.setLimits(alice, {ownerCanTransfer: true});106    await collection.addAdmin(alice, {Substrate: bob.address});107    const token = await collection.mintToken(alice, 100n);108109    await token.burnFrom(bob, {Substrate: alice.address}, 100n);110    expect(await token.isExist()).to.be.false;111  });112});113114describe('Negative integration test: ext. burnItem():', () => {115  before(async () => {116    await usingPlaygrounds(async (helper, privateKey) => {117      donor = privateKey('//Alice');118      [alice, bob] = await helper.arrange.createAccounts([100n, 100n], donor);119    });120  });121122  itSub('Burn a token that was never created', async ({helper}) => {123    const collection = await helper.nft.mintCollection(alice);124    await expect(collection.burnToken(alice, 10)).to.be.rejectedWith('common.TokenNotFound');125  });126127  itSub('Burn a token using the address that does not own it', async ({helper}) => {128    const collection = await helper.nft.mintCollection(alice);129    const token = await collection.mintToken(alice);130131    await expect(token.burn(bob)).to.be.rejectedWith('common.NoPermission');132  });133134  itSub('Transfer a burned token', async ({helper}) => {135    const collection = await helper.nft.mintCollection(alice);136    const token = await collection.mintToken(alice);137    await token.burn(alice);138139    await expect(token.transfer(alice, {Substrate: bob.address})).to.be.rejectedWith('common.TokenNotFound');140  });141142  itSub('Burn more than owned in Fungible collection', async ({helper}) => {143    const collection = await helper.ft.mintCollection(alice, {}, 0);144    await collection.mint(alice, 10n);145146    await expect(collection.burnTokens(alice, 11n)).to.be.rejectedWith('common.TokenValueTooLow');147    expect(await collection.getBalance({Substrate: alice.address})).to.eq(10n);148  });149});
modifiedtests/src/fungible.test.tsdiffbeforeafterboth
--- a/tests/src/fungible.test.ts
+++ b/tests/src/fungible.test.ts
@@ -101,10 +101,10 @@
     const collection = await helper.ft.mintCollection(alice, {name: 'test', description: 'test', tokenPrefix: 'test'});
     await collection.mint(alice, 500n);
 
-    expect(await collection.isTokenExists(0)).to.be.true;
+    expect(await collection.doesTokenExist(0)).to.be.true;
     expect(await collection.getBalance({Substrate: alice.address})).to.be.equal(500n);
     expect(await collection.burnTokens(alice, 499n)).to.be.true;
-    expect(await collection.isTokenExists(0)).to.be.true;
+    expect(await collection.doesTokenExist(0)).to.be.true;
     expect(await collection.getBalance({Substrate: alice.address})).to.be.equal(1n);
   });
   
@@ -112,9 +112,9 @@
     const collection = await helper.ft.mintCollection(alice, {name: 'test', description: 'test', tokenPrefix: 'test'});
     await collection.mint(alice, 500n);
 
-    expect(await collection.isTokenExists(0)).to.be.true;
+    expect(await collection.doesTokenExist(0)).to.be.true;
     expect(await collection.burnTokens(alice, 500n)).to.be.true;
-    expect(await collection.isTokenExists(0)).to.be.true;
+    expect(await collection.doesTokenExist(0)).to.be.true;
 
     expect(await collection.getBalance({Substrate: alice.address})).to.be.equal(0n);
     expect(await collection.getTotalPieces()).to.be.equal(0n);
modifiedtests/src/refungible.test.tsdiffbeforeafterboth
--- a/tests/src/refungible.test.ts
+++ b/tests/src/refungible.test.ts
@@ -122,10 +122,10 @@
   itSub('Burn some pieces', async ({helper}) => {
     const collection = await helper.rft.mintCollection(alice, {name: 'test', description: 'test', tokenPrefix: 'test'});
     const token = await collection.mintToken(alice, 100n);
-    expect(await collection.isTokenExists(token.tokenId)).to.be.true;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.true;
     expect(await token.getBalance({Substrate: alice.address})).to.be.equal(100n);
     expect(await token.burn(alice, 99n)).to.be.true;
-    expect(await collection.isTokenExists(token.tokenId)).to.be.true;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.true;
     expect(await token.getBalance({Substrate: alice.address})).to.be.equal(1n);
   });
 
@@ -133,18 +133,18 @@
     const collection = await helper.rft.mintCollection(alice, {name: 'test', description: 'test', tokenPrefix: 'test'});
     const token = await collection.mintToken(alice, 100n);
     
-    expect(await collection.isTokenExists(token.tokenId)).to.be.true;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.true;
     expect(await token.getBalance({Substrate: alice.address})).to.be.equal(100n);
 
     expect(await token.burn(alice, 100n)).to.be.true;
-    expect(await collection.isTokenExists(token.tokenId)).to.be.false;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.false;
   });
 
   itSub('Burn some pieces for multiple users', async ({helper}) => {
     const collection = await helper.rft.mintCollection(alice, {name: 'test', description: 'test', tokenPrefix: 'test'});
     const token = await collection.mintToken(alice, 100n);
 
-    expect(await collection.isTokenExists(token.tokenId)).to.be.true;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.true;
     
     expect(await token.getBalance({Substrate: alice.address})).to.be.equal(100n);
     expect(await token.transfer(alice, {Substrate: bob.address}, 60n)).to.be.true;
@@ -154,17 +154,17 @@
 
     expect(await token.burn(alice, 40n)).to.be.true;
 
-    expect(await collection.isTokenExists(token.tokenId)).to.be.true;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.true;
     expect(await token.getBalance({Substrate: alice.address})).to.be.equal(0n);
 
     expect(await token.burn(bob, 59n)).to.be.true;
 
     expect(await token.getBalance({Substrate: bob.address})).to.be.equal(1n);
-    expect(await collection.isTokenExists(token.tokenId)).to.be.true;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.true;
 
     expect(await token.burn(bob, 1n)).to.be.true;
 
-    expect(await collection.isTokenExists(token.tokenId)).to.be.false;
+    expect(await collection.doesTokenExist(token.tokenId)).to.be.false;
   });
 
   itSub('Set allowance for token', async ({helper}) => {
modifiedtests/src/util/playgrounds/unique.tsdiffbeforeafterboth
--- a/tests/src/util/playgrounds/unique.ts
+++ b/tests/src/util/playgrounds/unique.ts
@@ -1114,10 +1114,10 @@
    *
    * @param collectionId ID of collection
    * @param tokenId ID of token
-   * @example isTokenExists(10, 20);
+   * @example doesTokenExist(10, 20);
    * @returns true if the token exists, otherwise false
    */
-  async isTokenExists(collectionId: number, tokenId: number): Promise<boolean> {
+  async doesTokenExist(collectionId: number, tokenId: number): Promise<boolean> {
     return (await this.helper.callRpc('api.rpc.unique.tokenExists', [collectionId, tokenId])).toJSON();
   }
 }
@@ -2277,8 +2277,8 @@
     return await this.helper.collection.getLastTokenId(this.collectionId);
   }
 
-  async isTokenExists(tokenId: number) {
-    return await this.helper.collection.isTokenExists(this.collectionId, tokenId);
+  async doesTokenExist(tokenId: number) {
+    return await this.helper.collection.doesTokenExist(this.collectionId, tokenId);
   }
 
   async getAdmins() {
@@ -2607,8 +2607,8 @@
     return await this.collection.deleteTokenProperties(signer, this.tokenId, propertyKeys);
   }
 
-  async isExist() {
-    return await this.collection.isTokenExists(this.tokenId);
+  async doesExist() {
+    return await this.collection.doesTokenExist(this.tokenId);
   }
 
   nestingAccount() {