git.delta.rocks / unique-network / refs/commits / b05ce7acd829

difftreelog

tests fixes

kpozdnikin2021-01-18parent: #be0c28a.patch.diff
in: master

2 files changed

modifiedtests/src/approve.test.tsdiffbeforeafterboth
before · tests/src/approve.test.ts
1//2// This file is subject to the terms and conditions defined in3// file 'LICENSE', which is part of this source code package.4//5import { ApiPromise } from '@polkadot/api';6import BN from 'bn.js';7import chai from 'chai';8import chaiAsPromised from 'chai-as-promised';9import privateKey from './substrate/privateKey';10import { default as usingApi } from './substrate/substrate-api';11import {12  approveExpectFail,13  approveExpectSuccess,14  createCollectionExpectSuccess,15  createItemExpectSuccess,16  destroyCollectionExpectSuccess,17} from './util/helpers';1819chai.use(chaiAsPromised);20const expect = chai.expect;2122describe('Integration Test approve(spender, collection_id, item_id, amount):', () => {23  it('Execute the extrinsic and check approvedList', async () => {24    await usingApi(async (api: ApiPromise) => {25      const Alice = privateKey('//Alice');26      const Bob = privateKey('//Bob');27      const nftCollectionId = await createCollectionExpectSuccess();28      // nft29      const newNftTokenId = await createItemExpectSuccess(Alice, nftCollectionId, 'NFT');30      await approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob);31      // fungible32      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});33      const newFungibleTokenId = await createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');34      await approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob);35      // reFungible36      const reFungibleCollectionId =37        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});38      const newReFungibleTokenId = await createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');39      await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);4041      // garbage collection :-D42      await destroyCollectionExpectSuccess(nftCollectionId);43      await destroyCollectionExpectSuccess(fungibleCollectionId);44      await destroyCollectionExpectSuccess(reFungibleCollectionId);45    });46  });4748  it('Remove approval by using 0 amount', async () => {49    await usingApi(async (api: ApiPromise) => {50      const Alice = privateKey('//Alice');51      const Bob = privateKey('//Bob');52      const nftCollectionId = await createCollectionExpectSuccess();53      // nft54      const newNftTokenId = await createItemExpectSuccess(Alice, nftCollectionId, 'NFT');55      await approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 1);56      await approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 0);57      // fungible58      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});59      const newFungibleTokenId = await createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');60      await approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 1);61      await approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 0);62      // reFungible63      const reFungibleCollectionId =64        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});65      const newReFungibleTokenId = await createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');66      await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 1);67      await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 0);6869      // garbage collection :-D70      await destroyCollectionExpectSuccess(nftCollectionId);71      await destroyCollectionExpectSuccess(fungibleCollectionId);72      await destroyCollectionExpectSuccess(reFungibleCollectionId);73    });74  });75});7677describe('Negative Integration Test approve(spender, collection_id, item_id, amount):', () => {78  it('Approve for a collection that does not exist', async () => {79    await usingApi(async (api: ApiPromise) => {80      const Alice = privateKey('//Alice');81      const Bob = privateKey('//Bob');82      // nft83      const nftCollectionId = await createCollectionExpectSuccess();84      await approveExpectFail(nftCollectionId + 1, 1, Alice, Bob);85      // fungible86      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});87      await approveExpectFail(fungibleCollectionId + 1, 1, Alice, Bob);88      // reFungible89      const reFungibleCollectionId =90        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});91      await approveExpectFail(reFungibleCollectionId + 1, 1, Alice, Bob);92      // garbage collection :-D93      await destroyCollectionExpectSuccess(nftCollectionId);94      await destroyCollectionExpectSuccess(fungibleCollectionId);95      await destroyCollectionExpectSuccess(reFungibleCollectionId);96    });97  });9899  it('Approve for a collection that was destroyed', async () => {100    await usingApi(async (api: ApiPromise) => {101      const Alice = privateKey('//Alice');102      const Bob = privateKey('//Bob');103      // nft104      const nftCollectionId = await createCollectionExpectSuccess();105      await destroyCollectionExpectSuccess(nftCollectionId);106      await approveExpectFail(nftCollectionId, 1, Alice, Bob);107      // fungible108      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});109      await destroyCollectionExpectSuccess(fungibleCollectionId);110      await approveExpectFail(fungibleCollectionId, 1, Alice, Bob);111      // reFungible112      const reFungibleCollectionId =113        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});114      await destroyCollectionExpectSuccess(reFungibleCollectionId);115      await approveExpectFail(reFungibleCollectionId, 1, Alice, Bob);116    });117  });118119  it('Approve transfer of a token that does not exist', async () => {120    await usingApi(async (api: ApiPromise) => {121      const Alice = privateKey('//Alice');122      const Bob = privateKey('//Bob');123      // nft124      const nftCollectionId = await createCollectionExpectSuccess();125      await approveExpectFail(nftCollectionId, 2, Alice, Bob);126      // fungible127      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});128      await approveExpectFail(fungibleCollectionId, 2, Alice, Bob);129      // reFungible130      const reFungibleCollectionId =131        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});132      await approveExpectFail(reFungibleCollectionId, 2, Alice, Bob);133      // garbage collection :-D134      await destroyCollectionExpectSuccess(nftCollectionId);135      await destroyCollectionExpectSuccess(fungibleCollectionId);136      await destroyCollectionExpectSuccess(reFungibleCollectionId);137    });138  });139140  it('Approve using the address that does not own the approved token', async () => {141    await usingApi(async (api: ApiPromise) => {142      const Alice = privateKey('//Alice');143      const Bob = privateKey('//Bob');144      const nftCollectionId = await createCollectionExpectSuccess();145      // nft146      const newNftTokenId = await createItemExpectSuccess(Alice, nftCollectionId, 'NFT');147      await approveExpectFail(nftCollectionId, newNftTokenId, Bob, Alice);148      // fungible149      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});150      const newFungibleTokenId = await createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');151      await approveExpectFail(fungibleCollectionId, newFungibleTokenId, Bob, Alice);152      // reFungible153      const reFungibleCollectionId =154        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});155      const newReFungibleTokenId = await createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');156      await approveExpectFail(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice);157158      // garbage collection :-D159      await destroyCollectionExpectSuccess(nftCollectionId);160      await destroyCollectionExpectSuccess(fungibleCollectionId);161      await destroyCollectionExpectSuccess(reFungibleCollectionId);162    });163  });164});
after · tests/src/approve.test.ts
1//2// This file is subject to the terms and conditions defined in3// file 'LICENSE', which is part of this source code package.4//5import { ApiPromise } from '@polkadot/api';6import BN from 'bn.js';7import chai from 'chai';8import chaiAsPromised from 'chai-as-promised';9import privateKey from './substrate/privateKey';10import { default as usingApi } from './substrate/substrate-api';11import {12  approveExpectFail,13  approveExpectSuccess,14  createCollectionExpectSuccess,15  createItemExpectSuccess,16  destroyCollectionExpectSuccess,17} from './util/helpers';1819chai.use(chaiAsPromised);20const expect = chai.expect;2122describe('Integration Test approve(spender, collection_id, item_id, amount):', () => {23  it('Execute the extrinsic and check approvedList', async () => {24    await usingApi(async (api: ApiPromise) => {25      const Alice = privateKey('//Alice');26      const Bob = privateKey('//Bob');27      const nftCollectionId = await createCollectionExpectSuccess();28      // nft29      const newNftTokenId = await createItemExpectSuccess(Alice, nftCollectionId, 'NFT');30      await approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob);31      // fungible32      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});33      const newFungibleTokenId = await createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');34      await approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob);35      // reFungible36      const reFungibleCollectionId =37        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});38      const newReFungibleTokenId = await createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');39      await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);40    });41  });4243  it('Remove approval by using 0 amount', async () => {44    await usingApi(async (api: ApiPromise) => {45      const Alice = privateKey('//Alice');46      const Bob = privateKey('//Bob');47      const nftCollectionId = await createCollectionExpectSuccess();48      // nft49      const newNftTokenId = await createItemExpectSuccess(Alice, nftCollectionId, 'NFT');50      await approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 1);51      await approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 0);52      // fungible53      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});54      const newFungibleTokenId = await createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');55      await approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 1);56      await approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 0);57      // reFungible58      const reFungibleCollectionId =59        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});60      const newReFungibleTokenId = await createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');61      await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 1);62      await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 0);63    });64  });65});6667describe('Negative Integration Test approve(spender, collection_id, item_id, amount):', () => {68  it('Approve for a collection that does not exist', async () => {69    await usingApi(async (api: ApiPromise) => {70      const Alice = privateKey('//Alice');71      const Bob = privateKey('//Bob');72      // nft73      const nftCollectionCount = await api.query.nft.createdCollectionCount() as unknown as number;74      await approveExpectFail(nftCollectionCount + 1, 1, Alice, Bob);75      // fungible76      const fungibleCollectionCount = await api.query.nft.createdCollectionCount() as unknown as number;77      await approveExpectFail(fungibleCollectionCount + 1, 1, Alice, Bob);78      // reFungible79      const reFungibleCollectionCount = await api.query.nft.createdCollectionCount() as unknown as number;80      await approveExpectFail(reFungibleCollectionCount + 1, 1, Alice, Bob);81    });82  });8384  it('Approve for a collection that was destroyed', async () => {85    await usingApi(async (api: ApiPromise) => {86      const Alice = privateKey('//Alice');87      const Bob = privateKey('//Bob');88      // nft89      const nftCollectionId = await createCollectionExpectSuccess();90      await destroyCollectionExpectSuccess(nftCollectionId);91      await approveExpectFail(nftCollectionId, 1, Alice, Bob);92      // fungible93      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});94      await destroyCollectionExpectSuccess(fungibleCollectionId);95      await approveExpectFail(fungibleCollectionId, 1, Alice, Bob);96      // reFungible97      const reFungibleCollectionId =98        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});99      await destroyCollectionExpectSuccess(reFungibleCollectionId);100      await approveExpectFail(reFungibleCollectionId, 1, Alice, Bob);101    });102  });103104  it('Approve transfer of a token that does not exist', async () => {105    await usingApi(async (api: ApiPromise) => {106      const Alice = privateKey('//Alice');107      const Bob = privateKey('//Bob');108      // nft109      const nftCollectionId = await createCollectionExpectSuccess();110      await approveExpectFail(nftCollectionId, 2, Alice, Bob);111      // fungible112      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});113      await approveExpectFail(fungibleCollectionId, 2, Alice, Bob);114      // reFungible115      const reFungibleCollectionId =116        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});117      await approveExpectFail(reFungibleCollectionId, 2, Alice, Bob);118    });119  });120121  it('Approve using the address that does not own the approved token', async () => {122    await usingApi(async (api: ApiPromise) => {123      const Alice = privateKey('//Alice');124      const Bob = privateKey('//Bob');125      const nftCollectionId = await createCollectionExpectSuccess();126      // nft127      const newNftTokenId = await createItemExpectSuccess(Alice, nftCollectionId, 'NFT');128      await approveExpectFail(nftCollectionId, newNftTokenId, Bob, Alice);129      // fungible130      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});131      const newFungibleTokenId = await createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');132      await approveExpectFail(fungibleCollectionId, newFungibleTokenId, Bob, Alice);133      // reFungible134      const reFungibleCollectionId =135        await createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});136      const newReFungibleTokenId = await createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');137      await approveExpectFail(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice);138    });139  });140});
modifiedtests/src/transferFrom.test.tsdiffbeforeafterboth
--- a/tests/src/transferFrom.test.ts
+++ b/tests/src/transferFrom.test.ts
@@ -45,11 +45,6 @@
       await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);
       await transferFromExpectSuccess(reFungibleCollectionId,
         newReFungibleTokenId, Bob, Alice, Charlie, 1, 'ReFungible');
