difftreelog
Collision tests fixed
in: master
10 files changed
tests/src/collision-tests/admVsOwnerChanges.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/admVsOwnerChanges.test.ts
+++ b/tests/src/collision-tests/admVsOwnerChanges.test.ts
@@ -4,8 +4,13 @@
import privateKey from '../substrate/privateKey';
import usingApi, { submitTransactionAsync } from '../substrate/substrate-api';
import {
+ addCollectionAdminExpectSuccess,
+ approveExpectSuccess,
createCollectionExpectSuccess,
createItemExpectSuccess,
+ transferFromExpectSuccess,
+ transferExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -25,18 +30,19 @@
describe('Admin vs Owner changes token: ', () => {
// tslint:disable-next-line: max-line-length
it('The collection admin changes the owner of the token and in the same block the current owner transfers the token to another address ', async () => {
+
await usingApi(async (api) => {
const collectionId = await createCollectionExpectSuccess();
- const changeAdminTxBob = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);
+ const changeAdminTxBob = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await submitTransactionAsync(Alice, changeAdminTxBob);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
- const changeAdminTxFerdie = api.tx.nft.addCollectionAdmin(collectionId, Ferdie.address);
+ const changeAdminTxFerdie = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Ferdie.address));
await submitTransactionAsync(Bob, changeAdminTxFerdie);
const itemId = await createItemExpectSuccess(Ferdie, collectionId, 'NFT');
- //
- const changeOwner = api.tx.nft.transferFrom(Ferdie.address, Bob.address, collectionId, itemId, 1);
- const approve = api.tx.nft.approve(Bob.address, collectionId, itemId, 1);
- const sendItem = api.tx.nft.transfer(Alice.address, collectionId, itemId, 1);
+
+ const changeOwner = api.tx.nft.transferFrom(normalizeAccountId(Ferdie.address), normalizeAccountId(Bob.address), collectionId, itemId, 1);
+ const approve = api.tx.nft.approve(normalizeAccountId(Bob.address), collectionId, itemId, 1);
+ const sendItem = api.tx.nft.transfer(normalizeAccountId(Alice.address), collectionId, itemId, 1);
await Promise.all([
changeOwner.signAndSend(Alice),
approve.signAndSend(Bob),
tests/src/collision-tests/admVsOwnerData.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/admVsOwnerData.test.ts
+++ b/tests/src/collision-tests/admVsOwnerData.test.ts
@@ -6,6 +6,7 @@
import {
createCollectionExpectSuccess,
createItemExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -26,7 +27,7 @@
const AliceData = 1;
const BobData = 2;
const collectionId = await createCollectionExpectSuccess();
- const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);
+ const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await submitTransactionAsync(Alice, changeAdminTx);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
const itemId = await createItemExpectSuccess(Bob, collectionId, 'NFT');
tests/src/collision-tests/admVsOwnerTake.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/admVsOwnerTake.test.ts
+++ b/tests/src/collision-tests/admVsOwnerTake.test.ts
@@ -6,6 +6,7 @@
import {
createCollectionExpectSuccess,
createItemExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -27,18 +28,18 @@
it('The collection admin burns the token and in the same block the token owner performs a transaction on it ', async () => {
await usingApi(async (api) => {
const collectionId = await createCollectionExpectSuccess();
- const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);
+ const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await submitTransactionAsync(Alice, changeAdminTx);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
const itemId = await createItemExpectSuccess(Bob, collectionId, 'NFT');
//
- const sendItem = api.tx.nft.transfer(Ferdie.address, collectionId, itemId, 1);
+ const sendItem = api.tx.nft.transfer(normalizeAccountId(Ferdie.address), collectionId, itemId, 1);
const burnItem = api.tx.nft.burnItem(collectionId, itemId, 1);
await Promise.all([
sendItem.signAndSend(Bob),
burnItem.signAndSend(Alice),
]);
- await timeoutPromise(10000);
+ await timeoutPromise(20000);
let itemBurn = false;
itemBurn = (await (api.query.nft.nftItemList(collectionId, itemId))).toJSON() as boolean;
// tslint:disable-next-line: no-unused-expression
tests/src/collision-tests/adminDestroyCollection.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/adminDestroyCollection.test.ts
+++ b/tests/src/collision-tests/adminDestroyCollection.test.ts
@@ -5,6 +5,7 @@
import usingApi, { submitTransactionAsync } from '../substrate/substrate-api';
import {
createCollectionExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -26,12 +27,12 @@
it('Adding an address to the collection whitelist in a block by the admin, and deleting the collection by the owner ', async () => {
await usingApi(async (api) => {
const collectionId = await createCollectionExpectSuccess();
- const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);
+ const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await submitTransactionAsync(Alice, changeAdminTx);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
await timeoutPromise(10000);
//
- const addWhitelistAdm = api.tx.nft.addToWhiteList(collectionId, Ferdie.address);
+ const addWhitelistAdm = api.tx.nft.addToWhiteList(collectionId, normalizeAccountId(Ferdie.address));
const destroyCollection = api.tx.nft.destroyCollection(collectionId);
await Promise.all([
addWhitelistAdm.signAndSend(Bob),
tests/src/collision-tests/adminLimitsOff.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/adminLimitsOff.test.ts
+++ b/tests/src/collision-tests/adminLimitsOff.test.ts
@@ -6,6 +6,7 @@
import usingApi, { submitTransactionAsync, submitTransactionExpectFailAsync } from '../substrate/substrate-api';
import {
createCollectionExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -37,28 +38,28 @@
const chainAdminLimit = (api.consts.nft.collectionAdminsLimit as any).toNumber();
expect(chainAdminLimit).to.be.equal(5);
- const changeAdminTx1 = api.tx.nft.addCollectionAdmin(collectionId, Eve.address);
+ const changeAdminTx1 = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Eve.address));
await submitTransactionAsync(Alice, changeAdminTx1);
- const changeAdminTx2 = api.tx.nft.addCollectionAdmin(collectionId, Dave.address);
+ const changeAdminTx2 = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Dave.address));
await submitTransactionAsync(Alice, changeAdminTx2);
- const changeAdminTx3 = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);
+ const changeAdminTx3 = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await submitTransactionAsync(Alice, changeAdminTx3);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
- const addAdmOne = api.tx.nft.addCollectionAdmin(collectionId, Ferdie.address);
- const addAdmTwo = api.tx.nft.addCollectionAdmin(collectionId, Charlie.address);
+ const addAdmOne = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Ferdie.address));
+ const addAdmTwo = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Charlie.address));
await Promise.all([
addAdmOne.signAndSend(Bob),
addAdmTwo.signAndSend(Alice),
]);
- await timeoutPromise(10000);
- const changeAdminTx4 = api.tx.nft.addCollectionAdmin(collectionId, Alice.address);
+ await timeoutPromise(20000);
+ const changeAdminTx4 = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Alice.address));
await expect(submitTransactionExpectFailAsync(Alice, changeAdminTx4)).to.be.rejected;
const adminListAfterAddAdmin: any = (await api.query.nft.adminList(collectionId));
- expect(adminListAfterAddAdmin).to.be.contains(Eve.address);
- expect(adminListAfterAddAdmin).to.be.contains(Ferdie.address);
- expect(adminListAfterAddAdmin).not.to.be.contains(Alice.address);
+ expect(adminListAfterAddAdmin).to.be.contains(normalizeAccountId(Eve.address));
+ expect(adminListAfterAddAdmin).to.be.contains(normalizeAccountId(Ferdie.address));
+ expect(adminListAfterAddAdmin).not.to.be.contains(normalizeAccountId(Alice.address));
await timeoutPromise(20000);
});
});
tests/src/collision-tests/adminRightsOff.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/adminRightsOff.test.ts
+++ b/tests/src/collision-tests/adminRightsOff.test.ts
@@ -6,6 +6,7 @@
import usingApi, { submitTransactionAsync } from '../substrate/substrate-api';
import {
createCollectionExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -25,22 +26,22 @@
it('In the block, the collection admin adds a token or changes data, and the collection owner deprives the admin of rights ', async () => {
await usingApi(async (api) => {
const collectionId = await createCollectionExpectSuccess();
- const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);
+ const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await submitTransactionAsync(Alice, changeAdminTx);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
await timeoutPromise(10000);
const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];
- const addItemAdm = api.tx.nft.createMultipleItems(collectionId, Bob.address, args);
- const removeAdm = api.tx.nft.removeCollectionAdmin(collectionId, Bob.address);
+ const addItemAdm = api.tx.nft.createMultipleItems(collectionId, normalizeAccountId(Bob.address), args);
+ const removeAdm = api.tx.nft.removeCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await Promise.all([
addItemAdm.signAndSend(Bob),
removeAdm.signAndSend(Alice),
]);
- await timeoutPromise(10000);
+ await timeoutPromise(20000);
const itemsListIndex = await api.query.nft.itemListIndex(collectionId) as unknown as BN;
expect(itemsListIndex.toNumber()).to.be.equal(0);
const adminList: any = (await api.query.nft.adminList(collectionId));
- expect(adminList).not.to.be.contains(Bob.address);
+ expect(adminList).not.to.be.contains(normalizeAccountId(Bob.address));
await timeoutPromise(20000);
});
});
tests/src/collision-tests/setSponsorNewOwner.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/setSponsorNewOwner.test.ts
+++ b/tests/src/collision-tests/setSponsorNewOwner.test.ts
@@ -4,7 +4,9 @@
import privateKey from '../substrate/privateKey';
import usingApi from '../substrate/substrate-api';
import {
- createCollectionExpectSuccess, setCollectionSponsorExpectSuccess,
+ createCollectionExpectSuccess,
+ setCollectionSponsorExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -28,16 +30,16 @@
const collectionId = await createCollectionExpectSuccess();
await setCollectionSponsorExpectSuccess(collectionId, Bob.address);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
- await timeoutPromise(10000);
+ await timeoutPromise(20000);
const confirmSponsorship = api.tx.nft.confirmSponsorship(collectionId);
const changeCollectionOwner = api.tx.nft.changeCollectionOwner(collectionId, Ferdie.address);
await Promise.all([
confirmSponsorship.signAndSend(Bob),
changeCollectionOwner.signAndSend(Alice),
]);
- await timeoutPromise(10000);
+ await timeoutPromise(20000);
const collection: any = (await api.query.nft.collectionById(collectionId)).toJSON();
- expect(collection.Sponsorship.Confirmed).to.be.eq(Bob.address);
+ expect(collection.Sponsorship.confirmed).to.be.eq(Bob.address);
expect(collection.Owner).to.be.eq(Ferdie.address);
await timeoutPromise(20000);
});
tests/src/collision-tests/sponsorPayments.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/sponsorPayments.test.ts
+++ b/tests/src/collision-tests/sponsorPayments.test.ts
@@ -10,6 +10,7 @@
createCollectionExpectSuccess,
createItemExpectSuccess,
setCollectionSponsorExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -29,7 +30,7 @@
it('Payment of commission if one block contains transactions for payment from the sponsor\'s balance and his (sponsor\'s) exclusion from the collection ', async () => {
await usingApi(async (api) => {
const collectionId = await createCollectionExpectSuccess();
- const changeAdminTxBob = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);
+ const changeAdminTxBob = api.tx.nft.addCollectionAdmin(collectionId, normalizeAccountId(Bob.address));
await submitTransactionAsync(Alice, changeAdminTxBob);
const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));
const itemId = await createItemExpectSuccess(Bob, collectionId, 'NFT');
@@ -37,7 +38,7 @@
await confirmSponsorshipExpectSuccess(collectionId, '//Bob');
const [alicesBalanceBefore, bobsBalanceBefore] = await getBalance(api, [alicesPublicKey, bobsPublicKey]);
- const sendItem = api.tx.nft.transfer(Alice.address, collectionId, itemId, 1);
+ const sendItem = api.tx.nft.transfer(normalizeAccountId(Alice.address), collectionId, itemId, 1);
const revokeSponsor = api.tx.nft.removeCollectionSponsor(collectionId);
await Promise.all([
sendItem.signAndSend(Bob),
tests/src/collision-tests/tokenLimitsOff.test.tsdiffbeforeafterboth9 createCollectionExpectSuccess,9 createCollectionExpectSuccess,10 getCreateItemResult,10 getCreateItemResult,11 setMintPermissionExpectSuccess,11 setMintPermissionExpectSuccess,12 normalizeAccountId,12} from '../util/helpers';13} from '../util/helpers';131414chai.use(chaiAsPromised);15chai.use(chaiAsPromised);57 // tslint:disable-next-line:no-unused-expression58 // tslint:disable-next-line:no-unused-expression58 expect(subTxTesult.success).to.be.true;59 expect(subTxTesult.success).to.be.true;59 const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));60 const timeoutPromise = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout));60 await timeoutPromise(10000);61 await timeoutPromise(20000);616262 const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];63 const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];63 const mintItemOne = api.tx.nft64 const mintItemOne = api.tx.nft64 .createMultipleItems(collectionId, Ferdie.address, args);65 .createMultipleItems(collectionId, normalizeAccountId(Ferdie.address), args);65 const mintItemTwo = api.tx.nft66 const mintItemTwo = api.tx.nft66 .createMultipleItems(collectionId, Bob.address, args);67 .createMultipleItems(collectionId, normalizeAccountId(Bob.address), args);67 await Promise.all([68 await Promise.all([68 mintItemOne.signAndSend(Ferdie),69 mintItemOne.signAndSend(Ferdie),69 mintItemTwo.signAndSend(Bob),70 mintItemTwo.signAndSend(Bob),70 ]);71 ]);71 await timeoutPromise(10000);72 await timeoutPromise(20000);72 const itemsListIndexAfter = await api.query.nft.itemListIndex(collectionId) as unknown as BN;73 const itemsListIndexAfter = await api.query.nft.itemListIndex(collectionId) as unknown as BN;73 expect(itemsListIndexAfter.toNumber()).to.be.equal(3);74 expect(itemsListIndexAfter.toNumber()).to.be.equal(3);74 // TokenLimit = 4. The first transaction is successful. The second should fail.75 // TokenLimit = 4. The first transaction is successful. The second should fail.75 await timeoutPromise(10000);76 await timeoutPromise(20000);76 });77 });77 });78 });78});79});tests/src/collision-tests/turnsOffMinting.test.tsdiffbeforeafterboth--- a/tests/src/collision-tests/turnsOffMinting.test.ts
+++ b/tests/src/collision-tests/turnsOffMinting.test.ts
@@ -7,6 +7,7 @@
addToWhiteListExpectSuccess,
createCollectionExpectSuccess,
setMintPermissionExpectSuccess,
+ normalizeAccountId,
} from '../util/helpers';
chai.use(chaiAsPromised);
@@ -30,7 +31,7 @@
await setMintPermissionExpectSuccess(Alice, collectionId, true);
await addToWhiteListExpectSuccess(Alice, collectionId, Ferdie.address);
- const mintItem = api.tx.nft.createItem(collectionId, Ferdie.address, 'NFT');
+ const mintItem = api.tx.nft.createItem(collectionId, normalizeAccountId(Ferdie.address), 'NFT');
const offMinting = api.tx.nft.setMintPermission(collectionId, false);
await Promise.all([
mintItem.signAndSend(Ferdie),