git.delta.rocks / unique-network / refs/commits / 86d26e3a07ad

difftreelog

source

tests/src/rmrk/setEquippableList.test.ts3.5 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 = 77793        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});