-
-      // garbage collection :-D
-      await destroyCollectionExpectSuccess(nftCollectionId);
-      await destroyCollectionExpectSuccess(fungibleCollectionId);
-      await destroyCollectionExpectSuccess(reFungibleCollectionId);
     });
   });
 });
@@ -61,27 +56,21 @@
       const Bob = privateKey('//Bob');
       const Charlie = privateKey('//CHARLIE');
       // nft
-      const nftCollectionId = await createCollectionExpectSuccess();
-      await approveExpectFail(nftCollectionId + 1, 1, Alice, Bob);
+      const nftCollectionCount = await api.query.nft.createdCollectionCount() as unknown as number;
+      await approveExpectFail(nftCollectionCount + 1, 1, Alice, Bob);
 
-      await transferFromExpectFail(nftCollectionId + 1, 1, Bob, Alice, Charlie, 1);
+      await transferFromExpectFail(nftCollectionCount + 1, 1, Bob, Alice, Charlie, 1);
 
       // fungible
-      const fungibleCollectionId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});
-      await approveExpectFail(fungibleCollectionId + 1, 1, Alice, Bob);
+      const fungibleCollectionCount = await api.query.nft.createdCollectionCount() as unknown as number;
+      await approveExpectFail(fungibleCollectionCount + 1, 1, Alice, Bob);
 
