git.delta.rocks / unique-network / refs/commits / a1bfd4b3cd67

difftreelog

source

tests/src/rmrk/setEquippableList.test.ts3.0 KiBsourcehistory
1import {getApiConnection} from '../substrate/substrate-api';2import {expectTxFailure} from './util/helpers';3import {createCollection, createBase, setEquippableList} from './util/tx';45describe("integration test: set slot's Equippable List", () => {6  let api: any;7  before(async () => { api = await getApiConnection(); });89  const alice = '//Alice';10  const bob = '//Bob';1112  it("set Base's slot Equippable List", async () => {13    const collectionIds = [14      await createCollection(15        api,16        alice,17        'equiplist-collection-metadata',18        null,19        'equiplist-0',20      ),21      await createCollection(22        api,23        alice,24        'equiplist-collection-metadata',25        null,26        'equiplist-1',27      ),28    ];2930    const slotId = 202;3132    const baseId = await createBase(api, alice, 'slotpartany-base-type', 'slotpartany', [33      {34        'SlotPart': {35          id: slotId,36          equippable: 'All',37          z: 1,38          src: 'some-fallback-slot-url',39        },40      },41    ]);4243    await setEquippableList(api, alice, baseId, slotId, 'All');44    await setEquippableList(api, alice, baseId, slotId, 'Empty');45    await setEquippableList(api, alice, baseId, slotId, {'Custom': collectionIds});46  });4748  it('[negative] unable to set equippable list of a slot of non-existing base', async () => {49    const maxBaseId = 0xFFFFFFFF;50    const slotId = 0;5152    const tx = setEquippableList(api, alice, maxBaseId, slotId, 'All');53    await expectTxFailure(/rmrkEquip\.BaseDoesntExist/, tx);54  });5556  it('[negative] unable to set equippable list by a not-an-owner', async () => {57    const slotId = 42;5859    const baseId = await createBase(api, alice, 'slotpartany-base-type', 'slotpartany', [60      {61        'SlotPart': {62          id: slotId,63          equippable: 'All',64          z: 1,65          src: 'some-fallback-slot-url',66        },67      },68    ]);6970    const tx = setEquippableList(api, bob, baseId, slotId, 'All');71    await expectTxFailure(/rmrkEquip\.PermissionError/, tx);72  });7374  it('[negative] unable to set equippable list to a fixed part', async () => {75    const fixedPartId = 42;7677    const baseId = await createBase(api, alice, 'fixedpart-base-type', 'fixedpart', [78      {79        'FixedPart': {80          id: fixedPartId,81          z: 0,82          src: 'fixed-part-url',83        },84      },85    ]);8687    const tx = setEquippableList(api, alice, baseId, fixedPartId, 'All');88    await expectTxFailure(/rmrkEquip\.NoEquippableOnFixedPart/, tx);89  });9091  it('[negative] unable to set equippable list to non-existing slot', async () => {92    const slotId = 777;93    const maxSlotId = 0xFFFFFFFF;9495    const baseId = await createBase(api, alice, 'slotpartany-base-type', 'slotpartany', [96      {97        'SlotPart': {98          id: slotId,99          equippable: 'All',100          z: 1,101          src: 'some-fallback-slot-url',102        },103      },104    ]);105106    const tx = setEquippableList(api, alice, baseId, maxSlotId, 'All');107    await expectTxFailure(/rmrkEquip\.PartDoesntExist/, tx);108  });109110  after(() => { api.disconnect(); });111});