git.delta.rocks / unique-network / refs/commits / 20e47ec6bc5a

difftreelog

Add createItem.test.ts

Antz0x0z2020-12-18parent: #c5b165d.patch.diff
in: master

1 file changed

addedtests/src/createItem.test.tsdiffbeforeafterboth
after · tests/src/createItem.test.ts
1import { stringToU8a, u8aToString } from '@polkadot/util';
2import { assert, expect } from 'chai';
3import { alicesPublicKey } from './accounts';
4import privateKey from './substrate/privateKey';
5import usingApi from './substrate/substrate-api';
6import waitNewBlocks from './substrate/wait-new-blocks';
7
8async function createCollection(name, desk, pref, mode) {
9  await usingApi(async (api) => {
10    const alicePrivateKey = privateKey('//Alice');
11    const AcollectionCount = await api.query.nft.collectionCount();
12    try {await api.tx.nft
13          .createCollection(name, desk, pref, mode)
14          .signAndSend(alicePrivateKey);
15         await waitNewBlocks(api);
16         const BcollectionCount = await api.query.nft.collectionCount();
17    // tslint:disable-next-line: max-line-length
18         if (BcollectionCount === AcollectionCount) {assert.fail('Error: collection NOT created.'); }} catch { assert.fail('Create collection error.'); }
19  });
20}
21
22describe('integration test: ext. createItem():', () => {
23  it('Create new item in NFT collection', async () => {
24    await usingApi(async (api) => {
25      createCollection('1', '1', '0', 'NFT');
26      const newCollectionID = await api.query.nft.createdCollectionCount();
27      const alicePrivateKey = privateKey('//Alice');
28      const AnftItemList = await api.query.nft.itemListIndex(newCollectionID);
29      await api.tx.nft
30            .createItem(newCollectionID, alicesPublicKey, 'NFT')
31            .signAndSend(alicePrivateKey);
32      await waitNewBlocks(api);
33      const BnftItemList = await api.query.nft.itemListIndex(newCollectionID);
34      if (BnftItemList === AnftItemList) {assert.fail('Error: new item in NFT collection NOT created.'); }
35    });
36  });
37  it('Create new item in Fungible collection', async () => {
38    await usingApi(async (api) => {
39      createCollection('1', '1', '0', 'Fungible');
40      const newCollectionID = await api.query.nft.createdCollectionCount();
41      const alicePrivateKey = privateKey('//Alice');
42      const AnftItemList = await api.query.nft.itemListIndex(newCollectionID);
43      await api.tx.nft
44            .createItem(newCollectionID, alicesPublicKey, 'Fungible')
45            .signAndSend(alicePrivateKey);
46      await waitNewBlocks(api);
47      const BnftItemList = await api.query.nft.itemListIndex(newCollectionID);
48      if (BnftItemList === AnftItemList) {assert.fail('Error: new item in Fungible collection NOT created.'); }
49    });
50  });
51  it('Create new item in ReFungible collection', async () => {
52    await usingApi(async (api) => {
53      createCollection('1', '1', '0', 'ReFungible');
54      const newCollectionID = await api.query.nft.createdCollectionCount();
55      const alicePrivateKey = privateKey('//Alice');
56      const AnftItemList = await api.query.nft.itemListIndex(newCollectionID);
57      await api.tx.nft
58            .createItem(newCollectionID, alicesPublicKey, 'ReFungible')
59            .signAndSend(alicePrivateKey);
60      await waitNewBlocks(api);
61      const BnftItemList = await api.query.nft.itemListIndex(newCollectionID);
62      if (BnftItemList === AnftItemList) {assert.fail('Error: new item in ReFungible collection NOT created.'); }
63    });
64  });
65});