-      await transferFromExpectFail(fungibleCollectionId + 1, 1, Bob, Alice, Charlie, 1);
+      await transferFromExpectFail(fungibleCollectionCount + 1, 1, Bob, Alice, Charlie, 1);
       // reFungible
-      const reFungibleCollectionId = await
-        createCollectionExpectSuccess({mode: {type: 'ReFungible', decimalPoints: 0}});
-      await approveExpectFail(reFungibleCollectionId + 1, 1, Alice, Bob);
-
-      await transferFromExpectFail(reFungibleCollectionId + 1, 1, Bob, Alice, Charlie, 1);
+      const reFungibleCollectionCount = await api.query.nft.createdCollectionCount() as unknown as number;
+      await approveExpectFail(reFungibleCollectionCount + 1, 1, Alice, Bob);
 
-      // garbage collection :-D
-      await destroyCollectionExpectSuccess(nftCollectionId);
-      await destroyCollectionExpectSuccess(fungibleCollectionId);
-      await destroyCollectionExpectSuccess(reFungibleCollectionId);
+      await transferFromExpectFail(reFungibleCollectionCount + 1, 1, Bob, Alice, Charlie, 1);
     });
   });
 
@@ -124,11 +113,6 @@
       const newReFungibleTokenId = await createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');
       await transferFromExpectFail(reFungibleCollectionId,
         newReFungibleTokenId, Bob, Alice, Charlie, 1);
-
-      // garbage collection :-D
-      await destroyCollectionExpectSuccess(nftCollectionId);
-      await destroyCollectionExpectSuccess(fungibleCollectionId);
-      await destroyCollectionExpectSuccess(reFungibleCollectionId);
     });
   });
 
@@ -156,11 +140,6 @@
       await approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);
       await transferFromExpectFail(reFungibleCollectionId,
         newReFungibleTokenId, Bob, Alice, Charlie, 2);
-
-      // garbage collection :-D
-      await destroyCollectionExpectSuccess(nftCollectionId);
-      await destroyCollectionExpectSuccess(fungibleCollectionId);
-      await destroyCollectionExpectSuccess(reFungibleCollectionId);
     });
   });
 
@@ -204,10 +183,6 @@
         // tslint:disable-next-line:no-unused-expression
         expect(e).to.be.exist;
       }
-      // garbage collection :-D
-      await destroyCollectionExpectSuccess(nftCollectionId);
-      await destroyCollectionExpectSuccess(fungibleCollectionId);
-      await destroyCollectionExpectSuccess(reFungibleCollectionId);
     });
   });
 });