git.delta.rocks / unique-network / refs/commits / 4afba3743846

difftreelog

source

tests/src/rmrk/lockCollection.seqtest.ts2.8 KiBsourcehistory
1import {getApiConnection} from '../substrate/substrate-api';2import {expectTxFailure, requirePallets, Pallets} from './util/helpers';3import {createCollection, lockCollection, mintNft} from './util/tx';45describe('integration test: lock collection', () => {6  const alice = '//Alice';7  const bob = '//Bob';8  const max = 5;910  let api: any;11  before(async function () {12    api = await getApiConnection();13    await requirePallets(this, [Pallets.RmrkCore]);14  });1516  it('lock collection', async () => {17    await createCollection(18      api,19      alice,20      'test-metadata',21      null,22      'test-symbol',23    ).then(async (collectionId) => {24      await lockCollection(api, alice, collectionId);25    });26  });2728  it('[negative] lock non-existing NFT collection', async () => {29    const tx = lockCollection(api, alice, 99999);30    await expectTxFailure(/rmrkCore\.CollectionUnknown/, tx);31  });3233  it('[negative] lock not an owner NFT collection issuer', async () => {34    await createCollection(35      api,36      alice,37      'test-metadata',38      null,39      'test-symbol',40    ).then(async (collectionId) => {41      const tx = lockCollection(api, bob, collectionId);42      await expectTxFailure(/rmrkCore\.NoPermission/, tx);43    });44  });4546  it('lock collection with minting', async () => {47    await createCollection(48      api,49      alice,50      'test-metadata',51      max,52      'test-symbol',53    ).then(async (collectionId) => {54      for (let i = 0; i < 5; i++) {55        await mintNft(56          api,57          alice,58          alice,59          collectionId,60          'test-metadata',61          null,62          null,63        );64      }65      await lockCollection(api, alice, collectionId, max);66    });67  });6869  it('[negative] unable to mint NFT inside a locked collection', async () => {70    await createCollection(71      api,72      alice,73      'test-metadata',74      max,75      'test-symbol',76    ).then(async (collectionId) => {77      await lockCollection(api, alice, collectionId);78      const tx = mintNft(79        api,80        alice,81        alice,82        collectionId,83        'test-metadata',84        null,85        null,86      );87      await expectTxFailure(/rmrkCore\.CollectionFullOrLocked/, tx);88    });89  });9091  it('[negative] unable to mint NFT inside a full collection', async () => {92    await createCollection(api, alice, 'test-metadata', 1, 'test-symbol').then(async (collectionId) => {93      await mintNft(94        api,95        alice,96        alice,97        collectionId,98        'test-metadata',99        null,100        null,101      );102      const tx = mintNft(103        api,104        alice,105        alice,106        collectionId,107        'test-metadata',108        null,109        null,110      );111      await expectTxFailure(/rmrkCore\.CollectionFullOrLocked/, tx);112    });113  });114115  after(async() => { await api.disconnect(); });116});