git.delta.rocks / unique-network / refs/commits / 6edd3f1acfd3

difftreelog

source

tests/src/enableDisableTransfer.test.ts2.7 KiBsourcehistory
1// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.2// This file is part of Unique Network.34// Unique Network is free software: you can redistribute it and/or modify5// it under the terms of the GNU General Public License as published by6// the Free Software Foundation, either version 3 of the License, or7// (at your option) any later version.89// Unique Network is distributed in the hope that it will be useful,10// but WITHOUT ANY WARRANTY; without even the implied warranty of11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the12// GNU General Public License for more details.1314// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.1617import 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      // nft38      const nftCollectionId = await createCollectionExpectSuccess();39      const newNftTokenId = await createItemExpectSuccess(alice, nftCollectionId, 'NFT');4041      // explicitely set transfer flag42      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      // nft53      const nftCollectionId = await createCollectionExpectSuccess();54      const newNftTokenId = await createItemExpectSuccess(alice, nftCollectionId, 'NFT');5556      // explicitely set transfer flag57      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      // nft69      const nftCollectionId = await createCollectionExpectSuccess();7071      // Change transfer flag72      await setTransferFlagExpectFailure(bob, nftCollectionId, false);73    });74  });75});