git.delta.rocks / unique-network / refs/commits / 8a2456a1de7f

difftreelog

source

tests/src/setMintPermission.test.ts2.7 KiBsourcehistory
1import { IKeyringPair } from '@polkadot/types/types';2import privateKey from './substrate/privateKey';3import usingApi from './substrate/substrate-api';4import {5  addToWhiteListExpectSuccess,6  createCollectionExpectSuccess,7  createItemExpectFailure,8  createItemExpectSuccess,9  destroyCollectionExpectSuccess,10  enableWhiteListExpectSuccess,11  findNotExistingCollection,12  setMintPermissionExpectFailure,13  setMintPermissionExpectSuccess,14} from './util/helpers';1516describe('Integration Test setMintPermission', () => {17  let alice: IKeyringPair;18  let bob: IKeyringPair;1920  before(async () => {21    await usingApi(async () => {22      alice = privateKey('//Alice');23      bob = privateKey('//Bob');24    });25  });2627  it('ensure white-listed non-privileged address can mint tokens', async () => {28    await usingApi(async () => {29      const collectionId = await createCollectionExpectSuccess({ mode: { type: 'NFT' } });30      await enableWhiteListExpectSuccess(alice, collectionId);31      await setMintPermissionExpectSuccess(alice, collectionId, true);32      await addToWhiteListExpectSuccess(alice, collectionId, bob.address);3334      await createItemExpectSuccess(bob, collectionId, 'NFT');35    });36  });3738  it('ensure non-white-listed non-privileged address can\'t mint tokens', async () => {39    await usingApi(async () => {40      const collectionId = await createCollectionExpectSuccess({ mode: { type: 'NFT' } });41      await enableWhiteListExpectSuccess(alice, collectionId);42      await setMintPermissionExpectSuccess(alice, collectionId, true);4344      await createItemExpectFailure(bob, collectionId, 'NFT');45    });46  });47});4849describe('Negative Integration Test setMintPermission', () => {50  let alice: IKeyringPair;51  let bob: IKeyringPair;5253  before(async () => {54    await usingApi(async () => {55      alice = privateKey('//Alice');56      bob = privateKey('//Bob');57    });58  });5960  it('fails on not existing collection', async () => {61    await usingApi(async (api) => {62      const nonExistingCollection = await findNotExistingCollection(api);63      await setMintPermissionExpectFailure(alice, nonExistingCollection, true);64    });65  });6667  it('fails on removed collection', async () => {68    await usingApi(async () => {69      const removedCollectionId = await createCollectionExpectSuccess({ mode: { type: 'NFT' } });70      await destroyCollectionExpectSuccess(removedCollectionId);7172      await setMintPermissionExpectFailure(alice, removedCollectionId, true);73    });74  });7576  it('fails when not collection owner tries to set mint status', async () => {77    const collectionId = await createCollectionExpectSuccess({ mode: { type: 'NFT' } });78    await enableWhiteListExpectSuccess(alice, collectionId);79    await setMintPermissionExpectFailure(bob, collectionId, true);80  });81});