difftreelog
Revert "fix: tests around foreign flag"
in: master
This reverts commit 15c1841ae27ac9664160f5567f05b4c933618062.
3 files changed
js-packages/playgrounds/types.tsdiffbeforeafterboth--- a/js-packages/playgrounds/types.ts
+++ b/js-packages/playgrounds/types.ts
@@ -160,6 +160,8 @@
External = 1,
/// Supports ERC721Metadata
Erc721metadata = 64,
+ /// Tokens in foreign collections can be transferred, but not burnt
+ Foreign = 128,
}
export interface ICollectionCreationOptions {
js-packages/tests/createCollection.test.tsdiffbeforeafterboth--- a/js-packages/tests/createCollection.test.ts
+++ b/js-packages/tests/createCollection.test.ts
@@ -106,6 +106,18 @@
name: 'name', description: 'descr', tokenPrefix: 'COL',
flags: [CollectionFlag.Erc721metadata],
}, 'nft');
+
+ // User can not set Foreign flag itself
+
+ await expect(mintCollectionHelper(helper, alice, {
+ name: 'name', description: 'descr', tokenPrefix: 'COL',
+ flags: [CollectionFlag.Foreign],
+ }, 'nft')).to.be.rejectedWith(/common.NoPermission/);
+
+ await expect(mintCollectionHelper(helper, alice, {
+ name: 'name', description: 'descr', tokenPrefix: 'COL',
+ flags: [CollectionFlag.Erc721metadata, CollectionFlag.Foreign],
+ }, 'nft')).to.be.rejectedWith(/common.NoPermission/);
});
itSub('Create new collection with extra fields', async ({helper}) => {
js-packages/tests/eth/createCollection.test.tsdiffbeforeafterboth140414041405 {1405 {1406 const {collectionId} = await helper.eth.createCollection(owner, {...createCollectionData, flags: 0}).send();1406 const {collectionId} = await helper.eth.createCollection(owner, {...createCollectionData, flags: 0}).send();1407 expect((await helper.nft.getData(collectionId))?.raw.flags).to.be.deep.equal({erc721metadata: false});1407 expect((await helper.nft.getData(collectionId))?.raw.flags).to.be.deep.equal({foreign: false, erc721metadata: false});1408 }1408 }140914091410 {1410 {1411 const {collectionId} = await helper.eth.createCollection(owner, {...createCollectionData, flags: 64}).send();1411 const {collectionId} = await helper.eth.createCollection(owner, {...createCollectionData, flags: 64}).send();1412 expect((await helper.nft.getData(collectionId))?.raw.flags).to.be.deep.equal({erc721metadata: true});1412 expect((await helper.nft.getData(collectionId))?.raw.flags).to.be.deep.equal({foreign: false, erc721metadata: true});1413 }1413 }1414 });1414 });141514151416 itEth('NFT: cannot set a reserved flag number', async ({helper}) => {1416 itEth('NFT: can\'t set foreign flag number', async ({helper}) => {1417 const owner = await helper.eth.createAccountWithBalance(donor);1417 const owner = await helper.eth.createAccountWithBalance(donor);141814181419 {1419 {143014301431 {1431 {1432 const {collectionId} = await helper.eth.createCollection(owner, {...createCollectionData, flags: [CollectionFlag.Erc721metadata]}).send();1432 const {collectionId} = await helper.eth.createCollection(owner, {...createCollectionData, flags: [CollectionFlag.Erc721metadata]}).send();1433 expect((await helper.nft.getData(collectionId))?.raw.flags).to.be.deep.equal({erc721metadata: true});1433 expect((await helper.nft.getData(collectionId))?.raw.flags).to.be.deep.equal({foreign: false, erc721metadata: true});1434 }1434 }1435 });1435 });14361437 itEth('NFT: foreign flag enum is ignored', async ({helper}) => {1438 const owner = await helper.eth.createAccountWithBalance(donor);14391440 {1441 await expect(helper.eth.createCollection(owner, {...createCollectionData, flags: [CollectionFlag.Foreign]}).call({from: owner})).to.be.rejectedWith(/internal flags were used/);1442 }14431444 {1445 await expect(helper.eth.createCollection(owner, {...createCollectionData, flags: [CollectionFlag.Erc721metadata | CollectionFlag.Foreign]}).call({from: owner})).to.be.rejectedWith(/internal flags were used/);1446 }1447 });1436 });1448 });1437});1449});14381450