1234567891011121314151617import chai from 'chai';18import chaiAsPromised from 'chai-as-promised';19import privateKey from './substrate/privateKey';20import usingApi from './substrate/substrate-api';21import {22 createItemExpectSuccess,23 createCollectionExpectSuccess,24 transferExpectSuccess,25 transferExpectFailure,26 setTransferFlagExpectSuccess,27 setTransferFlagExpectFailure,28} from './util/helpers';2930chai.use(chaiAsPromised);3132describe('Enable/Disable Transfers', () => {33 it('User can transfer token with enabled transfer flag', async () => {34 await usingApi(async () => {35 const alice = privateKey('//Alice');36 const bob = privateKey('//Bob');37 38 const nftCollectionId = await createCollectionExpectSuccess();39 const newNftTokenId = await createItemExpectSuccess(alice, nftCollectionId, 'NFT');4041 42 await setTransferFlagExpectSuccess(alice, nftCollectionId, true);4344 await transferExpectSuccess(nftCollectionId, newNftTokenId, alice, bob, 1);45 });46 });4748 it('User can\'n transfer token with disabled transfer flag', async () => {49 await usingApi(async () => {50 const alice = privateKey('//Alice');51 const bob = privateKey('//Bob');52 53 const nftCollectionId = await createCollectionExpectSuccess();54 const newNftTokenId = await createItemExpectSuccess(alice, nftCollectionId, 'NFT');5556 57 await setTransferFlagExpectSuccess(alice, nftCollectionId, false);5859 await transferExpectFailure(nftCollectionId, newNftTokenId, alice, bob, 1);60 });61 });62});6364describe('Negative Enable/Disable Transfers', () => {65 it('Non-owner cannot change transfer flag', async () => {66 await usingApi(async () => {67 const bob = privateKey('//Bob');68 69 const nftCollectionId = await createCollectionExpectSuccess();7071 72 await setTransferFlagExpectFailure(bob, nftCollectionId, false);73 });74 });75});