git.delta.rocks / unique-network / refs/commits / 7c5f266f6a1f

difftreelog

source

mochawesome-report/mochawesome.json551.2 KiBsourcehistory
1{2  "stats": {3    "suites": 0,4    "tests": 0,5    "passes": 0,6    "pending": 0,7    "failures": 0,8    "start": "2021-09-08T12:24:24.749Z",9    "end": "2021-09-08T12:24:24.775Z",10    "duration": 26,11    "testsRegistered": 363,12    "passPercent": 0,13    "pendingPercent": 0,14    "other": 1,15    "hasOther": true,16    "skipped": 363,17    "hasSkipped": true18  },19  "results": [20    {21      "uuid": "60720f68-c599-4517-bbe5-4c355843c456",22      "title": "",23      "fullFile": "",24      "file": "",25      "beforeHooks": [26        {27          "title": "\"before all\" hook in \"{root}\"",28          "fullTitle": "\"before all\" hook in \"{root}\"",29          "timedOut": false,30          "duration": 20,31          "state": "failed",32          "speed": null,33          "pass": false,34          "fail": true,35          "pending": false,36          "context": null,37          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Ferdie = privateKey_1.default('//Ferdie');\n});",38          "err": {39            "message": "Error: the object {\n  \"_yaeti\": true\n  \"cancelable\": true\n  \"isTrusted\": false\n  \"stopImmediatePropagation\": [Function]\n  \"target\": {\n    \"_binaryType\": \"arraybuffer\"\n    \"_bufferedAmount\": 0\n    \"_client\": {\n      \"_events\": {}\n      \"_eventsCount\": 0\n      \"_maxListeners\": [undefined]\n      \"_req\": [null]\n      \"base64nonce\": \"2bcUD3AqQVk1QNSE5Wi2wA==\"\n      \"config\": {\n        \"assembleFragments\": true\n        \"closeTimeout\": 5000\n        \"disableNagleAlgorithm\": true\n        \"fragmentOutgoingMessages\": true\n        \"fragmentationThreshold\": 262144\n        \"maxReceivedFrameSize\": 1048576\n        \"maxReceivedMessageSize\": 16777216\n        \"tlsOptions\": {}\n        \"webSocketVersion\": 13\n      }\n      \"origin\": [undefined]\n      \"protocols\": []\n      \"secure\": false\n      \"url\": {\n        \"auth\": [null]\n        \"hash\": [null]\n        \"host\": \"172.17.0.1:9944\"\n        \"hostname\": \"172.17.0.1\"\n        \"href\": \"ws://172.17.0.1:9944/\"\n        \"path\": \"/\"\n        \"pathname\": \"/\"\n        \"port\": \"9944\"\n        \"protocol\": \"ws:\"\n        \"query\": [null]\n        \"search\": [null]\n        \"slashes\": true\n      }\n    }\n    \"_connection\": [undefined]\n    \"_extensions\": \"\"\n    \"_listeners\": {}\n    \"_protocol\": [undefined]\n    \"_readyState\": 3\n    \"_url\": \"ws://172.17.0.1:9944\"\n    \"addEventListener\": [Function]\n    \"dispatchEvent\": [Function]\n    \"onclose\": [null]\n    \"onerror\": [null]\n    \"onmessage\": [null]\n    \"onopen\": [null]\n    \"removeEventListener\": [Function]\n  }\n  \"type\": \"error\"\n} was thrown, throw an Error :)",40            "estack": "Error: the object {\n  \"_yaeti\": true\n  \"cancelable\": true\n  \"isTrusted\": false\n  \"stopImmediatePropagation\": [Function]\n  \"target\": {\n    \"_binaryType\": \"arraybuffer\"\n    \"_bufferedAmount\": 0\n    \"_client\": {\n      \"_events\": {}\n      \"_eventsCount\": 0\n      \"_maxListeners\": [undefined]\n      \"_req\": [null]\n      \"base64nonce\": \"2bcUD3AqQVk1QNSE5Wi2wA==\"\n      \"config\": {\n        \"assembleFragments\": true\n        \"closeTimeout\": 5000\n        \"disableNagleAlgorithm\": true\n        \"fragmentOutgoingMessages\": true\n        \"fragmentationThreshold\": 262144\n        \"maxReceivedFrameSize\": 1048576\n        \"maxReceivedMessageSize\": 16777216\n        \"tlsOptions\": {}\n        \"webSocketVersion\": 13\n      }\n      \"origin\": [undefined]\n      \"protocols\": []\n      \"secure\": false\n      \"url\": {\n        \"auth\": [null]\n        \"hash\": [null]\n        \"host\": \"172.17.0.1:9944\"\n        \"hostname\": \"172.17.0.1\"\n        \"href\": \"ws://172.17.0.1:9944/\"\n        \"path\": \"/\"\n        \"pathname\": \"/\"\n        \"port\": \"9944\"\n        \"protocol\": \"ws:\"\n        \"query\": [null]\n        \"search\": [null]\n        \"slashes\": true\n      }\n    }\n    \"_connection\": [undefined]\n    \"_extensions\": \"\"\n    \"_listeners\": {}\n    \"_protocol\": [undefined]\n    \"_readyState\": 3\n    \"_url\": \"ws://172.17.0.1:9944\"\n    \"addEventListener\": [Function]\n    \"dispatchEvent\": [Function]\n    \"onclose\": [null]\n    \"onerror\": [null]\n    \"onmessage\": [null]\n    \"onopen\": [null]\n    \"removeEventListener\": [Function]\n  }\n  \"type\": \"error\"\n} was thrown, throw an Error :)\n    at processTicksAndRejections (node:internal/process/task_queues:93:5)",41            "diff": null42          },43          "uuid": "b2e6905c-e4c6-43b5-bac0-0a3077c70441",44          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",45          "isHook": true,46          "skipped": false47        },48        {49          "title": "\"before all\" hook",50          "fullTitle": "\"before all\" hook",51          "timedOut": false,52          "duration": 0,53          "state": null,54          "speed": null,55          "pass": false,56          "fail": false,57          "pending": false,58          "context": null,59          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Ferdie = privateKey_1.default('//Ferdie');\n    Charlie = privateKey_1.default('//Charlie');\n    Eve = privateKey_1.default('//Eve');\n    Dave = privateKey_1.default('//Dave');\n});",60          "err": {},61          "uuid": "b9b32b58-7e22-4714-b108-5c9eda9fe598",62          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",63          "isHook": true,64          "skipped": false65        },66        {67          "title": "\"before all\" hook",68          "fullTitle": "\"before all\" hook",69          "timedOut": false,70          "duration": 0,71          "state": null,72          "speed": null,73          "pass": false,74          "fail": false,75          "pending": false,76          "context": null,77          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",78          "err": {},79          "uuid": "45d28530-d27d-4d82-9838-6541e2460bd6",80          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",81          "isHook": true,82          "skipped": false83        },84        {85          "title": "\"before all\" hook",86          "fullTitle": "\"before all\" hook",87          "timedOut": false,88          "duration": 0,89          "state": null,90          "speed": null,91          "pass": false,92          "fail": false,93          "pending": false,94          "context": null,95          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Ferdie = privateKey_1.default('//Ferdie');\n});",96          "err": {},97          "uuid": "cb1fabc7-5c76-4e92-be50-fcfe5b7a6e64",98          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",99          "isHook": true,100          "skipped": false101        },102        {103          "title": "\"before all\" hook",104          "fullTitle": "\"before all\" hook",105          "timedOut": false,106          "duration": 0,107          "state": null,108          "speed": null,109          "pass": false,110          "fail": false,111          "pending": false,112          "context": null,113          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",114          "err": {},115          "uuid": "3beb3f40-7ee3-4eae-985d-723c8158894d",116          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",117          "isHook": true,118          "skipped": false119        },120        {121          "title": "\"before all\" hook",122          "fullTitle": "\"before all\" hook",123          "timedOut": false,124          "duration": 0,125          "state": null,126          "speed": null,127          "pass": false,128          "fail": false,129          "pending": false,130          "context": null,131          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Ferdie = privateKey_1.default('//Ferdie');\n});",132          "err": {},133          "uuid": "d6d32986-311a-42b1-afac-ae35b5465fad",134          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",135          "isHook": true,136          "skipped": false137        },138        {139          "title": "\"before all\" hook",140          "fullTitle": "\"before all\" hook",141          "timedOut": false,142          "duration": 0,143          "state": null,144          "speed": null,145          "pass": false,146          "fail": false,147          "pending": false,148          "context": null,149          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Ferdie = privateKey_1.default('//Ferdie');\n});",150          "err": {},151          "uuid": "4d02f57a-8afc-4038-9dc1-6181713627f7",152          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",153          "isHook": true,154          "skipped": false155        },156        {157          "title": "\"before all\" hook",158          "fullTitle": "\"before all\" hook",159          "timedOut": false,160          "duration": 0,161          "state": null,162          "speed": null,163          "pass": false,164          "fail": false,165          "pending": false,166          "context": null,167          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",168          "err": {},169          "uuid": "9414213c-23c1-420c-8b83-4e740c4cdd51",170          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",171          "isHook": true,172          "skipped": false173        },174        {175          "title": "\"before all\" hook",176          "fullTitle": "\"before all\" hook",177          "timedOut": false,178          "duration": 0,179          "state": null,180          "speed": null,181          "pass": false,182          "fail": false,183          "pending": false,184          "context": null,185          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Ferdie = privateKey_1.default('//Ferdie');\n});",186          "err": {},187          "uuid": "7e618a73-068f-4b94-882b-149c20ddd16d",188          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",189          "isHook": true,190          "skipped": false191        },192        {193          "title": "\"before all\" hook",194          "fullTitle": "\"before all\" hook",195          "timedOut": false,196          "duration": 0,197          "state": null,198          "speed": null,199          "pass": false,200          "fail": false,201          "pending": false,202          "context": null,203          "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Ferdie = privateKey_1.default('//Ferdie');\n});",204          "err": {},205          "uuid": "32e886fe-0986-4853-865d-a17bf7becede",206          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",207          "isHook": true,208          "skipped": false209        },210        {211          "title": "\"before all\" hook",212          "fullTitle": "\"before all\" hook",213          "timedOut": false,214          "duration": 0,215          "state": null,216          "speed": null,217          "pass": false,218          "fail": false,219          "pending": false,220          "context": null,221          "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    Alice = keyring.addFromUri('//Alice');\n    Bob = keyring.addFromUri('//Bob');\n    Shema = '0x31';\n    largeShema = new Array(4097).fill(0xff);\n});",222          "err": {},223          "uuid": "3f8d4bc9-df4d-4a56-ab5d-00eb990f88c8",224          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",225          "isHook": true,226          "skipped": false227        },228        {229          "title": "\"before all\" hook",230          "fullTitle": "\"before all\" hook",231          "timedOut": false,232          "duration": 0,233          "state": null,234          "speed": null,235          "pass": false,236          "fail": false,237          "pending": false,238          "context": null,239          "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    Alice = keyring.addFromUri('//Alice');\n    Bob = keyring.addFromUri('//Bob');\n    Schema = '0x31';\n    largeSchema = new Array(4097).fill(0xff);\n});",240          "err": {},241          "uuid": "bda5978b-aea2-4c9d-8db9-010d66209065",242          "parentUUID": "60720f68-c599-4517-bbe5-4c355843c456",243          "isHook": true,244          "skipped": false245        }246      ],247      "afterHooks": [],248      "tests": [],249      "suites": [250        {251          "uuid": "883d1f24-daf5-4795-b324-5ac4e4aba2fd",252          "title": "Integration Test addCollectionAdmin(collection_id, new_admin_id):",253          "fullFile": "/nft_parachain/tests/src/addCollectionAdmin.test.ts",254          "file": "/src/addCollectionAdmin.test.ts",255          "beforeHooks": [],256          "afterHooks": [],257          "tests": [258            {259              "title": "Add collection admin.",260              "fullTitle": "Integration Test addCollectionAdmin(collection_id, new_admin_id): Add collection admin.",261              "timedOut": false,262              "duration": 0,263              "state": null,264              "speed": null,265              "pass": false,266              "fail": false,267              "pending": false,268              "context": null,269              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.equal(alice.address);\n    const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(bob.address));\n    await substrate_api_1.submitTransactionAsync(alice, changeAdminTx);\n    const adminListAfterAddAdmin = (await api.query.nft.adminList(collectionId));\n    expect(adminListAfterAddAdmin).to.be.contains(helpers_1.normalizeAccountId(bob.address));\n});",270              "err": {},271              "uuid": "ae13d452-a347-4d9d-bd67-fb8f39016e9a",272              "parentUUID": null,273              "isHook": false,274              "skipped": true275            },276            {277              "title": "Add admin using added collection admin.",278              "fullTitle": "Integration Test addCollectionAdmin(collection_id, new_admin_id): Add admin using added collection admin.",279              "timedOut": false,280              "duration": 0,281              "state": null,282              "speed": null,283              "pass": false,284              "fail": false,285              "pending": false,286              "context": null,287              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    const Charlie = privateKey_1.default('//CHARLIE');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.equal(Alice.address);\n    const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx);\n    const adminListAfterAddAdmin = (await api.query.nft.adminList(collectionId));\n    expect(adminListAfterAddAdmin).to.be.contains(helpers_1.normalizeAccountId(Bob.address));\n    const changeAdminTxCharlie = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Charlie.address));\n    await substrate_api_1.submitTransactionAsync(Bob, changeAdminTxCharlie);\n    const adminListAfterAddNewAdmin = (await api.query.nft.adminList(collectionId));\n    expect(adminListAfterAddNewAdmin).to.be.contains(helpers_1.normalizeAccountId(Bob.address));\n    expect(adminListAfterAddNewAdmin).to.be.contains(helpers_1.normalizeAccountId(Charlie.address));\n});",288              "err": {},289              "uuid": "7bd5e167-dcc1-4b2a-b891-ce5813a9fb40",290              "parentUUID": null,291              "isHook": false,292              "skipped": true293            }294          ],295          "suites": [],296          "passes": [],297          "failures": [],298          "pending": [],299          "skipped": [300            "ae13d452-a347-4d9d-bd67-fb8f39016e9a",301            "7bd5e167-dcc1-4b2a-b891-ce5813a9fb40"302          ],303          "duration": 0,304          "root": false,305          "rootEmpty": false,306          "_timeout": 9999999307        },308        {309          "uuid": "5f947ba1-65c6-442f-b9f3-13186b004d6a",310          "title": "Negative Integration Test addCollectionAdmin(collection_id, new_admin_id):",311          "fullFile": "/nft_parachain/tests/src/addCollectionAdmin.test.ts",312          "file": "/src/addCollectionAdmin.test.ts",313          "beforeHooks": [],314          "afterHooks": [],315          "tests": [316            {317              "title": "Not owner can't add collection admin.",318              "fullTitle": "Negative Integration Test addCollectionAdmin(collection_id, new_admin_id): Not owner can't add collection admin.",319              "timedOut": false,320              "duration": 0,321              "state": null,322              "speed": null,323              "pass": false,324              "fail": false,325              "pending": false,326              "context": null,327              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const nonOwner = privateKey_1.default('//Bob_stash');\n    const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(alice.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(nonOwner, changeAdminTx)).to.be.rejected;\n    const adminListAfterAddAdmin = (await api.query.nft.adminList(collectionId));\n    expect(adminListAfterAddAdmin).not.to.be.contains(helpers_1.normalizeAccountId(alice.address));\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",328              "err": {},329              "uuid": "ccd1505b-6b0b-4472-8d2c-d3a67b729421",330              "parentUUID": null,331              "isHook": false,332              "skipped": true333            },334            {335              "title": "Can't add collection admin of not existing collection.",336              "fullTitle": "Negative Integration Test addCollectionAdmin(collection_id, new_admin_id): Can't add collection admin of not existing collection.",337              "timedOut": false,338              "duration": 0,339              "state": null,340              "speed": null,341              "pass": false,342              "fail": false,343              "pending": false,344              "context": null,345              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = (1 << 32) - 1;\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const changeOwnerTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(bob.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, changeOwnerTx)).to.be.rejected;\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",346              "err": {},347              "uuid": "0e3a766b-610e-479f-821f-6ec97d977002",348              "parentUUID": null,349              "isHook": false,350              "skipped": true351            },352            {353              "title": "Can't add an admin to a destroyed collection.",354              "fullTitle": "Negative Integration Test addCollectionAdmin(collection_id, new_admin_id): Can't add an admin to a destroyed collection.",355              "timedOut": false,356              "duration": 0,357              "state": null,358              "speed": null,359              "pass": false,360              "fail": false,361              "pending": false,362              "context": null,363              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n    const changeOwnerTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, changeOwnerTx)).to.be.rejected;\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",364              "err": {},365              "uuid": "fe525657-ebd6-47b9-8970-3dafaff61f5f",366              "parentUUID": null,367              "isHook": false,368              "skipped": true369            },370            {371              "title": "Add an admin to a collection that has reached the maximum number of admins limit",372              "fullTitle": "Negative Integration Test addCollectionAdmin(collection_id, new_admin_id): Add an admin to a collection that has reached the maximum number of admins limit",373              "timedOut": false,374              "duration": 0,375              "state": null,376              "speed": null,377              "pass": false,378              "fail": false,379              "pending": false,380              "context": null,381              "code": "await substrate_api_1.default(async (api) => {\n    const Alice = privateKey_1.default('//Alice');\n    const accounts = [\n        'GsvVmjr1CBHwQHw84pPHMDxgNY3iBLz6Qn7qS3CH8qPhrHz',\n        'FoQJpPyadYccjavVdTWxpxU7rUEaYhfLCPwXgkfD6Zat9QP',\n        'JKspFU6ohf1Grg3Phdzj2pSgWvsYWzSfKghhfzMbdhNBWs5',\n        'Fr4NzY1udSFFLzb2R3qxVQkwz9cZraWkyfH4h3mVVk7BK7P',\n        'DfnTB4z7eUvYRqcGtTpFsLC69o6tvBSC1pEv8vWPZFtCkaK',\n        'HnMAUz7r2G8G3hB27SYNyit5aJmh2a5P4eMdDtACtMFDbam',\n        'DE14BzQ1bDXWPKeLoAqdLAm1GpyAWaWF1knF74cEZeomTBM',\n    ];\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const chainAdminLimit = api.consts.nft.collectionAdminsLimit.toNumber();\n    expect(chainAdminLimit).to.be.equal(5);\n    for (let i = 0; i < chainAdminLimit; i++) {\n        const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(accounts[i]));\n        await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx);\n        const adminListAfterAddAdmin = (await api.query.nft.adminList(collectionId));\n        expect(adminListAfterAddAdmin).to.be.contains(helpers_1.normalizeAccountId(accounts[i]));\n    }\n    const tx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(accounts[chainAdminLimit]));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, tx)).to.be.rejected;\n});",382              "err": {},383              "uuid": "de058063-f5ef-43e7-9504-464decfd04e5",384              "parentUUID": null,385              "isHook": false,386              "skipped": true387            }388          ],389          "suites": [],390          "passes": [],391          "failures": [],392          "pending": [],393          "skipped": [394            "ccd1505b-6b0b-4472-8d2c-d3a67b729421",395            "0e3a766b-610e-479f-821f-6ec97d977002",396            "fe525657-ebd6-47b9-8970-3dafaff61f5f",397            "de058063-f5ef-43e7-9504-464decfd04e5"398          ],399          "duration": 0,400          "root": false,401          "rootEmpty": false,402          "_timeout": 9999999403        },404        {405          "uuid": "db675fb6-e2f8-42d5-b6bf-4bc5fd860e90",406          "title": "Integration Test addToContractWhiteList",407          "fullFile": "/nft_parachain/tests/src/addToContractWhiteList.test.ts",408          "file": "/src/addToContractWhiteList.test.ts",409          "beforeHooks": [],410          "afterHooks": [],411          "tests": [412            {413              "title": "Add an address to a contract white list",414              "fullTitle": "Integration Test addToContractWhiteList Add an address to a contract white list",415              "timedOut": false,416              "duration": 0,417              "state": null,418              "speed": null,419              "pass": false,420              "fail": false,421              "pending": true,422              "context": null,423              "code": "",424              "err": {},425              "uuid": "4d4e712f-9ce7-4906-9c7c-ac319a2e9da2",426              "parentUUID": null,427              "isHook": false,428              "skipped": false429            },430            {431              "title": "Adding same address to white list repeatedly should not produce errors",432              "fullTitle": "Integration Test addToContractWhiteList Adding same address to white list repeatedly should not produce errors",433              "timedOut": false,434              "duration": 0,435              "state": null,436              "speed": null,437              "pass": false,438              "fail": false,439              "pending": true,440              "context": null,441              "code": "",442              "err": {},443              "uuid": "22a2ad72-4361-493b-bc69-6b5974a42d50",444              "parentUUID": null,445              "isHook": false,446              "skipped": false447            }448          ],449          "suites": [],450          "passes": [],451          "failures": [],452          "pending": [453            "4d4e712f-9ce7-4906-9c7c-ac319a2e9da2",454            "22a2ad72-4361-493b-bc69-6b5974a42d50"455          ],456          "skipped": [],457          "duration": 0,458          "root": false,459          "rootEmpty": false,460          "_timeout": 9999999461        },462        {463          "uuid": "39f3396c-6bc9-4278-bb66-137f036c1025",464          "title": "Negative Integration Test addToContractWhiteList",465          "fullFile": "/nft_parachain/tests/src/addToContractWhiteList.test.ts",466          "file": "/src/addToContractWhiteList.test.ts",467          "beforeHooks": [],468          "afterHooks": [],469          "tests": [470            {471              "title": "Add an address to a white list of a non-contract",472              "fullTitle": "Negative Integration Test addToContractWhiteList Add an address to a white list of a non-contract",473              "timedOut": false,474              "duration": 0,475              "state": null,476              "speed": null,477              "pass": false,478              "fail": false,479              "pending": true,480              "context": null,481              "code": "",482              "err": {},483              "uuid": "11afd47c-355c-4dc3-91b7-49d462da2ee9",484              "parentUUID": null,485              "isHook": false,486              "skipped": false487            },488            {489              "title": "Add to a contract white list using a non-owner address",490              "fullTitle": "Negative Integration Test addToContractWhiteList Add to a contract white list using a non-owner address",491              "timedOut": false,492              "duration": 0,493              "state": null,494              "speed": null,495              "pass": false,496              "fail": false,497              "pending": true,498              "context": null,499              "code": "",500              "err": {},501              "uuid": "dc54f6a6-b79c-49c7-90cb-994667d80759",502              "parentUUID": null,503              "isHook": false,504              "skipped": false505            }506          ],507          "suites": [],508          "passes": [],509          "failures": [],510          "pending": [511            "11afd47c-355c-4dc3-91b7-49d462da2ee9",512            "dc54f6a6-b79c-49c7-90cb-994667d80759"513          ],514          "skipped": [],515          "duration": 0,516          "root": false,517          "rootEmpty": false,518          "_timeout": 9999999519        },520        {521          "uuid": "8e0432c7-b6de-4e10-a6d7-78f4ec63c23b",522          "title": "Integration Test ext. addToWhiteList()",523          "fullFile": "/nft_parachain/tests/src/addToWhiteList.test.ts",524          "file": "/src/addToWhiteList.test.ts",525          "beforeHooks": [526            {527              "title": "\"before all\" hook",528              "fullTitle": "Integration Test ext. addToWhiteList() \"before all\" hook",529              "timedOut": false,530              "duration": 0,531              "state": null,532              "speed": null,533              "pass": false,534              "fail": false,535              "pending": false,536              "context": null,537              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",538              "err": {},539              "uuid": "504f61a5-c065-474c-bfd9-50bb5e0e64ce",540              "parentUUID": null,541              "isHook": true,542              "skipped": false543            }544          ],545          "afterHooks": [],546          "tests": [547            {548              "title": "Execute the extrinsic with parameters: Collection ID and address to add to the white list",549              "fullTitle": "Integration Test ext. addToWhiteList() Execute the extrinsic with parameters: Collection ID and address to add to the white list",550              "timedOut": false,551              "duration": 0,552              "state": null,553              "speed": null,554              "pass": false,555              "fail": false,556              "pending": false,557              "context": null,558              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.addToWhiteListExpectSuccess(Alice, collectionId, Bob.address);",559              "err": {},560              "uuid": "f4af86bd-2445-483b-84af-9dd6d4e89caf",561              "parentUUID": null,562              "isHook": false,563              "skipped": true564            },565            {566              "title": "Whitelisted minting: list restrictions",567              "fullTitle": "Integration Test ext. addToWhiteList() Whitelisted minting: list restrictions",568              "timedOut": false,569              "duration": 0,570              "state": null,571              "speed": null,572              "pass": false,573              "fail": false,574              "pending": false,575              "context": null,576              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.addToWhiteListExpectSuccess(Alice, collectionId, Bob.address);\nawait helpers_1.enableWhiteListExpectSuccess(Alice, collectionId);\nawait helpers_1.enablePublicMintingExpectSuccess(Alice, collectionId);\nawait helpers_1.createItemExpectSuccess(Bob, collectionId, 'NFT', Bob.address);",577              "err": {},578              "uuid": "076d5bc5-61a5-49b3-8a8b-85d92ab5ea95",579              "parentUUID": null,580              "isHook": false,581              "skipped": true582            }583          ],584          "suites": [],585          "passes": [],586          "failures": [],587          "pending": [],588          "skipped": [589            "f4af86bd-2445-483b-84af-9dd6d4e89caf",590            "076d5bc5-61a5-49b3-8a8b-85d92ab5ea95"591          ],592          "duration": 0,593          "root": false,594          "rootEmpty": false,595          "_timeout": 9999999596        },597        {598          "uuid": "54048e5b-61d8-4202-957f-c39bf6ecf002",599          "title": "Negative Integration Test ext. addToWhiteList()",600          "fullFile": "/nft_parachain/tests/src/addToWhiteList.test.ts",601          "file": "/src/addToWhiteList.test.ts",602          "beforeHooks": [],603          "afterHooks": [],604          "tests": [605            {606              "title": "White list an address in the collection that does not exist",607              "fullTitle": "Negative Integration Test ext. addToWhiteList() White list an address in the collection that does not exist",608              "timedOut": false,609              "duration": 0,610              "state": null,611              "speed": null,612              "pass": false,613              "fail": false,614              "pending": false,615              "context": null,616              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n    const Bob = privateKey_1.default('//Bob');\n    const tx = api.tx.nft.addToWhiteList(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, tx)).to.be.rejected;\n});",617              "err": {},618              "uuid": "89dfc83d-b8ec-48ae-a23d-c254f74c457f",619              "parentUUID": null,620              "isHook": false,621              "skipped": true622            },623            {624              "title": "White list an address in the collection that was destroyed",625              "fullTitle": "Negative Integration Test ext. addToWhiteList() White list an address in the collection that was destroyed",626              "timedOut": false,627              "duration": 0,628              "state": null,629              "speed": null,630              "pass": false,631              "fail": false,632              "pending": false,633              "context": null,634              "code": "await substrate_api_1.default(async (api) => {\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n    const tx = api.tx.nft.addToWhiteList(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, tx)).to.be.rejected;\n});",635              "err": {},636              "uuid": "5cc79a66-b069-4e44-b20e-e8463e79d03b",637              "parentUUID": null,638              "isHook": false,639              "skipped": true640            },641            {642              "title": "White list an address in the collection that does not have white list access enabled",643              "fullTitle": "Negative Integration Test ext. addToWhiteList() White list an address in the collection that does not have white list access enabled",644              "timedOut": false,645              "duration": 0,646              "state": null,647              "speed": null,648              "pass": false,649              "fail": false,650              "pending": false,651              "context": null,652              "code": "await substrate_api_1.default(async (api) => {\n    const Alice = privateKey_1.default('//Alice');\n    const Ferdie = privateKey_1.default('//Ferdie');\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(Alice, collectionId);\n    await helpers_1.enablePublicMintingExpectSuccess(Alice, collectionId);\n    const tx = api.tx.nft.createItem(collectionId, helpers_1.normalizeAccountId(Ferdie.address), 'NFT');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Ferdie, tx)).to.be.rejected;\n});",653              "err": {},654              "uuid": "a2acbcac-3464-4de4-a649-bd39ab868fcf",655              "parentUUID": null,656              "isHook": false,657              "skipped": true658            }659          ],660          "suites": [],661          "passes": [],662          "failures": [],663          "pending": [],664          "skipped": [665            "89dfc83d-b8ec-48ae-a23d-c254f74c457f",666            "5cc79a66-b069-4e44-b20e-e8463e79d03b",667            "a2acbcac-3464-4de4-a649-bd39ab868fcf"668          ],669          "duration": 0,670          "root": false,671          "rootEmpty": false,672          "_timeout": 9999999673        },674        {675          "uuid": "17759d9b-3a02-47ec-aa3b-7538324dfde4",676          "title": "Integration Test ext. addToWhiteList() with collection admin permissions:",677          "fullFile": "/nft_parachain/tests/src/addToWhiteList.test.ts",678          "file": "/src/addToWhiteList.test.ts",679          "beforeHooks": [680            {681              "title": "\"before all\" hook",682              "fullTitle": "Integration Test ext. addToWhiteList() with collection admin permissions: \"before all\" hook",683              "timedOut": false,684              "duration": 0,685              "state": null,686              "speed": null,687              "pass": false,688              "fail": false,689              "pending": false,690              "context": null,691              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Charlie = privateKey_1.default('//Charlie');\n});",692              "err": {},693              "uuid": "39f215f2-a4da-40c8-a0cf-8f493363df97",694              "parentUUID": null,695              "isHook": true,696              "skipped": false697            }698          ],699          "afterHooks": [],700          "tests": [701            {702              "title": "Negative. Add to the white list by regular user",703              "fullTitle": "Integration Test ext. addToWhiteList() with collection admin permissions: Negative. Add to the white list by regular user",704              "timedOut": false,705              "duration": 0,706              "state": null,707              "speed": null,708              "pass": false,709              "fail": false,710              "pending": false,711              "context": null,712              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.addToWhiteListExpectFail(Bob, collectionId, Charlie.address);",713              "err": {},714              "uuid": "0fd4da7d-13aa-4c8a-abb3-a62baf1eea08",715              "parentUUID": null,716              "isHook": false,717              "skipped": true718            },719            {720              "title": "Execute the extrinsic with parameters: Collection ID and address to add to the white list",721              "fullTitle": "Integration Test ext. addToWhiteList() with collection admin permissions: Execute the extrinsic with parameters: Collection ID and address to add to the white list",722              "timedOut": false,723              "duration": 0,724              "state": null,725              "speed": null,726              "pass": false,727              "fail": false,728              "pending": false,729              "context": null,730              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\nawait helpers_1.addToWhiteListExpectSuccess(Bob, collectionId, Charlie.address);",731              "err": {},732              "uuid": "64da9424-a2a1-4e24-bb62-9ec2a35b4620",733              "parentUUID": null,734              "isHook": false,735              "skipped": true736            },737            {738              "title": "Whitelisted minting: list restrictions",739              "fullTitle": "Integration Test ext. addToWhiteList() with collection admin permissions: Whitelisted minting: list restrictions",740              "timedOut": false,741              "duration": 0,742              "state": null,743              "speed": null,744              "pass": false,745              "fail": false,746              "pending": false,747              "context": null,748              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\nawait helpers_1.addToWhiteListExpectSuccess(Bob, collectionId, Charlie.address);\n// allowed only for collection owner\nawait helpers_1.enableWhiteListExpectSuccess(Alice, collectionId);\nawait helpers_1.enablePublicMintingExpectSuccess(Alice, collectionId);\nawait helpers_1.createItemExpectSuccess(Charlie, collectionId, 'NFT', Charlie.address);",749              "err": {},750              "uuid": "f5983173-28be-48b5-833e-f0092fca2815",751              "parentUUID": null,752              "isHook": false,753              "skipped": true754            }755          ],756          "suites": [],757          "passes": [],758          "failures": [],759          "pending": [],760          "skipped": [761            "0fd4da7d-13aa-4c8a-abb3-a62baf1eea08",762            "64da9424-a2a1-4e24-bb62-9ec2a35b4620",763            "f5983173-28be-48b5-833e-f0092fca2815"764          ],765          "duration": 0,766          "root": false,767          "rootEmpty": false,768          "_timeout": 9999999769        },770        {771          "uuid": "7ff1c1ae-0522-4644-82a6-b8c8f61aac78",772          "title": "Integration Test approve(spender, collection_id, item_id, amount):",773          "fullFile": "/nft_parachain/tests/src/approve.test.ts",774          "file": "/src/approve.test.ts",775          "beforeHooks": [776            {777              "title": "\"before all\" hook",778              "fullTitle": "Integration Test approve(spender, collection_id, item_id, amount): \"before all\" hook",779              "timedOut": false,780              "duration": 0,781              "state": null,782              "speed": null,783              "pass": false,784              "fail": false,785              "pending": false,786              "context": null,787              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Charlie = privateKey_1.default('//Charlie');\n});",788              "err": {},789              "uuid": "8413cad1-b738-44b1-bc1e-894e8f250979",790              "parentUUID": null,791              "isHook": true,792              "skipped": false793            }794          ],795          "afterHooks": [],796          "tests": [797            {798              "title": "Execute the extrinsic and check approvedList",799              "fullTitle": "Integration Test approve(spender, collection_id, item_id, amount): Execute the extrinsic and check approvedList",800              "timedOut": false,801              "duration": 0,802              "state": null,803              "speed": null,804              "pass": false,805              "fail": false,806              "pending": false,807              "context": null,808              "code": "const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n// nft\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\nawait helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\nawait helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nconst newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\nawait helpers_1.approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);",809              "err": {},810              "uuid": "58f34661-b685-46a5-b2fb-d62adacb20b9",811              "parentUUID": null,812              "isHook": false,813              "skipped": true814            },815            {816              "title": "Remove approval by using 0 amount",817              "fullTitle": "Integration Test approve(spender, collection_id, item_id, amount): Remove approval by using 0 amount",818              "timedOut": false,819              "duration": 0,820              "state": null,821              "speed": null,822              "pass": false,823              "fail": false,824              "pending": false,825              "context": null,826              "code": "const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n// nft\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\nawait helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 1);\nawait helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 0);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\nawait helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 1);\nawait helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 0);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nconst newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\nawait helpers_1.approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 1);\nawait helpers_1.approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 0);",827              "err": {},828              "uuid": "b4a52671-3927-444e-b297-1e87fb6a1e59",829              "parentUUID": null,830              "isHook": false,831              "skipped": true832            },833            {834              "title": "can be called by collection owner on non-owned item when OwnerCanTransfer == true",835              "fullTitle": "Integration Test approve(spender, collection_id, item_id, amount): can be called by collection owner on non-owned item when OwnerCanTransfer == true",836              "timedOut": false,837              "duration": 0,838              "state": null,839              "speed": null,840              "pass": false,841              "fail": false,842              "pending": false,843              "context": null,844              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nconst itemId = await helpers_1.createItemExpectSuccess(Alice, collectionId, 'NFT', Bob.address);\nawait helpers_1.approveExpectSuccess(collectionId, itemId, Alice, Charlie);",845              "err": {},846              "uuid": "07b9ce52-ffaa-44ed-af6e-a22d034ab1aa",847              "parentUUID": null,848              "isHook": false,849              "skipped": true850            }851          ],852          "suites": [],853          "passes": [],854          "failures": [],855          "pending": [],856          "skipped": [857            "58f34661-b685-46a5-b2fb-d62adacb20b9",858            "b4a52671-3927-444e-b297-1e87fb6a1e59",859            "07b9ce52-ffaa-44ed-af6e-a22d034ab1aa"860          ],861          "duration": 0,862          "root": false,863          "rootEmpty": false,864          "_timeout": 9999999865        },866        {867          "uuid": "bbd0d378-525f-4ca7-b117-9811069d2768",868          "title": "Negative Integration Test approve(spender, collection_id, item_id, amount):",869          "fullFile": "/nft_parachain/tests/src/approve.test.ts",870          "file": "/src/approve.test.ts",871          "beforeHooks": [872            {873              "title": "\"before all\" hook",874              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): \"before all\" hook",875              "timedOut": false,876              "duration": 0,877              "state": null,878              "speed": null,879              "pass": false,880              "fail": false,881              "pending": false,882              "context": null,883              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Charlie = privateKey_1.default('//Charlie');\n});",884              "err": {},885              "uuid": "0e01d3cf-8db0-42a5-af2e-afea877962a8",886              "parentUUID": null,887              "isHook": true,888              "skipped": false889            }890          ],891          "afterHooks": [],892          "tests": [893            {894              "title": "Approve for a collection that does not exist",895              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): Approve for a collection that does not exist",896              "timedOut": false,897              "duration": 0,898              "state": null,899              "speed": null,900              "pass": false,901              "fail": false,902              "pending": false,903              "context": null,904              "code": "await substrate_api_1.default(async (api) => {\n    // nft\n    const nftCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.approveExpectFail(nftCollectionCount + 1, 1, Alice, Bob);\n    // fungible\n    const fungibleCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.approveExpectFail(fungibleCollectionCount + 1, 1, Alice, Bob);\n    // reFungible\n    const reFungibleCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.approveExpectFail(reFungibleCollectionCount + 1, 1, Alice, Bob);\n});",905              "err": {},906              "uuid": "57f2f5eb-c881-4963-8d9d-379b5cd553f0",907              "parentUUID": null,908              "isHook": false,909              "skipped": true910            },911            {912              "title": "Approve for a collection that was destroyed",913              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): Approve for a collection that was destroyed",914              "timedOut": false,915              "duration": 0,916              "state": null,917              "speed": null,918              "pass": false,919              "fail": false,920              "pending": false,921              "context": null,922              "code": "// nft\nconst nftCollectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.destroyCollectionExpectSuccess(nftCollectionId);\nawait helpers_1.approveExpectFail(nftCollectionId, 1, Alice, Bob);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.destroyCollectionExpectSuccess(fungibleCollectionId);\nawait helpers_1.approveExpectFail(fungibleCollectionId, 1, Alice, Bob);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nawait helpers_1.destroyCollectionExpectSuccess(reFungibleCollectionId);\nawait helpers_1.approveExpectFail(reFungibleCollectionId, 1, Alice, Bob);",923              "err": {},924              "uuid": "38827096-3e94-4bcc-be0c-3b7c3ba7d69d",925              "parentUUID": null,926              "isHook": false,927              "skipped": true928            },929            {930              "title": "Approve transfer of a token that does not exist",931              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): Approve transfer of a token that does not exist",932              "timedOut": false,933              "duration": 0,934              "state": null,935              "speed": null,936              "pass": false,937              "fail": false,938              "pending": false,939              "context": null,940              "code": "// nft\nconst nftCollectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.approveExpectFail(nftCollectionId, 2, Alice, Bob);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nawait helpers_1.approveExpectFail(reFungibleCollectionId, 2, Alice, Bob);",941              "err": {},942              "uuid": "ad56e131-a17c-41e6-b1e2-63802f3ed386",943              "parentUUID": null,944              "isHook": false,945              "skipped": true946            },947            {948              "title": "Approve using the address that does not own the approved token",949              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): Approve using the address that does not own the approved token",950              "timedOut": false,951              "duration": 0,952              "state": null,953              "speed": null,954              "pass": false,955              "fail": false,956              "pending": false,957              "context": null,958              "code": "const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n// nft\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\nawait helpers_1.approveExpectFail(nftCollectionId, newNftTokenId, Bob, Alice);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\nawait helpers_1.approveExpectFail(fungibleCollectionId, newFungibleTokenId, Bob, Alice);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nconst newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\nawait helpers_1.approveExpectFail(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice);",959              "err": {},960              "uuid": "b4820ad0-7f0e-4ec6-8aeb-e8ce85421337",961              "parentUUID": null,962              "isHook": false,963              "skipped": true964            },965            {966              "title": "should fail if approved more NFTs than owned",967              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): should fail if approved more NFTs than owned",968              "timedOut": false,969              "duration": 0,970              "state": null,971              "speed": null,972              "pass": false,973              "fail": false,974              "pending": false,975              "context": null,976              "code": "const nftCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\nawait helpers_1.transferExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 1, 'NFT');\nawait helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Bob, Alice);\nawait helpers_1.approveExpectFail(nftCollectionId, newNftTokenId, Bob, Alice);",977              "err": {},978              "uuid": "8c124180-e9e6-400d-b8c2-c2c7d8fbb8fb",979              "parentUUID": null,980              "isHook": false,981              "skipped": true982            },983            {984              "title": "should fail if approved more ReFungibles than owned",985              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): should fail if approved more ReFungibles than owned",986              "timedOut": false,987              "duration": 0,988              "state": null,989              "speed": null,990              "pass": false,991              "fail": false,992              "pending": false,993              "context": null,994              "code": "const nftCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'ReFungible');\nawait helpers_1.transferExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 100, 'ReFungible');\nawait helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Bob, Alice, 100);\nawait helpers_1.approveExpectFail(nftCollectionId, newNftTokenId, Bob, Alice, 1);",995              "err": {},996              "uuid": "68f5b592-5b15-483b-93bf-2eaf69c9852c",997              "parentUUID": null,998              "isHook": false,999              "skipped": true1000            },1001            {1002              "title": "should fail if approved more Fungibles than owned",1003              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): should fail if approved more Fungibles than owned",1004              "timedOut": false,1005              "duration": 0,1006              "state": null,1007              "speed": null,1008              "pass": false,1009              "fail": false,1010              "pending": false,1011              "context": null,1012              "code": "const nftCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'Fungible');\nawait helpers_1.transferExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 10, 'Fungible');\nawait helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Bob, Alice, 10);\nawait helpers_1.approveExpectFail(nftCollectionId, newNftTokenId, Bob, Alice, 1);",1013              "err": {},1014              "uuid": "791a84c5-527a-416d-b3df-ff271c2e1b06",1015              "parentUUID": null,1016              "isHook": false,1017              "skipped": true1018            },1019            {1020              "title": "fails when called by collection owner on non-owned item when OwnerCanTransfer == false",1021              "fullTitle": "Negative Integration Test approve(spender, collection_id, item_id, amount): fails when called by collection owner on non-owned item when OwnerCanTransfer == false",1022              "timedOut": false,1023              "duration": 0,1024              "state": null,1025              "speed": null,1026              "pass": false,1027              "fail": false,1028              "pending": false,1029              "context": null,1030              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nconst itemId = await helpers_1.createItemExpectSuccess(Alice, collectionId, 'NFT', Bob.address);\nawait helpers_1.setCollectionLimitsExpectSuccess(Alice, collectionId, { OwnerCanTransfer: false });\nawait helpers_1.approveExpectFail(collectionId, itemId, Alice, Charlie);",1031              "err": {},1032              "uuid": "4f9a097e-535d-4a36-9373-245ee1a86171",1033              "parentUUID": null,1034              "isHook": false,1035              "skipped": true1036            }1037          ],1038          "suites": [],1039          "passes": [],1040          "failures": [],1041          "pending": [],1042          "skipped": [1043            "57f2f5eb-c881-4963-8d9d-379b5cd553f0",1044            "38827096-3e94-4bcc-be0c-3b7c3ba7d69d",1045            "ad56e131-a17c-41e6-b1e2-63802f3ed386",1046            "b4820ad0-7f0e-4ec6-8aeb-e8ce85421337",1047            "8c124180-e9e6-400d-b8c2-c2c7d8fbb8fb",1048            "68f5b592-5b15-483b-93bf-2eaf69c9852c",1049            "791a84c5-527a-416d-b3df-ff271c2e1b06",1050            "4f9a097e-535d-4a36-9373-245ee1a86171"1051          ],1052          "duration": 0,1053          "root": false,1054          "rootEmpty": false,1055          "_timeout": 99999991056        },1057        {1058          "uuid": "ffbd7ce9-1b21-4083-814b-9c633c3f15bb",1059          "title": "Integration Test approve(spender, collection_id, item_id, amount) with collection admin permissions:",1060          "fullFile": "/nft_parachain/tests/src/approve.test.ts",1061          "file": "/src/approve.test.ts",1062          "beforeHooks": [1063            {1064              "title": "\"before all\" hook",1065              "fullTitle": "Integration Test approve(spender, collection_id, item_id, amount) with collection admin permissions: \"before all\" hook",1066              "timedOut": false,1067              "duration": 0,1068              "state": null,1069              "speed": null,1070              "pass": false,1071              "fail": false,1072              "pending": false,1073              "context": null,1074              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Charlie = privateKey_1.default('//Charlie');\n});",1075              "err": {},1076              "uuid": "6a7aa23b-1aae-4eac-88d9-26472e020fd3",1077              "parentUUID": null,1078              "isHook": true,1079              "skipped": false1080            }1081          ],1082          "afterHooks": [],1083          "tests": [1084            {1085              "title": "can be called by collection admin on non-owned item",1086              "fullTitle": "Integration Test approve(spender, collection_id, item_id, amount) with collection admin permissions: can be called by collection admin on non-owned item",1087              "timedOut": false,1088              "duration": 0,1089              "state": null,1090              "speed": null,1091              "pass": false,1092              "fail": false,1093              "pending": false,1094              "context": null,1095              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nconst itemId = await helpers_1.createItemExpectSuccess(Alice, collectionId, 'NFT', Alice.address);\nawait helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\nawait helpers_1.approveExpectSuccess(collectionId, itemId, Bob, Charlie);",1096              "err": {},1097              "uuid": "a31ccf62-8920-4e14-9b8d-bc74a0ca7566",1098              "parentUUID": null,1099              "isHook": false,1100              "skipped": true1101            }1102          ],1103          "suites": [],1104          "passes": [],1105          "failures": [],1106          "pending": [],1107          "skipped": [1108            "a31ccf62-8920-4e14-9b8d-bc74a0ca7566"1109          ],1110          "duration": 0,1111          "root": false,1112          "rootEmpty": false,1113          "_timeout": 99999991114        },1115        {1116          "uuid": "4d1d3346-8d28-4bd0-98d0-d2a6cac5608b",1117          "title": "Block Production smoke test",1118          "fullFile": "/nft_parachain/tests/src/block-production.test.ts",1119          "file": "/src/block-production.test.ts",1120          "beforeHooks": [],1121          "afterHooks": [],1122          "tests": [1123            {1124              "title": "Node produces new blocks",1125              "fullTitle": "Block Production smoke test Node produces new blocks",1126              "timedOut": false,1127              "duration": 0,1128              "state": null,1129              "speed": null,1130              "pass": false,1131              "fail": false,1132              "pending": false,1133              "context": null,1134              "code": "await substrate_api_1.default(async (api) => {\n    const blocks = await getBlocks(api);\n    chai_1.expect(blocks[0]).to.be.lessThan(blocks[1]);\n});",1135              "err": {},1136              "uuid": "44b68326-4b05-4eeb-beca-5994a2bec2fd",1137              "parentUUID": null,1138              "isHook": false,1139              "skipped": true1140            }1141          ],1142          "suites": [],1143          "passes": [],1144          "failures": [],1145          "pending": [],1146          "skipped": [1147            "44b68326-4b05-4eeb-beca-5994a2bec2fd"1148          ],1149          "duration": 0,1150          "root": false,1151          "rootEmpty": false,1152          "_timeout": 99999991153        },1154        {1155          "uuid": "31630dc0-1bc3-4608-9307-b6efb62d0b57",1156          "title": "integration test: ext. burnItem():",1157          "fullFile": "/nft_parachain/tests/src/burnItem.test.ts",1158          "file": "/src/burnItem.test.ts",1159          "beforeHooks": [1160            {1161              "title": "\"before all\" hook",1162              "fullTitle": "integration test: ext. burnItem(): \"before all\" hook",1163              "timedOut": false,1164              "duration": 0,1165              "state": null,1166              "speed": null,1167              "pass": false,1168              "fail": false,1169              "pending": false,1170              "context": null,1171              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",1172              "err": {},1173              "uuid": "106d90d4-57ff-46c4-8870-1c7fd149c0ab",1174              "parentUUID": null,1175              "isHook": true,1176              "skipped": false1177            }1178          ],1179          "afterHooks": [],1180          "tests": [1181            {1182              "title": "Burn item in NFT collection",1183              "fullTitle": "integration test: ext. burnItem(): Burn item in NFT collection",1184              "timedOut": false,1185              "duration": 0,1186              "state": null,1187              "speed": null,1188              "pass": false,1189              "fail": false,1190              "pending": false,1191              "context": null,1192              "code": "const createMode = 'NFT';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nawait substrate_api_1.default(async (api) => {\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 0);\n    const events = await substrate_api_1.submitTransactionAsync(alice, tx);\n    const result = helpers_1.getGenericResult(events);\n    // Get the item\n    const item = (await api.query.nft.nftItemList(collectionId, tokenId)).toJSON();\n    // What to expect\n    // tslint:disable-next-line:no-unused-expression\n    expect(result.success).to.be.true;\n    // tslint:disable-next-line:no-unused-expression\n    expect(item).to.be.null;\n});",1193              "err": {},1194              "uuid": "db281de7-6da6-4d2d-9005-21e20a011fc2",1195              "parentUUID": null,1196              "isHook": false,1197              "skipped": true1198            },1199            {1200              "title": "Burn item in Fungible collection",1201              "fullTitle": "integration test: ext. burnItem(): Burn item in Fungible collection",1202              "timedOut": false,1203              "duration": 0,1204              "state": null,1205              "speed": null,1206              "pass": false,1207              "fail": false,1208              "pending": false,1209              "context": null,1210              "code": "const createMode = 'Fungible';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode, decimalPoints: 0 } });\nawait helpers_1.createItemExpectSuccess(alice, collectionId, createMode); // Helper creates 10 fungible tokens\nconst tokenId = 0; // ignored\nawait substrate_api_1.default(async (api) => {\n    // Destroy 1 of 10\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 1);\n    const events = await substrate_api_1.submitTransactionAsync(alice, tx);\n    const result = helpers_1.getGenericResult(events);\n    // Get alice balance \n    const balance = (await api.query.nft.fungibleItemList(collectionId, alice.address)).toJSON();\n    // What to expect\n    expect(result.success).to.be.true;\n    expect(balance).to.be.not.null;\n    expect(balance.Value).to.be.equal(9);\n});",1211              "err": {},1212              "uuid": "dcfdcd23-ef39-4a88-9bf1-74de618d7535",1213              "parentUUID": null,1214              "isHook": false,1215              "skipped": true1216            },1217            {1218              "title": "Burn item in ReFungible collection",1219              "fullTitle": "integration test: ext. burnItem(): Burn item in ReFungible collection",1220              "timedOut": false,1221              "duration": 0,1222              "state": null,1223              "speed": null,1224              "pass": false,1225              "fail": false,1226              "pending": false,1227              "context": null,1228              "code": "const createMode = 'ReFungible';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nawait substrate_api_1.default(async (api) => {\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 1);\n    const events = await substrate_api_1.submitTransactionAsync(alice, tx);\n    const result = helpers_1.getGenericResult(events);\n    // Get alice balance \n    const balance = (await api.query.nft.reFungibleItemList(collectionId, tokenId)).toJSON();\n    // What to expect\n    expect(result.success).to.be.true;\n    expect(balance).to.be.null;\n});",1229              "err": {},1230              "uuid": "30dfae18-db02-458d-91da-cd9ca371dabf",1231              "parentUUID": null,1232              "isHook": false,1233              "skipped": true1234            },1235            {1236              "title": "Burn owned portion of item in ReFungible collection",1237              "fullTitle": "integration test: ext. burnItem(): Burn owned portion of item in ReFungible collection",1238              "timedOut": false,1239              "duration": 0,1240              "state": null,1241              "speed": null,1242              "pass": false,1243              "fail": false,1244              "pending": false,1245              "context": null,1246              "code": "const createMode = 'ReFungible';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nawait substrate_api_1.default(async (api) => {\n    // Transfer 1/100 of the token to Bob\n    const transfertx = api.tx.nft.transfer(helpers_1.normalizeAccountId(bob.address), collectionId, tokenId, 1);\n    const events1 = await substrate_api_1.submitTransactionAsync(alice, transfertx);\n    const result1 = helpers_1.getGenericResult(events1);\n    // Get balances\n    const balanceBefore = (await api.query.nft.reFungibleItemList(collectionId, tokenId)).toJSON();\n    // Bob burns his portion\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 0);\n    const events2 = await substrate_api_1.submitTransactionAsync(bob, tx);\n    const result2 = helpers_1.getGenericResult(events2);\n    // Get balances \n    const balance = (await api.query.nft.reFungibleItemList(collectionId, tokenId)).toJSON();\n    // console.log(balance);\n    // What to expect before burning\n    expect(result1.success).to.be.true;\n    expect(balanceBefore).to.be.not.null;\n    expect(balanceBefore.Owner.length).to.be.equal(2);\n    expect(balanceBefore.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(alice.address));\n    expect(balanceBefore.Owner[0].Fraction).to.be.equal(99);\n    expect(balanceBefore.Owner[1].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(bob.address));\n    expect(balanceBefore.Owner[1].Fraction).to.be.equal(1);\n    // What to expect after burning\n    expect(result2.success).to.be.true;\n    expect(balance).to.be.not.null;\n    expect(balance.Owner.length).to.be.equal(1);\n    expect(balance.Owner[0].Fraction).to.be.equal(99);\n    expect(balance.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(alice.address));\n});",1247              "err": {},1248              "uuid": "fb1160e0-cf9c-4e27-96c2-353e01a09422",1249              "parentUUID": null,1250              "isHook": false,1251              "skipped": true1252            }1253          ],1254          "suites": [],1255          "passes": [],1256          "failures": [],1257          "pending": [],1258          "skipped": [1259            "db281de7-6da6-4d2d-9005-21e20a011fc2",1260            "dcfdcd23-ef39-4a88-9bf1-74de618d7535",1261            "30dfae18-db02-458d-91da-cd9ca371dabf",1262            "fb1160e0-cf9c-4e27-96c2-353e01a09422"1263          ],1264          "duration": 0,1265          "root": false,1266          "rootEmpty": false,1267          "_timeout": 99999991268        },1269        {1270          "uuid": "16273f03-1dd5-4058-a84a-cc4d6aa4832c",1271          "title": "integration test: ext. burnItem() with admin permissions:",1272          "fullFile": "/nft_parachain/tests/src/burnItem.test.ts",1273          "file": "/src/burnItem.test.ts",1274          "beforeHooks": [1275            {1276              "title": "\"before all\" hook",1277              "fullTitle": "integration test: ext. burnItem() with admin permissions: \"before all\" hook",1278              "timedOut": false,1279              "duration": 0,1280              "state": null,1281              "speed": null,1282              "pass": false,1283              "fail": false,1284              "pending": false,1285              "context": null,1286              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",1287              "err": {},1288              "uuid": "97633032-cfa2-424d-a9fd-74b7e9758ddd",1289              "parentUUID": null,1290              "isHook": true,1291              "skipped": false1292            }1293          ],1294          "afterHooks": [],1295          "tests": [1296            {1297              "title": "Burn item in NFT collection",1298              "fullTitle": "integration test: ext. burnItem() with admin permissions: Burn item in NFT collection",1299              "timedOut": false,1300              "duration": 0,1301              "state": null,1302              "speed": null,1303              "pass": false,1304              "fail": false,1305              "pending": false,1306              "context": null,1307              "code": "const createMode = 'NFT';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nawait helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\nawait substrate_api_1.default(async (api) => {\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 0);\n    const events = await substrate_api_1.submitTransactionAsync(bob, tx);\n    const result = helpers_1.getGenericResult(events);\n    // Get the item\n    const item = (await api.query.nft.nftItemList(collectionId, tokenId)).toJSON();\n    // What to expect\n    // tslint:disable-next-line:no-unused-expression\n    expect(result.success).to.be.true;\n    // tslint:disable-next-line:no-unused-expression\n    expect(item).to.be.null;\n});",1308              "err": {},1309              "uuid": "b1fc4b6a-2a91-4fe7-b286-47e8aa974059",1310              "parentUUID": null,1311              "isHook": false,1312              "skipped": true1313            }1314          ],1315          "suites": [],1316          "passes": [],1317          "failures": [],1318          "pending": [],1319          "skipped": [1320            "b1fc4b6a-2a91-4fe7-b286-47e8aa974059"1321          ],1322          "duration": 0,1323          "root": false,1324          "rootEmpty": false,1325          "_timeout": 99999991326        },1327        {1328          "uuid": "452f3792-5d1a-4859-a360-cfffe0b60deb",1329          "title": "Negative integration test: ext. burnItem():",1330          "fullFile": "/nft_parachain/tests/src/burnItem.test.ts",1331          "file": "/src/burnItem.test.ts",1332          "beforeHooks": [1333            {1334              "title": "\"before all\" hook",1335              "fullTitle": "Negative integration test: ext. burnItem(): \"before all\" hook",1336              "timedOut": false,1337              "duration": 0,1338              "state": null,1339              "speed": null,1340              "pass": false,1341              "fail": false,1342              "pending": false,1343              "context": null,1344              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",1345              "err": {},1346              "uuid": "069a8925-8f20-4ec3-9704-f3150eda6653",1347              "parentUUID": null,1348              "isHook": true,1349              "skipped": false1350            }1351          ],1352          "afterHooks": [],1353          "tests": [1354            {1355              "title": "Burn a token in a destroyed collection",1356              "fullTitle": "Negative integration test: ext. burnItem(): Burn a token in a destroyed collection",1357              "timedOut": false,1358              "duration": 0,1359              "state": null,1360              "speed": null,1361              "pass": false,1362              "fail": false,1363              "pending": false,1364              "context": null,1365              "code": "const createMode = 'NFT';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);\nawait substrate_api_1.default(async (api) => {\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 0);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(alice, tx);\n    };\n    await expect(badTransaction()).to.be.rejected;\n});",1366              "err": {},1367              "uuid": "80c1a171-453f-4a6c-8b50-dd960a40599f",1368              "parentUUID": null,1369              "isHook": false,1370              "skipped": true1371            },1372            {1373              "title": "Burn a token that was never created",1374              "fullTitle": "Negative integration test: ext. burnItem(): Burn a token that was never created",1375              "timedOut": false,1376              "duration": 0,1377              "state": null,1378              "speed": null,1379              "pass": false,1380              "fail": false,1381              "pending": false,1382              "context": null,1383              "code": "const createMode = 'NFT';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = 10;\nawait substrate_api_1.default(async (api) => {\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 0);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(alice, tx);\n    };\n    await expect(badTransaction()).to.be.rejected;\n});",1384              "err": {},1385              "uuid": "316a7d3b-76ac-43e5-af33-fc3be17131b6",1386              "parentUUID": null,1387              "isHook": false,1388              "skipped": true1389            },1390            {1391              "title": "Burn a token using the address that does not own it",1392              "fullTitle": "Negative integration test: ext. burnItem(): Burn a token using the address that does not own it",1393              "timedOut": false,1394              "duration": 0,1395              "state": null,1396              "speed": null,1397              "pass": false,1398              "fail": false,1399              "pending": false,1400              "context": null,1401              "code": "const createMode = 'NFT';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nawait substrate_api_1.default(async (api) => {\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 0);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(bob, tx);\n    };\n    await expect(badTransaction()).to.be.rejected;\n});",1402              "err": {},1403              "uuid": "91f485b0-7d62-4170-b47e-a4e982a2ff55",1404              "parentUUID": null,1405              "isHook": false,1406              "skipped": true1407            },1408            {1409              "title": "Transfer a burned a token",1410              "fullTitle": "Negative integration test: ext. burnItem(): Transfer a burned a token",1411              "timedOut": false,1412              "duration": 0,1413              "state": null,1414              "speed": null,1415              "pass": false,1416              "fail": false,1417              "pending": false,1418              "context": null,1419              "code": "const createMode = 'NFT';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nconst tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nawait substrate_api_1.default(async (api) => {\n    const burntx = api.tx.nft.burnItem(collectionId, tokenId, 0);\n    const events1 = await substrate_api_1.submitTransactionAsync(alice, burntx);\n    const result1 = helpers_1.getGenericResult(events1);\n    expect(result1.success).to.be.true;\n    const tx = api.tx.nft.transfer(helpers_1.normalizeAccountId(bob.address), collectionId, tokenId, 0);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(alice, tx);\n    };\n    await expect(badTransaction()).to.be.rejected;\n});",1420              "err": {},1421              "uuid": "2ddeae42-6371-40cf-be36-54a3c3ae2b61",1422              "parentUUID": null,1423              "isHook": false,1424              "skipped": true1425            },1426            {1427              "title": "Burn more than owned in Fungible collection",1428              "fullTitle": "Negative integration test: ext. burnItem(): Burn more than owned in Fungible collection",1429              "timedOut": false,1430              "duration": 0,1431              "state": null,1432              "speed": null,1433              "pass": false,1434              "fail": false,1435              "pending": false,1436              "context": null,1437              "code": "const createMode = 'Fungible';\nconst collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode, decimalPoints: 0 } });\n// Helper creates 10 fungible tokens\nawait helpers_1.createItemExpectSuccess(alice, collectionId, createMode);\nconst tokenId = 0; // ignored\nawait substrate_api_1.default(async (api) => {\n    // Destroy 11 of 10\n    const tx = api.tx.nft.burnItem(collectionId, tokenId, 11);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(alice, tx);\n    };\n    await expect(badTransaction()).to.be.rejected;\n    // Get alice balance \n    const balance = (await api.query.nft.fungibleItemList(collectionId, alice.address)).toJSON();\n    // What to expect\n    expect(balance).to.be.not.null;\n    expect(balance.Value).to.be.equal(10);\n});",1438              "err": {},1439              "uuid": "331fa2e2-1474-43f8-9e0d-fec071119639",1440              "parentUUID": null,1441              "isHook": false,1442              "skipped": true1443            }1444          ],1445          "suites": [],1446          "passes": [],1447          "failures": [],1448          "pending": [],1449          "skipped": [1450            "80c1a171-453f-4a6c-8b50-dd960a40599f",1451            "316a7d3b-76ac-43e5-af33-fc3be17131b6",1452            "91f485b0-7d62-4170-b47e-a4e982a2ff55",1453            "2ddeae42-6371-40cf-be36-54a3c3ae2b61",1454            "331fa2e2-1474-43f8-9e0d-fec071119639"1455          ],1456          "duration": 0,1457          "root": false,1458          "rootEmpty": false,1459          "_timeout": 99999991460        },1461        {1462          "uuid": "d9f0d67b-bfca-4457-958a-3ef539b093ca",1463          "title": "Integration Test changeCollectionOwner(collection_id, new_owner):",1464          "fullFile": "/nft_parachain/tests/src/change-collection-owner.test.ts",1465          "file": "/src/change-collection-owner.test.ts",1466          "beforeHooks": [],1467          "afterHooks": [],1468          "tests": [1469            {1470              "title": "Changing owner changes owner address",1471              "fullTitle": "Integration Test changeCollectionOwner(collection_id, new_owner): Changing owner changes owner address",1472              "timedOut": false,1473              "duration": 0,1474              "state": null,1475              "speed": null,1476              "pass": false,1477              "fail": false,1478              "pending": false,1479              "context": null,1480              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.deep.eq(alice.address);\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await substrate_api_1.submitTransactionAsync(alice, changeOwnerTx);\n    const collectionAfterOwnerChange = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange.Owner).to.be.deep.eq(bob.address);\n});",1481              "err": {},1482              "uuid": "106c78ce-05ec-4455-bdac-c3ce51f7f62e",1483              "parentUUID": null,1484              "isHook": false,1485              "skipped": true1486            }1487          ],1488          "suites": [],1489          "passes": [],1490          "failures": [],1491          "pending": [],1492          "skipped": [1493            "106c78ce-05ec-4455-bdac-c3ce51f7f62e"1494          ],1495          "duration": 0,1496          "root": false,1497          "rootEmpty": false,1498          "_timeout": 99999991499        },1500        {1501          "uuid": "b0dfc56e-2c7e-4909-a8cd-3def915d0e8a",1502          "title": "Integration Test changeCollectionOwner(collection_id, new_owner) special checks for exOwner:",1503          "fullFile": "/nft_parachain/tests/src/change-collection-owner.test.ts",1504          "file": "/src/change-collection-owner.test.ts",1505          "beforeHooks": [],1506          "afterHooks": [],1507          "tests": [1508            {1509              "title": "Changing the owner of the collection is not allowed for the former owner",1510              "fullTitle": "Integration Test changeCollectionOwner(collection_id, new_owner) special checks for exOwner: Changing the owner of the collection is not allowed for the former owner",1511              "timedOut": false,1512              "duration": 0,1513              "state": null,1514              "speed": null,1515              "pass": false,1516              "fail": false,1517              "pending": false,1518              "context": null,1519              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.deep.eq(alice.address);\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await substrate_api_1.submitTransactionAsync(alice, changeOwnerTx);\n    const badChangeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, alice.address);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, badChangeOwnerTx)).to.be.rejected;\n    const collectionAfterOwnerChange = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange.Owner).to.be.deep.eq(bob.address);\n});",1520              "err": {},1521              "uuid": "f8e8a3fc-cb38-4a7b-972e-c228ecfc7a55",1522              "parentUUID": null,1523              "isHook": false,1524              "skipped": true1525            },1526            {1527              "title": "New collectionOwner has access to sponsorship management operations in the collection",1528              "fullTitle": "Integration Test changeCollectionOwner(collection_id, new_owner) special checks for exOwner: New collectionOwner has access to sponsorship management operations in the collection",1529              "timedOut": false,1530              "duration": 0,1531              "state": null,1532              "speed": null,1533              "pass": false,1534              "fail": false,1535              "pending": false,1536              "context": null,1537              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const charlie = privateKey_1.default('//Charlie');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.deep.eq(alice.address);\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await substrate_api_1.submitTransactionAsync(alice, changeOwnerTx);\n    const collectionAfterOwnerChange = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange.Owner).to.be.deep.eq(bob.address);\n    // After changing the owner of the collection, all privileged methods are available to the new owner\n    // The new owner of the collection has access to sponsorship management operations in the collection\n    await helpers_1.setCollectionSponsorExpectSuccess(collectionId, charlie.address, '//Bob');\n    await helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Charlie');\n    await helpers_1.removeCollectionSponsorExpectSuccess(collectionId, '//Bob');\n    // The new owner of the collection has access to operations for managing the collection parameters\n    const collectionLimits = {\n        AccountTokenOwnershipLimit: 1,\n        SponsoredMintSize: 1,\n        TokenLimit: 1,\n        SponsorTimeout: 1,\n        OwnerCanTransfer: true,\n        OwnerCanDestroy: true,\n    };\n    const tx1 = api.tx.nft.setCollectionLimits(collectionId, collectionLimits);\n    await substrate_api_1.submitTransactionAsync(bob, tx1);\n    await helpers_1.setPublicAccessModeExpectSuccess(bob, collectionId, 'WhiteList');\n    await helpers_1.enableWhiteListExpectSuccess(bob, collectionId);\n    await helpers_1.setMintPermissionExpectSuccess(bob, collectionId, true);\n    await helpers_1.destroyCollectionExpectSuccess(collectionId, '//Bob');\n});",1538              "err": {},1539              "uuid": "605404fb-8e36-4370-9f2f-658f09fb8e40",1540              "parentUUID": null,1541              "isHook": false,1542              "skipped": true1543            },1544            {1545              "title": "New collectionOwner has access to changeCollectionOwner",1546              "fullTitle": "Integration Test changeCollectionOwner(collection_id, new_owner) special checks for exOwner: New collectionOwner has access to changeCollectionOwner",1547              "timedOut": false,1548              "duration": 0,1549              "state": null,1550              "speed": null,1551              "pass": false,1552              "fail": false,1553              "pending": false,1554              "context": null,1555              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const charlie = privateKey_1.default('//Charlie');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.deep.eq(alice.address);\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await substrate_api_1.submitTransactionAsync(alice, changeOwnerTx);\n    const collectionAfterOwnerChange = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange.Owner).to.be.deep.eq(bob.address);\n    const changeOwnerTx2 = api.tx.nft.changeCollectionOwner(collectionId, charlie.address);\n    await substrate_api_1.submitTransactionAsync(bob, changeOwnerTx2);\n    // ownership lost\n    const collectionAfterOwnerChange2 = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange2.Owner).to.be.deep.eq(charlie.address);\n});",1556              "err": {},1557              "uuid": "cfe9d4c1-0a65-4aea-94a6-90c097e01279",1558              "parentUUID": null,1559              "isHook": false,1560              "skipped": true1561            }1562          ],1563          "suites": [],1564          "passes": [],1565          "failures": [],1566          "pending": [],1567          "skipped": [1568            "f8e8a3fc-cb38-4a7b-972e-c228ecfc7a55",1569            "605404fb-8e36-4370-9f2f-658f09fb8e40",1570            "cfe9d4c1-0a65-4aea-94a6-90c097e01279"1571          ],1572          "duration": 0,1573          "root": false,1574          "rootEmpty": false,1575          "_timeout": 99999991576        },1577        {1578          "uuid": "95795b78-4a0b-4ce1-aabd-b1bebb9b68b7",1579          "title": "Negative Integration Test changeCollectionOwner(collection_id, new_owner):",1580          "fullFile": "/nft_parachain/tests/src/change-collection-owner.test.ts",1581          "file": "/src/change-collection-owner.test.ts",1582          "beforeHooks": [],1583          "afterHooks": [],1584          "tests": [1585            {1586              "title": "Not owner can't change owner.",1587              "fullTitle": "Negative Integration Test changeCollectionOwner(collection_id, new_owner): Not owner can't change owner.",1588              "timedOut": false,1589              "duration": 0,1590              "state": null,1591              "speed": null,1592              "pass": false,1593              "fail": false,1594              "pending": false,1595              "context": null,1596              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(bob, changeOwnerTx)).to.be.rejected;\n    const collectionAfterOwnerChange = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange.Owner).to.be.deep.eq(alice.address);\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",1597              "err": {},1598              "uuid": "50601940-15a6-43fd-8e69-e9f15b4cd27b",1599              "parentUUID": null,1600              "isHook": false,1601              "skipped": true1602            },1603            {1604              "title": "Collection admin can't change owner.",1605              "fullTitle": "Negative Integration Test changeCollectionOwner(collection_id, new_owner): Collection admin can't change owner.",1606              "timedOut": false,1607              "duration": 0,1608              "state": null,1609              "speed": null,1610              "pass": false,1611              "fail": false,1612              "pending": false,1613              "context": null,1614              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    await helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(bob, changeOwnerTx)).to.be.rejected;\n    const collectionAfterOwnerChange = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange.Owner).to.be.deep.eq(alice.address);\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",1615              "err": {},1616              "uuid": "0dfe81ed-ad93-4968-93aa-c0611841e925",1617              "parentUUID": null,1618              "isHook": false,1619              "skipped": true1620            },1621            {1622              "title": "Can't change owner of a non-existing collection.",1623              "fullTitle": "Negative Integration Test changeCollectionOwner(collection_id, new_owner): Can't change owner of a non-existing collection.",1624              "timedOut": false,1625              "duration": 0,1626              "state": null,1627              "speed": null,1628              "pass": false,1629              "fail": false,1630              "pending": false,1631              "context": null,1632              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = (1 << 32) - 1;\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, changeOwnerTx)).to.be.rejected;\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",1633              "err": {},1634              "uuid": "a503acea-f020-48f7-babe-7b35dbe8b5e4",1635              "parentUUID": null,1636              "isHook": false,1637              "skipped": true1638            },1639            {1640              "title": "Former collectionOwner not allowed to sponsorship management operations in the collection",1641              "fullTitle": "Negative Integration Test changeCollectionOwner(collection_id, new_owner): Former collectionOwner not allowed to sponsorship management operations in the collection",1642              "timedOut": false,1643              "duration": 0,1644              "state": null,1645              "speed": null,1646              "pass": false,1647              "fail": false,1648              "pending": false,1649              "context": null,1650              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const charlie = privateKey_1.default('//Charlie');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.deep.eq(alice.address);\n    const changeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, bob.address);\n    await substrate_api_1.submitTransactionAsync(alice, changeOwnerTx);\n    const badChangeOwnerTx = api.tx.nft.changeCollectionOwner(collectionId, alice.address);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, badChangeOwnerTx)).to.be.rejected;\n    const collectionAfterOwnerChange = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collectionAfterOwnerChange.Owner).to.be.deep.eq(bob.address);\n    await helpers_1.setCollectionSponsorExpectFailure(collectionId, charlie.address, '//Alice');\n    await helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Alice');\n    await helpers_1.removeCollectionSponsorExpectFailure(collectionId, '//Alice');\n    const collectionLimits = {\n        AccountTokenOwnershipLimit: 1,\n        SponsoredMintSize: 1,\n        TokenLimit: 1,\n        SponsorTimeout: 1,\n        OwnerCanTransfer: true,\n        OwnerCanDestroy: true,\n    };\n    const tx1 = api.tx.nft.setCollectionLimits(collectionId, collectionLimits);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, tx1)).to.be.rejected;\n    await helpers_1.enableWhiteListExpectFail(alice, collectionId);\n    await helpers_1.setMintPermissionExpectFailure(alice, collectionId, true);\n    await helpers_1.destroyCollectionExpectFailure(collectionId, '//Alice');\n});",1651              "err": {},1652              "uuid": "89038078-bfeb-4ae6-89ec-47a162b45901",1653              "parentUUID": null,1654              "isHook": false,1655              "skipped": true1656            }1657          ],1658          "suites": [],1659          "passes": [],1660          "failures": [],1661          "pending": [],1662          "skipped": [1663            "50601940-15a6-43fd-8e69-e9f15b4cd27b",1664            "0dfe81ed-ad93-4968-93aa-c0611841e925",1665            "a503acea-f020-48f7-babe-7b35dbe8b5e4",1666            "89038078-bfeb-4ae6-89ec-47a162b45901"1667          ],1668          "duration": 0,1669          "root": false,1670          "rootEmpty": false,1671          "_timeout": 99999991672        },1673        {1674          "uuid": "55f5e4e4-f4fb-4ad7-930e-665826d4cf36",1675          "title": "Burn Item event ",1676          "fullFile": "/nft_parachain/tests/src/check-event/burnItemEvent.test.ts",1677          "file": "/src/check-event/burnItemEvent.test.ts",1678          "beforeHooks": [1679            {1680              "title": "\"before all\" hook",1681              "fullTitle": "Burn Item event  \"before all\" hook",1682              "timedOut": false,1683              "duration": 0,1684              "state": null,1685              "speed": null,1686              "pass": false,1687              "fail": false,1688              "pending": false,1689              "context": null,1690              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n});",1691              "err": {},1692              "uuid": "1cd0ef23-8ba6-42e1-9f3b-c3c8b2507b93",1693              "parentUUID": null,1694              "isHook": true,1695              "skipped": false1696            }1697          ],1698          "afterHooks": [],1699          "tests": [1700            {1701              "title": "Check event from burnItem(): ",1702              "fullTitle": "Burn Item event  Check event from burnItem(): ",1703              "timedOut": false,1704              "duration": 0,1705              "state": null,1706              "speed": null,1707              "pass": false,1708              "fail": false,1709              "pending": false,1710              "context": null,1711              "code": "await substrate_api_1.default(async (api) => {\n    const collectionID = await helpers_1.createCollectionExpectSuccess();\n    const itemID = await helpers_1.createItemExpectSuccess(Alice, collectionID, 'NFT');\n    const burnItem = api.tx.nft.burnItem(collectionID, itemID, 1);\n    const events = await substrate_api_1.submitTransactionAsync(Alice, burnItem);\n    const msg = JSON.stringify(helpers_1.nftEventMessage(events));\n    expect(msg).to.be.contain(checkSection);\n    expect(msg).to.be.contain(checkTreasury);\n    expect(msg).to.be.contain(checkSystem);\n});",1712              "err": {},1713              "uuid": "de5f50c1-af90-42df-93c3-2934badb6102",1714              "parentUUID": null,1715              "isHook": false,1716              "skipped": true1717            }1718          ],1719          "suites": [],1720          "passes": [],1721          "failures": [],1722          "pending": [],1723          "skipped": [1724            "de5f50c1-af90-42df-93c3-2934badb6102"1725          ],1726          "duration": 0,1727          "root": false,1728          "rootEmpty": false,1729          "_timeout": 99999991730        },1731        {1732          "uuid": "3878d237-7941-4f7d-9402-70c55b27ed0a",1733          "title": "Create collection event ",1734          "fullFile": "/nft_parachain/tests/src/check-event/createCollectionEvent.test.ts",1735          "file": "/src/check-event/createCollectionEvent.test.ts",1736          "beforeHooks": [1737            {1738              "title": "\"before all\" hook",1739              "fullTitle": "Create collection event  \"before all\" hook",1740              "timedOut": false,1741              "duration": 0,1742              "state": null,1743              "speed": null,1744              "pass": false,1745              "fail": false,1746              "pending": false,1747              "context": null,1748              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n});",1749              "err": {},1750              "uuid": "1df63224-8d83-4ad7-865e-380947ae6c9a",1751              "parentUUID": null,1752              "isHook": true,1753              "skipped": false1754            }1755          ],1756          "afterHooks": [],1757          "tests": [1758            {1759              "title": "Check event from createCollection(): ",1760              "fullTitle": "Create collection event  Check event from createCollection(): ",1761              "timedOut": false,1762              "duration": 0,1763              "state": null,1764              "speed": null,1765              "pass": false,1766              "fail": false,1767              "pending": false,1768              "context": null,1769              "code": "await substrate_api_1.default(async (api) => {\n    const tx = api.tx.nft.createCollection('0x31', '0x32', '0x33', 'NFT');\n    const events = await substrate_api_1.submitTransactionAsync(Alice, tx);\n    const msg = JSON.stringify(helpers_1.nftEventMessage(events));\n    expect(msg).to.be.contain(checkSection);\n    expect(msg).to.be.contain(checkTreasury);\n    expect(msg).to.be.contain(checkSystem);\n});",1770              "err": {},1771              "uuid": "839bfe64-f4fa-4411-860f-f9efd40ed5db",1772              "parentUUID": null,1773              "isHook": false,1774              "skipped": true1775            }1776          ],1777          "suites": [],1778          "passes": [],1779          "failures": [],1780          "pending": [],1781          "skipped": [1782            "839bfe64-f4fa-4411-860f-f9efd40ed5db"1783          ],1784          "duration": 0,1785          "root": false,1786          "rootEmpty": false,1787          "_timeout": 99999991788        },1789        {1790          "uuid": "400efadc-b579-4d9f-976c-109ef146f79c",1791          "title": "Create Item event ",1792          "fullFile": "/nft_parachain/tests/src/check-event/createItemEvent.test.ts",1793          "file": "/src/check-event/createItemEvent.test.ts",1794          "beforeHooks": [1795            {1796              "title": "\"before all\" hook",1797              "fullTitle": "Create Item event  \"before all\" hook",1798              "timedOut": false,1799              "duration": 0,1800              "state": null,1801              "speed": null,1802              "pass": false,1803              "fail": false,1804              "pending": false,1805              "context": null,1806              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n});",1807              "err": {},1808              "uuid": "b67f0a1f-8a42-4364-a20d-e252defd1183",1809              "parentUUID": null,1810              "isHook": true,1811              "skipped": false1812            }1813          ],1814          "afterHooks": [],1815          "tests": [1816            {1817              "title": "Check event from createItem(): ",1818              "fullTitle": "Create Item event  Check event from createItem(): ",1819              "timedOut": false,1820              "duration": 0,1821              "state": null,1822              "speed": null,1823              "pass": false,1824              "fail": false,1825              "pending": false,1826              "context": null,1827              "code": "await substrate_api_1.default(async (api) => {\n    const collectionID = await helpers_1.createCollectionExpectSuccess();\n    const createItem = api.tx.nft.createItem(collectionID, Alice.address, 'NFT');\n    const events = await substrate_api_1.submitTransactionAsync(Alice, createItem);\n    const msg = JSON.stringify(helpers_1.nftEventMessage(events));\n    expect(msg).to.be.contain(checkSection);\n    expect(msg).to.be.contain(checkTreasury);\n    expect(msg).to.be.contain(checkSystem);\n});",1828              "err": {},1829              "uuid": "85d467a8-89df-4b5d-8cc1-0196eb9f93f5",1830              "parentUUID": null,1831              "isHook": false,1832              "skipped": true1833            }1834          ],1835          "suites": [],1836          "passes": [],1837          "failures": [],1838          "pending": [],1839          "skipped": [1840            "85d467a8-89df-4b5d-8cc1-0196eb9f93f5"1841          ],1842          "duration": 0,1843          "root": false,1844          "rootEmpty": false,1845          "_timeout": 99999991846        },1847        {1848          "uuid": "3b11cc06-de4c-4c51-a1fe-3f51dd00189e",1849          "title": "Create Multiple Items Event event ",1850          "fullFile": "/nft_parachain/tests/src/check-event/createMultipleItemsEvent.test.ts",1851          "file": "/src/check-event/createMultipleItemsEvent.test.ts",1852          "beforeHooks": [1853            {1854              "title": "\"before all\" hook",1855              "fullTitle": "Create Multiple Items Event event  \"before all\" hook",1856              "timedOut": false,1857              "duration": 0,1858              "state": null,1859              "speed": null,1860              "pass": false,1861              "fail": false,1862              "pending": false,1863              "context": null,1864              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n});",1865              "err": {},1866              "uuid": "ca3bcd24-41a8-4305-b378-e11c014b60c6",1867              "parentUUID": null,1868              "isHook": true,1869              "skipped": false1870            }1871          ],1872          "afterHooks": [],1873          "tests": [1874            {1875              "title": "Check event from createMultipleItems(): ",1876              "fullTitle": "Create Multiple Items Event event  Check event from createMultipleItems(): ",1877              "timedOut": false,1878              "duration": 0,1879              "state": null,1880              "speed": null,1881              "pass": false,1882              "fail": false,1883              "pending": false,1884              "context": null,1885              "code": "await substrate_api_1.default(async (api) => {\n    const collectionID = await helpers_1.createCollectionExpectSuccess();\n    const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];\n    const createMultipleItems = api.tx.nft.createMultipleItems(collectionID, Alice.address, args);\n    const events = await substrate_api_1.submitTransactionAsync(Alice, createMultipleItems);\n    const msg = JSON.stringify(helpers_1.nftEventMessage(events));\n    expect(msg).to.be.contain(checkSection);\n    expect(msg).to.be.contain(checkTreasury);\n    expect(msg).to.be.contain(checkSystem);\n});",1886              "err": {},1887              "uuid": "55b6d724-0365-4f9a-b8e4-9b033966390b",1888              "parentUUID": null,1889              "isHook": false,1890              "skipped": true1891            }1892          ],1893          "suites": [],1894          "passes": [],1895          "failures": [],1896          "pending": [],1897          "skipped": [1898            "55b6d724-0365-4f9a-b8e4-9b033966390b"1899          ],1900          "duration": 0,1901          "root": false,1902          "rootEmpty": false,1903          "_timeout": 99999991904        },1905        {1906          "uuid": "5bf9438d-76d2-4721-aeb3-173ec73ce3e4",1907          "title": "Destroy collection event ",1908          "fullFile": "/nft_parachain/tests/src/check-event/destroyCollectionEvent.test.ts",1909          "file": "/src/check-event/destroyCollectionEvent.test.ts",1910          "beforeHooks": [1911            {1912              "title": "\"before all\" hook",1913              "fullTitle": "Destroy collection event  \"before all\" hook",1914              "timedOut": false,1915              "duration": 0,1916              "state": null,1917              "speed": null,1918              "pass": false,1919              "fail": false,1920              "pending": false,1921              "context": null,1922              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n});",1923              "err": {},1924              "uuid": "8466e150-ec40-4916-8b9d-40ed46043246",1925              "parentUUID": null,1926              "isHook": true,1927              "skipped": false1928            }1929          ],1930          "afterHooks": [],1931          "tests": [1932            {1933              "title": "Check event from destroyCollection(): ",1934              "fullTitle": "Destroy collection event  Check event from destroyCollection(): ",1935              "timedOut": false,1936              "duration": 0,1937              "state": null,1938              "speed": null,1939              "pass": false,1940              "fail": false,1941              "pending": false,1942              "context": null,1943              "code": "await substrate_api_1.default(async (api) => {\n    const collectionID = await helpers_1.createCollectionExpectSuccess();\n    const destroyCollection = api.tx.nft.destroyCollection(collectionID);\n    const events = await substrate_api_1.submitTransactionAsync(Alice, destroyCollection);\n    const msg = JSON.stringify(helpers_1.nftEventMessage(events));\n    expect(msg).to.be.contain(checkTreasury);\n    expect(msg).to.be.contain(checkSystem);\n});",1944              "err": {},1945              "uuid": "39b42382-7bc8-4552-92a2-cb34b6c1c7be",1946              "parentUUID": null,1947              "isHook": false,1948              "skipped": true1949            }1950          ],1951          "suites": [],1952          "passes": [],1953          "failures": [],1954          "pending": [],1955          "skipped": [1956            "39b42382-7bc8-4552-92a2-cb34b6c1c7be"1957          ],1958          "duration": 0,1959          "root": false,1960          "rootEmpty": false,1961          "_timeout": 99999991962        },1963        {1964          "uuid": "97c4b3e9-85ed-4a1a-947e-6e3984151fdd",1965          "title": "Transfer event ",1966          "fullFile": "/nft_parachain/tests/src/check-event/transferEvent.test.ts",1967          "file": "/src/check-event/transferEvent.test.ts",1968          "beforeHooks": [1969            {1970              "title": "\"before all\" hook",1971              "fullTitle": "Transfer event  \"before all\" hook",1972              "timedOut": false,1973              "duration": 0,1974              "state": null,1975              "speed": null,1976              "pass": false,1977              "fail": false,1978              "pending": false,1979              "context": null,1980              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",1981              "err": {},1982              "uuid": "de4cf4d9-1530-4052-8115-ab14d42cc92a",1983              "parentUUID": null,1984              "isHook": true,1985              "skipped": false1986            }1987          ],1988          "afterHooks": [],1989          "tests": [1990            {1991              "title": "Check event from transfer(): ",1992              "fullTitle": "Transfer event  Check event from transfer(): ",1993              "timedOut": false,1994              "duration": 0,1995              "state": null,1996              "speed": null,1997              "pass": false,1998              "fail": false,1999              "pending": false,2000              "context": null,2001              "code": "await substrate_api_1.default(async (api) => {\n    const collectionID = await helpers_1.createCollectionExpectSuccess();\n    const itemID = await helpers_1.createItemExpectSuccess(Alice, collectionID, 'NFT');\n    const transfer = api.tx.nft.transfer(Bob.address, collectionID, itemID, 1);\n    const events = await substrate_api_1.submitTransactionAsync(Alice, transfer);\n    const msg = JSON.stringify(helpers_1.nftEventMessage(events));\n    expect(msg).to.be.contain(checkSection);\n    expect(msg).to.be.contain(checkTreasury);\n    expect(msg).to.be.contain(checkSystem);\n});",2002              "err": {},2003              "uuid": "e6598d9d-b6b2-4e48-8525-f6abba53d30b",2004              "parentUUID": null,2005              "isHook": false,2006              "skipped": true2007            }2008          ],2009          "suites": [],2010          "passes": [],2011          "failures": [],2012          "pending": [],2013          "skipped": [2014            "e6598d9d-b6b2-4e48-8525-f6abba53d30b"2015          ],2016          "duration": 0,2017          "root": false,2018          "rootEmpty": false,2019          "_timeout": 99999992020        },2021        {2022          "uuid": "9f3352a8-e9c4-43a8-9086-50a563ee5eee",2023          "title": "Transfer from event ",2024          "fullFile": "/nft_parachain/tests/src/check-event/transferFromEvent.test.ts",2025          "file": "/src/check-event/transferFromEvent.test.ts",2026          "beforeHooks": [2027            {2028              "title": "\"before all\" hook",2029              "fullTitle": "Transfer from event  \"before all\" hook",2030              "timedOut": false,2031              "duration": 0,2032              "state": null,2033              "speed": null,2034              "pass": false,2035              "fail": false,2036              "pending": false,2037              "context": null,2038              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",2039              "err": {},2040              "uuid": "4a46b244-6070-497d-bcd1-33582dd9b4a8",2041              "parentUUID": null,2042              "isHook": true,2043              "skipped": false2044            }2045          ],2046          "afterHooks": [],2047          "tests": [2048            {2049              "title": "Check event from transferFrom(): ",2050              "fullTitle": "Transfer from event  Check event from transferFrom(): ",2051              "timedOut": false,2052              "duration": 0,2053              "state": null,2054              "speed": null,2055              "pass": false,2056              "fail": false,2057              "pending": false,2058              "context": null,2059              "code": "await substrate_api_1.default(async (api) => {\n    const collectionID = await helpers_1.createCollectionExpectSuccess();\n    const itemID = await helpers_1.createItemExpectSuccess(Alice, collectionID, 'NFT');\n    const transferFrom = api.tx.nft.transferFrom(Alice.address, Bob.address, collectionID, itemID, 1);\n    const events = await substrate_api_1.submitTransactionAsync(Alice, transferFrom);\n    const msg = JSON.stringify(helpers_1.nftEventMessage(events));\n    expect(msg).to.be.contain(checkSection);\n    expect(msg).to.be.contain(checkTreasury);\n    expect(msg).to.be.contain(checkSystem);\n});",2060              "err": {},2061              "uuid": "fb883220-daa6-4a72-994b-9bc040bfbab5",2062              "parentUUID": null,2063              "isHook": false,2064              "skipped": true2065            }2066          ],2067          "suites": [],2068          "passes": [],2069          "failures": [],2070          "pending": [],2071          "skipped": [2072            "fb883220-daa6-4a72-994b-9bc040bfbab5"2073          ],2074          "duration": 0,2075          "root": false,2076          "rootEmpty": false,2077          "_timeout": 99999992078        },2079        {2080          "uuid": "82e9f645-db19-47cc-9d86-b840fec2a2b3",2081          "title": "Deleting a collection while add address to whitelist: ",2082          "fullFile": "/nft_parachain/tests/src/collision-tests/adminDestroyCollection.test.ts",2083          "file": "/src/collision-tests/adminDestroyCollection.test.ts",2084          "beforeHooks": [],2085          "afterHooks": [],2086          "tests": [2087            {2088              "title": "Adding an address to the collection whitelist in a block by the admin, and deleting the collection by the owner ",2089              "fullTitle": "Deleting a collection while add address to whitelist:  Adding an address to the collection whitelist in a block by the admin, and deleting the collection by the owner ",2090              "timedOut": false,2091              "duration": 0,2092              "state": null,2093              "speed": null,2094              "pass": false,2095              "fail": false,2096              "pending": false,2097              "context": null,2098              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    await timeoutPromise(10000);\n    //\n    const addWhitelistAdm = api.tx.nft.addToWhiteList(collectionId, Ferdie.address);\n    const destroyCollection = api.tx.nft.destroyCollection(collectionId);\n    await Promise.all([\n        addWhitelistAdm.signAndSend(Bob),\n        destroyCollection.signAndSend(Alice),\n    ]);\n    await timeoutPromise(10000);\n    let whiteList = false;\n    whiteList = (await api.query.nft.whiteList(collectionId, Ferdie.address)).toJSON();\n    // tslint:disable-next-line: no-unused-expression\n    expect(whiteList).to.be.false;\n    await timeoutPromise(20000);\n});",2099              "err": {},2100              "uuid": "cd163573-90a0-4ccd-8a1f-eb8335357a70",2101              "parentUUID": null,2102              "isHook": false,2103              "skipped": true2104            }2105          ],2106          "suites": [],2107          "passes": [],2108          "failures": [],2109          "pending": [],2110          "skipped": [2111            "cd163573-90a0-4ccd-8a1f-eb8335357a70"2112          ],2113          "duration": 0,2114          "root": false,2115          "rootEmpty": false,2116          "_timeout": 99999992117        },2118        {2119          "uuid": "fb3e573e-5ef7-48e5-b965-25da2f42c9b5",2120          "title": "Admin limit exceeded collection: ",2121          "fullFile": "/nft_parachain/tests/src/collision-tests/adminLimitsOff.test.ts",2122          "file": "/src/collision-tests/adminLimitsOff.test.ts",2123          "beforeHooks": [],2124          "afterHooks": [],2125          "tests": [2126            {2127              "title": "In one block, the owner and admin add new admins to the collection more than the limit ",2128              "fullTitle": "Admin limit exceeded collection:  In one block, the owner and admin add new admins to the collection more than the limit ",2129              "timedOut": false,2130              "duration": 0,2131              "state": null,2132              "speed": null,2133              "pass": false,2134              "fail": false,2135              "pending": false,2136              "context": null,2137              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const chainAdminLimit = api.consts.nft.collectionAdminsLimit.toNumber();\n    expect(chainAdminLimit).to.be.equal(5);\n    const changeAdminTx1 = api.tx.nft.addCollectionAdmin(collectionId, Eve.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx1);\n    const changeAdminTx2 = api.tx.nft.addCollectionAdmin(collectionId, Dave.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx2);\n    const changeAdminTx3 = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx3);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    const addAdmOne = api.tx.nft.addCollectionAdmin(collectionId, Ferdie.address);\n    const addAdmTwo = api.tx.nft.addCollectionAdmin(collectionId, Charlie.address);\n    await Promise.all([\n        addAdmOne.signAndSend(Bob),\n        addAdmTwo.signAndSend(Alice),\n    ]);\n    await timeoutPromise(10000);\n    const changeAdminTx4 = api.tx.nft.addCollectionAdmin(collectionId, Alice.address);\n    // tslint:disable-next-line: no-unused-expression\n    expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, changeAdminTx4)).to.be.rejected;\n    const adminListAfterAddAdmin = (await api.query.nft.adminList(collectionId));\n    expect(adminListAfterAddAdmin).to.be.contains(Eve.address);\n    expect(adminListAfterAddAdmin).to.be.contains(Ferdie.address);\n    expect(adminListAfterAddAdmin).not.to.be.contains(Alice.address);\n    await timeoutPromise(20000);\n});",2138              "err": {},2139              "uuid": "c640aa10-0120-452d-b162-4a2c6f356f7f",2140              "parentUUID": null,2141              "isHook": false,2142              "skipped": true2143            }2144          ],2145          "suites": [],2146          "passes": [],2147          "failures": [],2148          "pending": [],2149          "skipped": [2150            "c640aa10-0120-452d-b162-4a2c6f356f7f"2151          ],2152          "duration": 0,2153          "root": false,2154          "rootEmpty": false,2155          "_timeout": 99999992156        },2157        {2158          "uuid": "8cce881e-bbaf-4146-8d8f-006fcca425db",2159          "title": "Deprivation of admin rights: ",2160          "fullFile": "/nft_parachain/tests/src/collision-tests/adminRightsOff.test.ts",2161          "file": "/src/collision-tests/adminRightsOff.test.ts",2162          "beforeHooks": [],2163          "afterHooks": [],2164          "tests": [2165            {2166              "title": "In the block, the collection admin adds a token or changes data, and the collection owner deprives the admin of rights ",2167              "fullTitle": "Deprivation of admin rights:  In the block, the collection admin adds a token or changes data, and the collection owner deprives the admin of rights ",2168              "timedOut": false,2169              "duration": 0,2170              "state": null,2171              "speed": null,2172              "pass": false,2173              "fail": false,2174              "pending": false,2175              "context": null,2176              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    await timeoutPromise(10000);\n    const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];\n    const addItemAdm = api.tx.nft.createMultipleItems(collectionId, Bob.address, args);\n    const removeAdm = api.tx.nft.removeCollectionAdmin(collectionId, Bob.address);\n    await Promise.all([\n        addItemAdm.signAndSend(Bob),\n        removeAdm.signAndSend(Alice),\n    ]);\n    await timeoutPromise(10000);\n    const itemsListIndex = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndex.toNumber()).to.be.equal(0);\n    const adminList = (await api.query.nft.adminList(collectionId));\n    expect(adminList).not.to.be.contains(Bob.address);\n    await timeoutPromise(20000);\n});",2177              "err": {},2178              "uuid": "4e2db444-8992-4e8c-99bd-2e457e34490b",2179              "parentUUID": null,2180              "isHook": false,2181              "skipped": true2182            }2183          ],2184          "suites": [],2185          "passes": [],2186          "failures": [],2187          "pending": [],2188          "skipped": [2189            "4e2db444-8992-4e8c-99bd-2e457e34490b"2190          ],2191          "duration": 0,2192          "root": false,2193          "rootEmpty": false,2194          "_timeout": 99999992195        },2196        {2197          "uuid": "e166ac25-fe9e-4b1d-bb76-6d3e69af3c78",2198          "title": "Admin vs Owner changes token: ",2199          "fullFile": "/nft_parachain/tests/src/collision-tests/admVsOwnerChanges.test.ts",2200          "file": "/src/collision-tests/admVsOwnerChanges.test.ts",2201          "beforeHooks": [],2202          "afterHooks": [],2203          "tests": [2204            {2205              "title": "The collection admin changes the owner of the token and in the same block the current owner transfers the token to another address ",2206              "fullTitle": "Admin vs Owner changes token:  The collection admin changes the owner of the token and in the same block the current owner transfers the token to another address ",2207              "timedOut": false,2208              "duration": 0,2209              "state": null,2210              "speed": null,2211              "pass": false,2212              "fail": false,2213              "pending": false,2214              "context": null,2215              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const changeAdminTxBob = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTxBob);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    const changeAdminTxFerdie = api.tx.nft.addCollectionAdmin(collectionId, Ferdie.address);\n    await substrate_api_1.submitTransactionAsync(Bob, changeAdminTxFerdie);\n    const itemId = await helpers_1.createItemExpectSuccess(Ferdie, collectionId, 'NFT');\n    //\n    const changeOwner = api.tx.nft.transferFrom(Ferdie.address, Bob.address, collectionId, itemId, 1);\n    const approve = api.tx.nft.approve(Bob.address, collectionId, itemId, 1);\n    const sendItem = api.tx.nft.transfer(Alice.address, collectionId, itemId, 1);\n    await Promise.all([\n        changeOwner.signAndSend(Alice),\n        approve.signAndSend(Bob),\n        sendItem.signAndSend(Ferdie),\n    ]);\n    const itemBefore = await api.query.nft.nftItemList(collectionId, itemId);\n    expect(itemBefore.Owner).not.to.be.eq(Bob.address);\n    await timeoutPromise(20000);\n});",2216              "err": {},2217              "uuid": "27b84ed9-5b8c-466e-bd56-0775187d9d84",2218              "parentUUID": null,2219              "isHook": false,2220              "skipped": true2221            }2222          ],2223          "suites": [],2224          "passes": [],2225          "failures": [],2226          "pending": [],2227          "skipped": [2228            "27b84ed9-5b8c-466e-bd56-0775187d9d84"2229          ],2230          "duration": 0,2231          "root": false,2232          "rootEmpty": false,2233          "_timeout": 99999992234        },2235        {2236          "uuid": "6939e386-9b18-4f40-9a94-dd723b626a2d",2237          "title": "Admin vs Owner changes the data in the token: ",2238          "fullFile": "/nft_parachain/tests/src/collision-tests/admVsOwnerData.test.ts",2239          "file": "/src/collision-tests/admVsOwnerData.test.ts",2240          "beforeHooks": [],2241          "afterHooks": [],2242          "tests": [2243            {2244              "title": "The collection admin changes the data in the token and in the same block the token owner also changes the data in it ",2245              "fullTitle": "Admin vs Owner changes the data in the token:  The collection admin changes the data in the token and in the same block the token owner also changes the data in it ",2246              "timedOut": false,2247              "duration": 0,2248              "state": null,2249              "speed": null,2250              "pass": false,2251              "fail": false,2252              "pending": false,2253              "context": null,2254              "code": "await substrate_api_1.default(async (api) => {\n    const AliceData = 1;\n    const BobData = 2;\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    const itemId = await helpers_1.createItemExpectSuccess(Bob, collectionId, 'NFT');\n    //\n    // tslint:disable-next-line: max-line-length\n    const AliceTx = api.tx.nft.setVariableMetaData(collectionId, itemId, AliceData.toString());\n    // tslint:disable-next-line: max-line-length\n    const BobTx = api.tx.nft.setVariableMetaData(collectionId, itemId, BobData.toString());\n    await Promise.all([\n        AliceTx.signAndSend(Alice),\n        BobTx.signAndSend(Bob),\n    ]);\n    const item = await api.query.nft.nftItemList(collectionId, itemId);\n    expect(item.VariableData).not.to.be.eq(null); // Pseudo-random selection of one of two values\n    await timeoutPromise(20000);\n});",2255              "err": {},2256              "uuid": "c5a847a2-b5d4-4507-8c0b-8046d987094b",2257              "parentUUID": null,2258              "isHook": false,2259              "skipped": true2260            }2261          ],2262          "suites": [],2263          "passes": [],2264          "failures": [],2265          "pending": [],2266          "skipped": [2267            "c5a847a2-b5d4-4507-8c0b-8046d987094b"2268          ],2269          "duration": 0,2270          "root": false,2271          "rootEmpty": false,2272          "_timeout": 99999992273        },2274        {2275          "uuid": "cde93d62-bcf0-4cdd-a2a8-cb94d55b17e3",2276          "title": "Admin vs Owner take token: ",2277          "fullFile": "/nft_parachain/tests/src/collision-tests/admVsOwnerTake.test.ts",2278          "file": "/src/collision-tests/admVsOwnerTake.test.ts",2279          "beforeHooks": [],2280          "afterHooks": [],2281          "tests": [2282            {2283              "title": "The collection admin burns the token and in the same block the token owner performs a transaction on it ",2284              "fullTitle": "Admin vs Owner take token:  The collection admin burns the token and in the same block the token owner performs a transaction on it ",2285              "timedOut": false,2286              "duration": 0,2287              "state": null,2288              "speed": null,2289              "pass": false,2290              "fail": false,2291              "pending": false,2292              "context": null,2293              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const changeAdminTx = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTx);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    const itemId = await helpers_1.createItemExpectSuccess(Bob, collectionId, 'NFT');\n    //\n    const sendItem = api.tx.nft.transfer(Ferdie.address, collectionId, itemId, 1);\n    const burnItem = api.tx.nft.burnItem(collectionId, itemId, 1);\n    await Promise.all([\n        sendItem.signAndSend(Bob),\n        burnItem.signAndSend(Alice),\n    ]);\n    await timeoutPromise(10000);\n    let itemBurn = false;\n    itemBurn = (await (api.query.nft.nftItemList(collectionId, itemId))).toJSON();\n    // tslint:disable-next-line: no-unused-expression\n    expect(itemBurn).to.be.null;\n    await timeoutPromise(20000);\n});",2294              "err": {},2295              "uuid": "a7a52e31-98d9-45ae-9ac4-ed5de7ab8813",2296              "parentUUID": null,2297              "isHook": false,2298              "skipped": true2299            }2300          ],2301          "suites": [],2302          "passes": [],2303          "failures": [],2304          "pending": [],2305          "skipped": [2306            "a7a52e31-98d9-45ae-9ac4-ed5de7ab8813"2307          ],2308          "duration": 0,2309          "root": false,2310          "rootEmpty": false,2311          "_timeout": 99999992312        },2313        {2314          "uuid": "4d7194c7-81f8-4360-aca3-7b76daacc991",2315          "title": "Sponsored with new owner ",2316          "fullFile": "/nft_parachain/tests/src/collision-tests/setSponsorNewOwner.test.ts",2317          "file": "/src/collision-tests/setSponsorNewOwner.test.ts",2318          "beforeHooks": [],2319          "afterHooks": [],2320          "tests": [2321            {2322              "title": "Confirmation of sponsorship of a collection in a block with a change in the owner of the collection: ",2323              "fullTitle": "Sponsored with new owner  Confirmation of sponsorship of a collection in a block with a change in the owner of the collection: ",2324              "timedOut": false,2325              "duration": 0,2326              "state": null,2327              "speed": null,2328              "pass": false,2329              "fail": false,2330              "pending": false,2331              "context": null,2332              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.setCollectionSponsorExpectSuccess(collectionId, Bob.address);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    await timeoutPromise(10000);\n    const confirmSponsorship = api.tx.nft.confirmSponsorship(collectionId);\n    const changeCollectionOwner = api.tx.nft.changeCollectionOwner(collectionId, Ferdie.address);\n    await Promise.all([\n        confirmSponsorship.signAndSend(Bob),\n        changeCollectionOwner.signAndSend(Alice),\n    ]);\n    await timeoutPromise(10000);\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Sponsorship.Confirmed).to.be.eq(Bob.address);\n    expect(collection.Owner).to.be.eq(Ferdie.address);\n    await timeoutPromise(20000);\n});",2333              "err": {},2334              "uuid": "0aa8b150-ae6a-492d-ae2a-a0cf97b67b83",2335              "parentUUID": null,2336              "isHook": false,2337              "skipped": true2338            }2339          ],2340          "suites": [],2341          "passes": [],2342          "failures": [],2343          "pending": [],2344          "skipped": [2345            "0aa8b150-ae6a-492d-ae2a-a0cf97b67b83"2346          ],2347          "duration": 0,2348          "root": false,2349          "rootEmpty": false,2350          "_timeout": 99999992351        },2352        {2353          "uuid": "c2823806-a267-4156-a25c-67f011de6be0",2354          "title": "Payment of commission if one block: ",2355          "fullFile": "/nft_parachain/tests/src/collision-tests/sponsorPayments.test.ts",2356          "file": "/src/collision-tests/sponsorPayments.test.ts",2357          "beforeHooks": [],2358          "afterHooks": [],2359          "tests": [2360            {2361              "title": "Payment of commission if one block contains transactions for payment from the sponsor's balance and his (sponsor's) exclusion from the collection ",2362              "fullTitle": "Payment of commission if one block:  Payment of commission if one block contains transactions for payment from the sponsor's balance and his (sponsor's) exclusion from the collection ",2363              "timedOut": false,2364              "duration": 0,2365              "state": null,2366              "speed": null,2367              "pass": false,2368              "fail": false,2369              "pending": false,2370              "context": null,2371              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const changeAdminTxBob = api.tx.nft.addCollectionAdmin(collectionId, Bob.address);\n    await substrate_api_1.submitTransactionAsync(Alice, changeAdminTxBob);\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    const itemId = await helpers_1.createItemExpectSuccess(Bob, collectionId, 'NFT');\n    await helpers_1.setCollectionSponsorExpectSuccess(collectionId, Bob.address);\n    await helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\n    const [alicesBalanceBefore, bobsBalanceBefore] = await get_balance_1.default(api, [accounts_1.alicesPublicKey, accounts_1.bobsPublicKey]);\n    const sendItem = api.tx.nft.transfer(Alice.address, collectionId, itemId, 1);\n    const revokeSponsor = api.tx.nft.removeCollectionSponsor(collectionId);\n    await Promise.all([\n        sendItem.signAndSend(Bob),\n        revokeSponsor.signAndSend(Alice),\n    ]);\n    const [alicesBalanceAfter, bobsBalanceAfter] = await get_balance_1.default(api, [accounts_1.alicesPublicKey, accounts_1.bobsPublicKey]);\n    // tslint:disable-next-line:no-unused-expression\n    expect(alicesBalanceAfter === alicesBalanceBefore).to.be.true;\n    // tslint:disable-next-line:no-unused-expression\n    expect(bobsBalanceAfter === bobsBalanceBefore).to.be.true;\n    await timeoutPromise(20000);\n});",2372              "err": {},2373              "uuid": "f6b9cccb-f110-4593-ab4c-a952cd22e29d",2374              "parentUUID": null,2375              "isHook": false,2376              "skipped": true2377            }2378          ],2379          "suites": [],2380          "passes": [],2381          "failures": [],2382          "pending": [],2383          "skipped": [2384            "f6b9cccb-f110-4593-ab4c-a952cd22e29d"2385          ],2386          "duration": 0,2387          "root": false,2388          "rootEmpty": false,2389          "_timeout": 99999992390        },2391        {2392          "uuid": "e269ff0c-dc84-41c5-aac7-4ad5587db8c7",2393          "title": "Token limit exceeded collection: ",2394          "fullFile": "/nft_parachain/tests/src/collision-tests/tokenLimitsOff.test.ts",2395          "file": "/src/collision-tests/tokenLimitsOff.test.ts",2396          "beforeHooks": [],2397          "afterHooks": [],2398          "tests": [2399            {2400              "title": "The number of tokens created in the collection from different addresses exceeds the allowed collection limit ",2401              "fullTitle": "Token limit exceeded collection:  The number of tokens created in the collection from different addresses exceeds the allowed collection limit ",2402              "timedOut": false,2403              "duration": 0,2404              "state": null,2405              "speed": null,2406              "pass": false,2407              "fail": false,2408              "pending": false,2409              "context": null,2410              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.setMintPermissionExpectSuccess(Alice, collectionId, true);\n    await helpers_1.addToWhiteListExpectSuccess(Alice, collectionId, Ferdie.address);\n    await helpers_1.addToWhiteListExpectSuccess(Alice, collectionId, Bob.address);\n    const setCollectionLim = api.tx.nft.setCollectionLimits(collectionId, {\n        AccountTokenOwnershipLimit,\n        SponsoredMintSize,\n        TokenLimit,\n        // tslint:disable-next-line: object-literal-sort-keys\n        SponsorTimeout,\n        OwnerCanTransfer,\n        OwnerCanDestroy,\n    });\n    const subTx = await substrate_api_1.submitTransactionAsync(Alice, setCollectionLim);\n    const subTxTesult = helpers_1.getCreateItemResult(subTx);\n    // tslint:disable-next-line:no-unused-expression\n    expect(subTxTesult.success).to.be.true;\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    await timeoutPromise(10000);\n    const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];\n    const mintItemOne = api.tx.nft\n        .createMultipleItems(collectionId, Ferdie.address, args);\n    const mintItemTwo = api.tx.nft\n        .createMultipleItems(collectionId, Bob.address, args);\n    await Promise.all([\n        mintItemOne.signAndSend(Ferdie),\n        mintItemTwo.signAndSend(Bob),\n    ]);\n    await timeoutPromise(10000);\n    const itemsListIndexAfter = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexAfter.toNumber()).to.be.equal(3);\n    // TokenLimit = 4. The first transaction is successful. The second should fail.\n    await timeoutPromise(10000);\n});",2411              "err": {},2412              "uuid": "91e83b7d-2a17-4a68-b90a-0c5e18f631fd",2413              "parentUUID": null,2414              "isHook": false,2415              "skipped": true2416            }2417          ],2418          "suites": [],2419          "passes": [],2420          "failures": [],2421          "pending": [],2422          "skipped": [2423            "91e83b7d-2a17-4a68-b90a-0c5e18f631fd"2424          ],2425          "duration": 0,2426          "root": false,2427          "rootEmpty": false,2428          "_timeout": 99999992429        },2430        {2431          "uuid": "5de00d4a-8d19-4f86-9cb4-5a2c6282dcc4",2432          "title": "Turns off minting mode: ",2433          "fullFile": "/nft_parachain/tests/src/collision-tests/turnsOffMinting.test.ts",2434          "file": "/src/collision-tests/turnsOffMinting.test.ts",2435          "beforeHooks": [],2436          "afterHooks": [],2437          "tests": [2438            {2439              "title": "The collection owner turns off minting mode and there are minting transactions in the same block ",2440              "fullTitle": "Turns off minting mode:  The collection owner turns off minting mode and there are minting transactions in the same block ",2441              "timedOut": false,2442              "duration": 0,2443              "state": null,2444              "speed": null,2445              "pass": false,2446              "fail": false,2447              "pending": false,2448              "context": null,2449              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const timeoutPromise = (timeout) => new Promise((resolve) => setTimeout(resolve, timeout));\n    await helpers_1.setMintPermissionExpectSuccess(Alice, collectionId, true);\n    await helpers_1.addToWhiteListExpectSuccess(Alice, collectionId, Ferdie.address);\n    const mintItem = api.tx.nft.createItem(collectionId, Ferdie.address, 'NFT');\n    const offMinting = api.tx.nft.setMintPermission(collectionId, false);\n    await Promise.all([\n        mintItem.signAndSend(Ferdie),\n        offMinting.signAndSend(Alice),\n    ]);\n    let itemList = false;\n    itemList = (await (api.query.nft.nftItemList(collectionId, mintItem))).toJSON();\n    // tslint:disable-next-line: no-unused-expression\n    expect(itemList).to.be.null;\n    await timeoutPromise(20000);\n});",2450              "err": {},2451              "uuid": "6040e71a-673f-40ae-8e89-53fe146b9821",2452              "parentUUID": null,2453              "isHook": false,2454              "skipped": true2455            }2456          ],2457          "suites": [],2458          "passes": [],2459          "failures": [],2460          "pending": [],2461          "skipped": [2462            "6040e71a-673f-40ae-8e89-53fe146b9821"2463          ],2464          "duration": 0,2465          "root": false,2466          "rootEmpty": false,2467          "_timeout": 99999992468        },2469        {2470          "uuid": "766dec6b-db31-4e6a-8bb4-22ee7c8aa73e",2471          "title": "integration test: ext. confirmSponsorship():",2472          "fullFile": "/nft_parachain/tests/src/confirmSponsorship.test.ts",2473          "file": "/src/confirmSponsorship.test.ts",2474          "beforeHooks": [2475            {2476              "title": "\"before all\" hook",2477              "fullTitle": "integration test: ext. confirmSponsorship(): \"before all\" hook",2478              "timedOut": false,2479              "duration": 0,2480              "state": null,2481              "speed": null,2482              "pass": false,2483              "fail": false,2484              "pending": false,2485              "context": null,2486              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n    charlie = keyring.addFromUri('//Charlie');\n});",2487              "err": {},2488              "uuid": "b4286b27-ec55-496e-a1f7-6c9a8189ea51",2489              "parentUUID": null,2490              "isHook": true,2491              "skipped": false2492            }2493          ],2494          "afterHooks": [],2495          "tests": [2496            {2497              "title": "Confirm collection sponsorship",2498              "fullTitle": "integration test: ext. confirmSponsorship(): Confirm collection sponsorship",2499              "timedOut": false,2500              "duration": 0,2501              "state": null,2502              "speed": null,2503              "pass": false,2504              "fail": false,2505              "pending": false,2506              "context": null,2507              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');",2508              "err": {},2509              "uuid": "c785a61c-949d-48c4-82ee-4e7d03ab6683",2510              "parentUUID": null,2511              "isHook": false,2512              "skipped": true2513            },2514            {2515              "title": "Add sponsor to a collection after the same sponsor was already added and confirmed",2516              "fullTitle": "integration test: ext. confirmSponsorship(): Add sponsor to a collection after the same sponsor was already added and confirmed",2517              "timedOut": false,2518              "duration": 0,2519              "state": null,2520              "speed": null,2521              "pass": false,2522              "fail": false,2523              "pending": false,2524              "context": null,2525              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);",2526              "err": {},2527              "uuid": "4c8ba9f7-5223-4e94-984d-dc13ee0fc326",2528              "parentUUID": null,2529              "isHook": false,2530              "skipped": true2531            },2532            {2533              "title": "Add new sponsor to a collection after another sponsor was already added and confirmed",2534              "fullTitle": "integration test: ext. confirmSponsorship(): Add new sponsor to a collection after another sponsor was already added and confirmed",2535              "timedOut": false,2536              "duration": 0,2537              "state": null,2538              "speed": null,2539              "pass": false,2540              "fail": false,2541              "pending": false,2542              "context": null,2543              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, charlie.address);",2544              "err": {},2545              "uuid": "a9148812-c2fa-490d-b5da-3386918aca3e",2546              "parentUUID": null,2547              "isHook": false,2548              "skipped": true2549            },2550            {2551              "title": "NFT: Transfer fees are paid by the sponsor after confirmation",2552              "fullTitle": "integration test: ext. confirmSponsorship(): NFT: Transfer fees are paid by the sponsor after confirmation",2553              "timedOut": false,2554              "duration": 0,2555              "state": null,2556              "speed": null,2557              "pass": false,2558              "fail": false,2559              "pending": false,2560              "context": null,2561              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait substrate_api_1.default(async (api) => {\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Mint token for unused address\n    const itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT', zeroBalance.address);\n    // Transfer this tokens from unused address to Alice\n    const zeroToAlice = api.tx.nft.transfer(helpers_1.normalizeAccountId(zeroBalance.address), collectionId, itemId, 0);\n    const events = await substrate_api_1.submitTransactionAsync(zeroBalance, zeroToAlice);\n    const result = helpers_1.getGenericResult(events);\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    expect(result.success).to.be.true;\n    expect(BsponsorBalance.lt(AsponsorBalance)).to.be.true;\n});",2562              "err": {},2563              "uuid": "9d5c80ab-b396-4d32-89ce-e0a05105ebb1",2564              "parentUUID": null,2565              "isHook": false,2566              "skipped": true2567            },2568            {2569              "title": "Fungible: Transfer fees are paid by the sponsor after confirmation",2570              "fullTitle": "integration test: ext. confirmSponsorship(): Fungible: Transfer fees are paid by the sponsor after confirmation",2571              "timedOut": false,2572              "duration": 0,2573              "state": null,2574              "speed": null,2575              "pass": false,2576              "fail": false,2577              "pending": false,2578              "context": null,2579              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait substrate_api_1.default(async (api) => {\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Mint token for unused address\n    const itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'Fungible', zeroBalance.address);\n    // Transfer this tokens from unused address to Alice\n    const zeroToAlice = api.tx.nft.transfer(helpers_1.normalizeAccountId(zeroBalance.address), collectionId, itemId, 1);\n    const events1 = await substrate_api_1.submitTransactionAsync(zeroBalance, zeroToAlice);\n    const result1 = helpers_1.getGenericResult(events1);\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    expect(result1.success).to.be.true;\n    expect(BsponsorBalance.lt(AsponsorBalance)).to.be.true;\n});",2580              "err": {},2581              "uuid": "59ba5ffb-0029-4374-962d-79b49bc98ed0",2582              "parentUUID": null,2583              "isHook": false,2584              "skipped": true2585            },2586            {2587              "title": "ReFungible: Transfer fees are paid by the sponsor after confirmation",2588              "fullTitle": "integration test: ext. confirmSponsorship(): ReFungible: Transfer fees are paid by the sponsor after confirmation",2589              "timedOut": false,2590              "duration": 0,2591              "state": null,2592              "speed": null,2593              "pass": false,2594              "fail": false,2595              "pending": false,2596              "context": null,2597              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait substrate_api_1.default(async (api) => {\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Mint token for unused address\n    const itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'ReFungible', zeroBalance.address);\n    // Transfer this tokens from unused address to Alice\n    const zeroToAlice = api.tx.nft.transfer(helpers_1.normalizeAccountId(zeroBalance.address), collectionId, itemId, 1);\n    const events1 = await substrate_api_1.submitTransactionAsync(zeroBalance, zeroToAlice);\n    const result1 = helpers_1.getGenericResult(events1);\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    expect(result1.success).to.be.true;\n    expect(BsponsorBalance.lt(AsponsorBalance)).to.be.true;\n});",2598              "err": {},2599              "uuid": "1b0854b2-3545-4b50-9d6d-5147d5ee4674",2600              "parentUUID": null,2601              "isHook": false,2602              "skipped": true2603            },2604            {2605              "title": "CreateItem fees are paid by the sponsor after confirmation",2606              "fullTitle": "integration test: ext. confirmSponsorship(): CreateItem fees are paid by the sponsor after confirmation",2607              "timedOut": false,2608              "duration": 0,2609              "state": null,2610              "speed": null,2611              "pass": false,2612              "fail": false,2613              "pending": false,2614              "context": null,2615              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\n// Enable collection white list \nawait helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\n// Enable public minting\nawait helpers_1.enablePublicMintingExpectSuccess(alice, collectionId);\n// Create Item \nawait substrate_api_1.default(async (api) => {\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Add zeroBalance address to white list\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionId, zeroBalance.address);\n    // Mint token using unused address as signer\n    await helpers_1.createItemExpectSuccess(zeroBalance, collectionId, 'NFT', zeroBalance.address);\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    expect(BsponsorBalance.lt(AsponsorBalance)).to.be.true;\n});",2616              "err": {},2617              "uuid": "4971b24f-c530-424f-8564-373c9ceb0387",2618              "parentUUID": null,2619              "isHook": false,2620              "skipped": true2621            },2622            {2623              "title": "NFT: Sponsoring of transfers is rate limited",2624              "fullTitle": "integration test: ext. confirmSponsorship(): NFT: Sponsoring of transfers is rate limited",2625              "timedOut": false,2626              "duration": 0,2627              "state": null,2628              "speed": null,2629              "pass": false,2630              "fail": false,2631              "pending": false,2632              "context": null,2633              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait substrate_api_1.default(async (api) => {\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Mint token for alice\n    const itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT', alice.address);\n    // Transfer this token from Alice to unused address and back\n    // Alice to Zero gets sponsored\n    const aliceToZero = api.tx.nft.transfer(helpers_1.normalizeAccountId(zeroBalance.address), collectionId, itemId, 0);\n    const events1 = await substrate_api_1.submitTransactionAsync(alice, aliceToZero);\n    const result1 = helpers_1.getGenericResult(events1);\n    // Second transfer should fail\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    const zeroToAlice = api.tx.nft.transfer(helpers_1.normalizeAccountId(alice.address), collectionId, itemId, 0);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(zeroBalance, zeroToAlice);\n    };\n    await expect(badTransaction()).to.be.rejectedWith('Inability to pay some fees');\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Try again after Zero gets some balance - now it should succeed\n    const balancetx = api.tx.balances.transfer(zeroBalance.address, 1e15);\n    await substrate_api_1.submitTransactionAsync(alice, balancetx);\n    const events2 = await substrate_api_1.submitTransactionAsync(zeroBalance, zeroToAlice);\n    const result2 = helpers_1.getGenericResult(events2);\n    expect(result1.success).to.be.true;\n    expect(result2.success).to.be.true;\n    expect(BsponsorBalance.isEqualTo(AsponsorBalance)).to.be.true;\n});",2634              "err": {},2635              "uuid": "d9644e67-7f38-4fbe-8b30-72036d7f6038",2636              "parentUUID": null,2637              "isHook": false,2638              "skipped": true2639            },2640            {2641              "title": "Fungible: Sponsoring is rate limited",2642              "fullTitle": "integration test: ext. confirmSponsorship(): Fungible: Sponsoring is rate limited",2643              "timedOut": false,2644              "duration": 0,2645              "state": null,2646              "speed": null,2647              "pass": false,2648              "fail": false,2649              "pending": false,2650              "context": null,2651              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait substrate_api_1.default(async (api) => {\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Mint token for unused address\n    const itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'Fungible', zeroBalance.address);\n    // Transfer this tokens in parts from unused address to Alice\n    const zeroToAlice = api.tx.nft.transfer(helpers_1.normalizeAccountId(zeroBalance.address), collectionId, itemId, 1);\n    const events1 = await substrate_api_1.submitTransactionAsync(zeroBalance, zeroToAlice);\n    const result1 = helpers_1.getGenericResult(events1);\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(zeroBalance, zeroToAlice)).to.be.rejected;\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Try again after Zero gets some balance - now it should succeed\n    const balancetx = api.tx.balances.transfer(zeroBalance.address, 1e15);\n    await substrate_api_1.submitTransactionAsync(alice, balancetx);\n    const events2 = await substrate_api_1.submitTransactionAsync(zeroBalance, zeroToAlice);\n    const result2 = helpers_1.getGenericResult(events2);\n    expect(result1.success).to.be.true;\n    expect(result2.success).to.be.true;\n    expect(BsponsorBalance.isEqualTo(AsponsorBalance)).to.be.true;\n});",2652              "err": {},2653              "uuid": "258524bd-66ff-4227-8225-59b08893ad3b",2654              "parentUUID": null,2655              "isHook": false,2656              "skipped": true2657            },2658            {2659              "title": "ReFungible: Sponsoring is rate limited",2660              "fullTitle": "integration test: ext. confirmSponsorship(): ReFungible: Sponsoring is rate limited",2661              "timedOut": false,2662              "duration": 0,2663              "state": null,2664              "speed": null,2665              "pass": false,2666              "fail": false,2667              "pending": false,2668              "context": null,2669              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait substrate_api_1.default(async (api) => {\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Mint token for alice\n    const itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'ReFungible', alice.address);\n    // Transfer this token from Alice to unused address and back\n    // Alice to Zero gets sponsored\n    const aliceToZero = api.tx.nft.transfer(helpers_1.normalizeAccountId(zeroBalance.address), collectionId, itemId, 1);\n    const events1 = await substrate_api_1.submitTransactionAsync(alice, aliceToZero);\n    const result1 = helpers_1.getGenericResult(events1);\n    // Second transfer should fail\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    const zeroToAlice = api.tx.nft.transfer(helpers_1.normalizeAccountId(alice.address), collectionId, itemId, 1);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(zeroBalance, zeroToAlice);\n    };\n    await expect(badTransaction()).to.be.rejectedWith('Inability to pay some fees');\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Try again after Zero gets some balance - now it should succeed\n    const balancetx = api.tx.balances.transfer(zeroBalance.address, 1e15);\n    await substrate_api_1.submitTransactionAsync(alice, balancetx);\n    const events2 = await substrate_api_1.submitTransactionAsync(zeroBalance, zeroToAlice);\n    const result2 = helpers_1.getGenericResult(events2);\n    expect(result1.success).to.be.true;\n    expect(result2.success).to.be.true;\n    expect(BsponsorBalance.isEqualTo(AsponsorBalance)).to.be.true;\n});",2670              "err": {},2671              "uuid": "48f50d22-3286-43cb-a84b-a74d393ec548",2672              "parentUUID": null,2673              "isHook": false,2674              "skipped": true2675            },2676            {2677              "title": "NFT: Sponsoring of createItem is rate limited",2678              "fullTitle": "integration test: ext. confirmSponsorship(): NFT: Sponsoring of createItem is rate limited",2679              "timedOut": false,2680              "duration": 0,2681              "state": null,2682              "speed": null,2683              "pass": false,2684              "fail": false,2685              "pending": false,2686              "context": null,2687              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\n// Enable collection white list \nawait helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\n// Enable public minting\nawait helpers_1.enablePublicMintingExpectSuccess(alice, collectionId);\nawait substrate_api_1.default(async (api) => {\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Add zeroBalance address to white list\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionId, zeroBalance.address);\n    // Mint token using unused address as signer - gets sponsored\n    await helpers_1.createItemExpectSuccess(zeroBalance, collectionId, 'NFT', zeroBalance.address);\n    // Second mint should fail\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    const consoleError = console.error;\n    const consoleLog = console.log;\n    console.error = () => { };\n    console.log = () => { };\n    const badTransaction = async function () {\n        await helpers_1.createItemExpectSuccess(zeroBalance, collectionId, 'NFT', zeroBalance.address);\n    };\n    await expect(badTransaction()).to.be.rejectedWith('Inability to pay some fees');\n    console.error = consoleError;\n    console.log = consoleLog;\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    // Try again after Zero gets some balance - now it should succeed\n    const balancetx = api.tx.balances.transfer(zeroBalance.address, 1e15);\n    await substrate_api_1.submitTransactionAsync(alice, balancetx);\n    await helpers_1.createItemExpectSuccess(zeroBalance, collectionId, 'NFT', zeroBalance.address);\n    expect(BsponsorBalance.isEqualTo(AsponsorBalance)).to.be.true;\n});",2688              "err": {},2689              "uuid": "32f2965d-0780-4b43-86fc-67a271e1ff30",2690              "parentUUID": null,2691              "isHook": false,2692              "skipped": true2693            }2694          ],2695          "suites": [],2696          "passes": [],2697          "failures": [],2698          "pending": [],2699          "skipped": [2700            "c785a61c-949d-48c4-82ee-4e7d03ab6683",2701            "4c8ba9f7-5223-4e94-984d-dc13ee0fc326",2702            "a9148812-c2fa-490d-b5da-3386918aca3e",2703            "9d5c80ab-b396-4d32-89ce-e0a05105ebb1",2704            "59ba5ffb-0029-4374-962d-79b49bc98ed0",2705            "1b0854b2-3545-4b50-9d6d-5147d5ee4674",2706            "4971b24f-c530-424f-8564-373c9ceb0387",2707            "d9644e67-7f38-4fbe-8b30-72036d7f6038",2708            "258524bd-66ff-4227-8225-59b08893ad3b",2709            "48f50d22-3286-43cb-a84b-a74d393ec548",2710            "32f2965d-0780-4b43-86fc-67a271e1ff30"2711          ],2712          "duration": 0,2713          "root": false,2714          "rootEmpty": false,2715          "_timeout": 99999992716        },2717        {2718          "uuid": "88813bee-d3e9-4529-938f-39a104c2bf5f",2719          "title": "(!negative test!) integration test: ext. confirmSponsorship():",2720          "fullFile": "/nft_parachain/tests/src/confirmSponsorship.test.ts",2721          "file": "/src/confirmSponsorship.test.ts",2722          "beforeHooks": [2723            {2724              "title": "\"before all\" hook",2725              "fullTitle": "(!negative test!) integration test: ext. confirmSponsorship(): \"before all\" hook",2726              "timedOut": false,2727              "duration": 0,2728              "state": null,2729              "speed": null,2730              "pass": false,2731              "fail": false,2732              "pending": false,2733              "context": null,2734              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n    charlie = keyring.addFromUri('//Charlie');\n});",2735              "err": {},2736              "uuid": "39ec5fac-f548-4199-aaf5-4e22a0ad6f54",2737              "parentUUID": null,2738              "isHook": true,2739              "skipped": false2740            }2741          ],2742          "afterHooks": [],2743          "tests": [2744            {2745              "title": "(!negative test!) Confirm sponsorship for a collection that never existed",2746              "fullTitle": "(!negative test!) integration test: ext. confirmSponsorship(): (!negative test!) Confirm sponsorship for a collection that never existed",2747              "timedOut": false,2748              "duration": 0,2749              "state": null,2750              "speed": null,2751              "pass": false,2752              "fail": false,2753              "pending": false,2754              "context": null,2755              "code": "// Find the collection that never existed\nlet collectionId = 0;\nawait substrate_api_1.default(async (api) => {\n    collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n});\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Bob');",2756              "err": {},2757              "uuid": "973687a1-333a-40e3-924d-2408e5de9501",2758              "parentUUID": null,2759              "isHook": false,2760              "skipped": true2761            },2762            {2763              "title": "(!negative test!) Confirm sponsorship using a non-sponsor address",2764              "fullTitle": "(!negative test!) integration test: ext. confirmSponsorship(): (!negative test!) Confirm sponsorship using a non-sponsor address",2765              "timedOut": false,2766              "duration": 0,2767              "state": null,2768              "speed": null,2769              "pass": false,2770              "fail": false,2771              "pending": false,2772              "context": null,2773              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait substrate_api_1.default(async (api) => {\n    const transfer = api.tx.balances.transfer(charlie.address, 1e15);\n    await substrate_api_1.submitTransactionAsync(alice, transfer);\n});\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Charlie');",2774              "err": {},2775              "uuid": "e37becf5-1cf7-451b-a7a7-9fabc4a12391",2776              "parentUUID": null,2777              "isHook": false,2778              "skipped": true2779            },2780            {2781              "title": "(!negative test!) Confirm sponsorship using owner address",2782              "fullTitle": "(!negative test!) integration test: ext. confirmSponsorship(): (!negative test!) Confirm sponsorship using owner address",2783              "timedOut": false,2784              "duration": 0,2785              "state": null,2786              "speed": null,2787              "pass": false,2788              "fail": false,2789              "pending": false,2790              "context": null,2791              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Alice');",2792              "err": {},2793              "uuid": "36d28ed5-82ad-4257-9734-554e5a9ec508",2794              "parentUUID": null,2795              "isHook": false,2796              "skipped": true2797            },2798            {2799              "title": "(!negative test!) Confirm sponsorship by collection admin",2800              "fullTitle": "(!negative test!) integration test: ext. confirmSponsorship(): (!negative test!) Confirm sponsorship by collection admin",2801              "timedOut": false,2802              "duration": 0,2803              "state": null,2804              "speed": null,2805              "pass": false,2806              "fail": false,2807              "pending": false,2808              "context": null,2809              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, charlie);\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Charlie');",2810              "err": {},2811              "uuid": "9aee7e92-89f3-461b-b74b-c22d18a5a8ab",2812              "parentUUID": null,2813              "isHook": false,2814              "skipped": true2815            },2816            {2817              "title": "(!negative test!) Confirm sponsorship without sponsor being set with setCollectionSponsor",2818              "fullTitle": "(!negative test!) integration test: ext. confirmSponsorship(): (!negative test!) Confirm sponsorship without sponsor being set with setCollectionSponsor",2819              "timedOut": false,2820              "duration": 0,2821              "state": null,2822              "speed": null,2823              "pass": false,2824              "fail": false,2825              "pending": false,2826              "context": null,2827              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Bob');",2828              "err": {},2829              "uuid": "43dcb5ee-e6a2-496e-9323-c497a9de08c9",2830              "parentUUID": null,2831              "isHook": false,2832              "skipped": true2833            },2834            {2835              "title": "(!negative test!) Confirm sponsorship in a collection that was destroyed",2836              "fullTitle": "(!negative test!) integration test: ext. confirmSponsorship(): (!negative test!) Confirm sponsorship in a collection that was destroyed",2837              "timedOut": false,2838              "duration": 0,2839              "state": null,2840              "speed": null,2841              "pass": false,2842              "fail": false,2843              "pending": false,2844              "context": null,2845              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Bob');",2846              "err": {},2847              "uuid": "85c85227-5b3b-4053-9933-f98fa8f3626e",2848              "parentUUID": null,2849              "isHook": false,2850              "skipped": true2851            }2852          ],2853          "suites": [],2854          "passes": [],2855          "failures": [],2856          "pending": [],2857          "skipped": [2858            "973687a1-333a-40e3-924d-2408e5de9501",2859            "e37becf5-1cf7-451b-a7a7-9fabc4a12391",2860            "36d28ed5-82ad-4257-9734-554e5a9ec508",2861            "9aee7e92-89f3-461b-b74b-c22d18a5a8ab",2862            "43dcb5ee-e6a2-496e-9323-c497a9de08c9",2863            "85c85227-5b3b-4053-9933-f98fa8f3626e"2864          ],2865          "duration": 0,2866          "root": false,2867          "rootEmpty": false,2868          "_timeout": 99999992869        },2870        {2871          "uuid": "b01fbe26-19a1-4422-a804-a211fa4e8126",2872          "title": "Connection smoke test",2873          "fullFile": "/nft_parachain/tests/src/connection.test.ts",2874          "file": "/src/connection.test.ts",2875          "beforeHooks": [],2876          "afterHooks": [],2877          "tests": [2878            {2879              "title": "Connection can be established",2880              "fullTitle": "Connection smoke test Connection can be established",2881              "timedOut": false,2882              "duration": 0,2883              "state": null,2884              "speed": null,2885              "pass": false,2886              "fail": false,2887              "pending": false,2888              "context": null,2889              "code": "await substrate_api_1.default(async (api) => {\n    const health = await api.rpc.system.health();\n    expect(health).to.be.not.empty;\n});",2890              "err": {},2891              "uuid": "0a85f403-5d49-4f62-8c6d-4c9fc6b5f8cf",2892              "parentUUID": null,2893              "isHook": false,2894              "skipped": true2895            },2896            {2897              "title": "Cannot connect to 255.255.255.255",2898              "fullTitle": "Connection smoke test Cannot connect to 255.255.255.255",2899              "timedOut": false,2900              "duration": 0,2901              "state": null,2902              "speed": null,2903              "pass": false,2904              "fail": false,2905              "pending": false,2906              "context": null,2907              "code": "const log = console.log;\nconst error = console.error;\nconsole.log = function () { };\nconsole.error = function () { };\nconst neverConnectProvider = new api_1.WsProvider('ws://255.255.255.255:9944');\nawait expect((async () => {\n    await substrate_api_1.default(async (api) => {\n        await api.rpc.system.health();\n    }, { provider: neverConnectProvider });\n})()).to.be.eventually.rejected;\nconsole.log = log;\nconsole.error = error;",2908              "err": {},2909              "uuid": "7b68037c-74fb-495e-adb8-14b78794055b",2910              "parentUUID": null,2911              "isHook": false,2912              "skipped": true2913            }2914          ],2915          "suites": [],2916          "passes": [],2917          "failures": [],2918          "pending": [],2919          "skipped": [2920            "0a85f403-5d49-4f62-8c6d-4c9fc6b5f8cf",2921            "7b68037c-74fb-495e-adb8-14b78794055b"2922          ],2923          "duration": 0,2924          "root": false,2925          "rootEmpty": false,2926          "_timeout": 99999992927        },2928        {2929          "uuid": "e295e9c4-ce58-49b4-ac64-b58f1ae54d95",2930          "title": "Contracts",2931          "fullFile": "/nft_parachain/tests/src/contracts.test.ts",2932          "file": "/src/contracts.test.ts",2933          "beforeHooks": [],2934          "afterHooks": [],2935          "tests": [2936            {2937              "title": "Can deploy smart contract Flipper, instantiate it and call it's get and flip messages.",2938              "fullTitle": "Contracts Can deploy smart contract Flipper, instantiate it and call it's get and flip messages.",2939              "timedOut": false,2940              "duration": 0,2941              "state": null,2942              "speed": null,2943              "pass": false,2944              "fail": false,2945              "pending": true,2946              "context": null,2947              "code": "",2948              "err": {},2949              "uuid": "5ae5e427-bfd6-4097-a812-5a4c7495d3b6",2950              "parentUUID": null,2951              "isHook": false,2952              "skipped": false2953            },2954            {2955              "title": "Can initialize contract instance",2956              "fullTitle": "Contracts Can initialize contract instance",2957              "timedOut": false,2958              "duration": 0,2959              "state": null,2960              "speed": null,2961              "pass": false,2962              "fail": false,2963              "pending": true,2964              "context": null,2965              "code": "",2966              "err": {},2967              "uuid": "5e9d5065-d0cb-4b2b-8128-edc38b2dad13",2968              "parentUUID": null,2969              "isHook": false,2970              "skipped": false2971            }2972          ],2973          "suites": [],2974          "passes": [],2975          "failures": [],2976          "pending": [2977            "5ae5e427-bfd6-4097-a812-5a4c7495d3b6",2978            "5e9d5065-d0cb-4b2b-8128-edc38b2dad13"2979          ],2980          "skipped": [],2981          "duration": 0,2982          "root": false,2983          "rootEmpty": false,2984          "_timeout": 99999992985        },2986        {2987          "uuid": "9afd16cd-2a47-40a7-97c3-3ef651542e0b",2988          "title": "Chain extensions",2989          "fullFile": "/nft_parachain/tests/src/contracts.test.ts",2990          "file": "/src/contracts.test.ts",2991          "beforeHooks": [],2992          "afterHooks": [],2993          "tests": [2994            {2995              "title": "Transfer CE",2996              "fullTitle": "Chain extensions Transfer CE",2997              "timedOut": false,2998              "duration": 0,2999              "state": null,3000              "speed": null,3001              "pass": false,3002              "fail": false,3003              "pending": true,3004              "context": null,3005              "code": "",3006              "err": {},3007              "uuid": "5dfccf7a-0eee-404d-a956-d1093df221bc",3008              "parentUUID": null,3009              "isHook": false,3010              "skipped": false3011            },3012            {3013              "title": "Mint CE",3014              "fullTitle": "Chain extensions Mint CE",3015              "timedOut": false,3016              "duration": 0,3017              "state": null,3018              "speed": null,3019              "pass": false,3020              "fail": false,3021              "pending": true,3022              "context": null,3023              "code": "",3024              "err": {},3025              "uuid": "1131b325-d3c6-4b9e-9497-d7eb26256295",3026              "parentUUID": null,3027              "isHook": false,3028              "skipped": false3029            },3030            {3031              "title": "Bulk mint CE",3032              "fullTitle": "Chain extensions Bulk mint CE",3033              "timedOut": false,3034              "duration": 0,3035              "state": null,3036              "speed": null,3037              "pass": false,3038              "fail": false,3039              "pending": true,3040              "context": null,3041              "code": "",3042              "err": {},3043              "uuid": "a9c700c8-c6f7-45aa-9802-d26245bf4d87",3044              "parentUUID": null,3045              "isHook": false,3046              "skipped": false3047            },3048            {3049              "title": "Approve CE",3050              "fullTitle": "Chain extensions Approve CE",3051              "timedOut": false,3052              "duration": 0,3053              "state": null,3054              "speed": null,3055              "pass": false,3056              "fail": false,3057              "pending": true,3058              "context": null,3059              "code": "",3060              "err": {},3061              "uuid": "63d3b2aa-a8b8-4bdf-8e93-80c68eb72c82",3062              "parentUUID": null,3063              "isHook": false,3064              "skipped": false3065            },3066            {3067              "title": "TransferFrom CE",3068              "fullTitle": "Chain extensions TransferFrom CE",3069              "timedOut": false,3070              "duration": 0,3071              "state": null,3072              "speed": null,3073              "pass": false,3074              "fail": false,3075              "pending": true,3076              "context": null,3077              "code": "",3078              "err": {},3079              "uuid": "cd69fa28-097d-4b4f-a0a0-0023fda654a2",3080              "parentUUID": null,3081              "isHook": false,3082              "skipped": false3083            },3084            {3085              "title": "SetVariableMetaData CE",3086              "fullTitle": "Chain extensions SetVariableMetaData CE",3087              "timedOut": false,3088              "duration": 0,3089              "state": null,3090              "speed": null,3091              "pass": false,3092              "fail": false,3093              "pending": true,3094              "context": null,3095              "code": "",3096              "err": {},3097              "uuid": "47084172-5068-4118-85b1-9d7b41fa0376",3098              "parentUUID": null,3099              "isHook": false,3100              "skipped": false3101            },3102            {3103              "title": "ToggleWhiteList CE",3104              "fullTitle": "Chain extensions ToggleWhiteList CE",3105              "timedOut": false,3106              "duration": 0,3107              "state": null,3108              "speed": null,3109              "pass": false,3110              "fail": false,3111              "pending": true,3112              "context": null,3113              "code": "",3114              "err": {},3115              "uuid": "0fd23521-9e89-4234-97be-7d191b812c7e",3116              "parentUUID": null,3117              "isHook": false,3118              "skipped": false3119            }3120          ],3121          "suites": [],3122          "passes": [],3123          "failures": [],3124          "pending": [3125            "5dfccf7a-0eee-404d-a956-d1093df221bc",3126            "1131b325-d3c6-4b9e-9497-d7eb26256295",3127            "a9c700c8-c6f7-45aa-9802-d26245bf4d87",3128            "63d3b2aa-a8b8-4bdf-8e93-80c68eb72c82",3129            "cd69fa28-097d-4b4f-a0a0-0023fda654a2",3130            "47084172-5068-4118-85b1-9d7b41fa0376",3131            "0fd23521-9e89-4234-97be-7d191b812c7e"3132          ],3133          "skipped": [],3134          "duration": 0,3135          "root": false,3136          "rootEmpty": false,3137          "_timeout": 99999993138        },3139        {3140          "uuid": "bf4639b9-c375-4f1b-9282-6dfc0923585c",3141          "title": "integration test: ext. createCollection():",3142          "fullFile": "/nft_parachain/tests/src/createCollection.test.ts",3143          "file": "/src/createCollection.test.ts",3144          "beforeHooks": [],3145          "afterHooks": [],3146          "tests": [3147            {3148              "title": "Create new NFT collection",3149              "fullTitle": "integration test: ext. createCollection(): Create new NFT collection",3150              "timedOut": false,3151              "duration": 0,3152              "state": null,3153              "speed": null,3154              "pass": false,3155              "fail": false,3156              "pending": false,3157              "context": null,3158              "code": "await helpers_1.createCollectionExpectSuccess({ name: 'A', description: 'B', tokenPrefix: 'C', mode: { type: 'NFT' } });",3159              "err": {},3160              "uuid": "0f328998-69e2-4773-a450-5e528a55d733",3161              "parentUUID": null,3162              "isHook": false,3163              "skipped": true3164            },3165            {3166              "title": "Create new NFT collection whith collection_name of maximum length (64 bytes)",3167              "fullTitle": "integration test: ext. createCollection(): Create new NFT collection whith collection_name of maximum length (64 bytes)",3168              "timedOut": false,3169              "duration": 0,3170              "state": null,3171              "speed": null,3172              "pass": false,3173              "fail": false,3174              "pending": false,3175              "context": null,3176              "code": "await helpers_1.createCollectionExpectSuccess({ name: 'A'.repeat(64) });",3177              "err": {},3178              "uuid": "3b912026-7a85-4f13-881b-2e33a3d62e9a",3179              "parentUUID": null,3180              "isHook": false,3181              "skipped": true3182            },3183            {3184              "title": "Create new NFT collection whith collection_description of maximum length (256 bytes)",3185              "fullTitle": "integration test: ext. createCollection(): Create new NFT collection whith collection_description of maximum length (256 bytes)",3186              "timedOut": false,3187              "duration": 0,3188              "state": null,3189              "speed": null,3190              "pass": false,3191              "fail": false,3192              "pending": false,3193              "context": null,3194              "code": "await helpers_1.createCollectionExpectSuccess({ description: 'A'.repeat(256) });",3195              "err": {},3196              "uuid": "779e3c68-ea23-4575-8e6b-d9c7ae101cc7",3197              "parentUUID": null,3198              "isHook": false,3199              "skipped": true3200            },3201            {3202              "title": "Create new NFT collection whith token_prefix of maximum length (16 bytes)",3203              "fullTitle": "integration test: ext. createCollection(): Create new NFT collection whith token_prefix of maximum length (16 bytes)",3204              "timedOut": false,3205              "duration": 0,3206              "state": null,3207              "speed": null,3208              "pass": false,3209              "fail": false,3210              "pending": false,3211              "context": null,3212              "code": "await helpers_1.createCollectionExpectSuccess({ tokenPrefix: 'A'.repeat(16) });",3213              "err": {},3214              "uuid": "f5f2387d-7ff0-4cd5-90fb-5391d9d23313",3215              "parentUUID": null,3216              "isHook": false,3217              "skipped": true3218            },3219            {3220              "title": "Create new Fungible collection",3221              "fullTitle": "integration test: ext. createCollection(): Create new Fungible collection",3222              "timedOut": false,3223              "duration": 0,3224              "state": null,3225              "speed": null,3226              "pass": false,3227              "fail": false,3228              "pending": false,3229              "context": null,3230              "code": "await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });",3231              "err": {},3232              "uuid": "6329e7c6-186c-47aa-808f-6c1ba6520459",3233              "parentUUID": null,3234              "isHook": false,3235              "skipped": true3236            },3237            {3238              "title": "Create new ReFungible collection",3239              "fullTitle": "integration test: ext. createCollection(): Create new ReFungible collection",3240              "timedOut": false,3241              "duration": 0,3242              "state": null,3243              "speed": null,3244              "pass": false,3245              "fail": false,3246              "pending": false,3247              "context": null,3248              "code": "await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });",3249              "err": {},3250              "uuid": "03366c56-3814-4715-99cf-33baac1f84c5",3251              "parentUUID": null,3252              "isHook": false,3253              "skipped": true3254            }3255          ],3256          "suites": [],3257          "passes": [],3258          "failures": [],3259          "pending": [],3260          "skipped": [3261            "0f328998-69e2-4773-a450-5e528a55d733",3262            "3b912026-7a85-4f13-881b-2e33a3d62e9a",3263            "779e3c68-ea23-4575-8e6b-d9c7ae101cc7",3264            "f5f2387d-7ff0-4cd5-90fb-5391d9d23313",3265            "6329e7c6-186c-47aa-808f-6c1ba6520459",3266            "03366c56-3814-4715-99cf-33baac1f84c5"3267          ],3268          "duration": 0,3269          "root": false,3270          "rootEmpty": false,3271          "_timeout": 99999993272        },3273        {3274          "uuid": "a295c2d7-d283-4e68-a345-3daa44dffca9",3275          "title": "(!negative test!) integration test: ext. createCollection():",3276          "fullFile": "/nft_parachain/tests/src/createCollection.test.ts",3277          "file": "/src/createCollection.test.ts",3278          "beforeHooks": [],3279          "afterHooks": [],3280          "tests": [3281            {3282              "title": "(!negative test!) create new NFT collection whith incorrect data (mode)",3283              "fullTitle": "(!negative test!) integration test: ext. createCollection(): (!negative test!) create new NFT collection whith incorrect data (mode)",3284              "timedOut": false,3285              "duration": 0,3286              "state": null,3287              "speed": null,3288              "pass": false,3289              "fail": false,3290              "pending": false,3291              "context": null,3292              "code": "await substrate_api_1.default(async (api) => {\n    const AcollectionCount = parseInt((await api.query.nft.createdCollectionCount()).toString(), 10);\n    const badTransaction = async () => {\n        await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Invalid' } });\n    };\n    // tslint:disable-next-line:no-unused-expression\n    expect(badTransaction()).to.be.rejected;\n    const BcollectionCount = parseInt((await api.query.nft.createdCollectionCount()).toString(), 10);\n    expect(BcollectionCount).to.be.equal(AcollectionCount, 'Error: Incorrect collection created.');\n});",3293              "err": {},3294              "uuid": "d83a661f-a409-452b-b322-4e3708101361",3295              "parentUUID": null,3296              "isHook": false,3297              "skipped": true3298            },3299            {3300              "title": "(!negative test!) create new NFT collection whith incorrect data (collection_name)",3301              "fullTitle": "(!negative test!) integration test: ext. createCollection(): (!negative test!) create new NFT collection whith incorrect data (collection_name)",3302              "timedOut": false,3303              "duration": 0,3304              "state": null,3305              "speed": null,3306              "pass": false,3307              "fail": false,3308              "pending": false,3309              "context": null,3310              "code": "await helpers_1.createCollectionExpectFailure({ name: 'A'.repeat(65), mode: { type: 'NFT' } });",3311              "err": {},3312              "uuid": "7d6758ad-10e3-4466-b647-4d9220c70b03",3313              "parentUUID": null,3314              "isHook": false,3315              "skipped": true3316            },3317            {3318              "title": "(!negative test!) create new NFT collection whith incorrect data (collection_description)",3319              "fullTitle": "(!negative test!) integration test: ext. createCollection(): (!negative test!) create new NFT collection whith incorrect data (collection_description)",3320              "timedOut": false,3321              "duration": 0,3322              "state": null,3323              "speed": null,3324              "pass": false,3325              "fail": false,3326              "pending": false,3327              "context": null,3328              "code": "await helpers_1.createCollectionExpectFailure({ description: 'A'.repeat(257), mode: { type: 'NFT' } });",3329              "err": {},3330              "uuid": "3ba21132-1816-420a-abcc-da80f46e87a3",3331              "parentUUID": null,3332              "isHook": false,3333              "skipped": true3334            },3335            {3336              "title": "(!negative test!) create new NFT collection whith incorrect data (token_prefix)",3337              "fullTitle": "(!negative test!) integration test: ext. createCollection(): (!negative test!) create new NFT collection whith incorrect data (token_prefix)",3338              "timedOut": false,3339              "duration": 0,3340              "state": null,3341              "speed": null,3342              "pass": false,3343              "fail": false,3344              "pending": false,3345              "context": null,3346              "code": "await helpers_1.createCollectionExpectFailure({ tokenPrefix: 'A'.repeat(17), mode: { type: 'NFT' } });",3347              "err": {},3348              "uuid": "78b8acf1-36a3-4104-9b4c-f80cbabf95af",3349              "parentUUID": null,3350              "isHook": false,3351              "skipped": true3352            }3353          ],3354          "suites": [],3355          "passes": [],3356          "failures": [],3357          "pending": [],3358          "skipped": [3359            "d83a661f-a409-452b-b322-4e3708101361",3360            "7d6758ad-10e3-4466-b647-4d9220c70b03",3361            "3ba21132-1816-420a-abcc-da80f46e87a3",3362            "78b8acf1-36a3-4104-9b4c-f80cbabf95af"3363          ],3364          "duration": 0,3365          "root": false,3366          "rootEmpty": false,3367          "_timeout": 99999993368        },3369        {3370          "uuid": "86873356-b6ed-4bf9-9ffb-6060b7757ace",3371          "title": "integration test: ext. createItem():",3372          "fullFile": "/nft_parachain/tests/src/createItem.test.ts",3373          "file": "/src/createItem.test.ts",3374          "beforeHooks": [3375            {3376              "title": "\"before all\" hook",3377              "fullTitle": "integration test: ext. createItem(): \"before all\" hook",3378              "timedOut": false,3379              "duration": 0,3380              "state": null,3381              "speed": null,3382              "pass": false,3383              "fail": false,3384              "pending": false,3385              "context": null,3386              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",3387              "err": {},3388              "uuid": "a77cc8c0-c5c3-463b-a710-af175ab1ae33",3389              "parentUUID": null,3390              "isHook": true,3391              "skipped": false3392            }3393          ],3394          "afterHooks": [],3395          "tests": [3396            {3397              "title": "Create new item in NFT collection",3398              "fullTitle": "integration test: ext. createItem(): Create new item in NFT collection",3399              "timedOut": false,3400              "duration": 0,3401              "state": null,3402              "speed": null,3403              "pass": false,3404              "fail": false,3405              "pending": false,3406              "context": null,3407              "code": "const createMode = 'NFT';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nawait helpers_1.createItemExpectSuccess(alice, newCollectionID, createMode);",3408              "err": {},3409              "uuid": "d49d97df-b93b-4980-8377-088992f5a97c",3410              "parentUUID": null,3411              "isHook": false,3412              "skipped": true3413            },3414            {3415              "title": "Create new item in Fungible collection",3416              "fullTitle": "integration test: ext. createItem(): Create new item in Fungible collection",3417              "timedOut": false,3418              "duration": 0,3419              "state": null,3420              "speed": null,3421              "pass": false,3422              "fail": false,3423              "pending": false,3424              "context": null,3425              "code": "const createMode = 'Fungible';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode, decimalPoints: 0 } });\nawait helpers_1.createItemExpectSuccess(alice, newCollectionID, createMode);",3426              "err": {},3427              "uuid": "17151dee-f03e-4576-be19-0bff3dbb99b1",3428              "parentUUID": null,3429              "isHook": false,3430              "skipped": true3431            },3432            {3433              "title": "Create new item in ReFungible collection",3434              "fullTitle": "integration test: ext. createItem(): Create new item in ReFungible collection",3435              "timedOut": false,3436              "duration": 0,3437              "state": null,3438              "speed": null,3439              "pass": false,3440              "fail": false,3441              "pending": false,3442              "context": null,3443              "code": "const createMode = 'ReFungible';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nawait helpers_1.createItemExpectSuccess(alice, newCollectionID, createMode);",3444              "err": {},3445              "uuid": "a843d3cf-c669-4f8d-ac0f-69ad79f4399f",3446              "parentUUID": null,3447              "isHook": false,3448              "skipped": true3449            },3450            {3451              "title": "Create new item in NFT collection with collection admin permissions",3452              "fullTitle": "integration test: ext. createItem(): Create new item in NFT collection with collection admin permissions",3453              "timedOut": false,3454              "duration": 0,3455              "state": null,3456              "speed": null,3457              "pass": false,3458              "fail": false,3459              "pending": false,3460              "context": null,3461              "code": "const createMode = 'NFT';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nawait helpers_1.addCollectionAdminExpectSuccess(alice, newCollectionID, bob);\nawait helpers_1.createItemExpectSuccess(bob, newCollectionID, createMode);",3462              "err": {},3463              "uuid": "0d53673a-eea6-48cb-a347-58826b2f4e0c",3464              "parentUUID": null,3465              "isHook": false,3466              "skipped": true3467            },3468            {3469              "title": "Create new item in Fungible collection with collection admin permissions",3470              "fullTitle": "integration test: ext. createItem(): Create new item in Fungible collection with collection admin permissions",3471              "timedOut": false,3472              "duration": 0,3473              "state": null,3474              "speed": null,3475              "pass": false,3476              "fail": false,3477              "pending": false,3478              "context": null,3479              "code": "const createMode = 'Fungible';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode, decimalPoints: 0 } });\nawait helpers_1.addCollectionAdminExpectSuccess(alice, newCollectionID, bob);\nawait helpers_1.createItemExpectSuccess(bob, newCollectionID, createMode);",3480              "err": {},3481              "uuid": "f2079a87-c322-48f3-8c55-b039dfa6a631",3482              "parentUUID": null,3483              "isHook": false,3484              "skipped": true3485            },3486            {3487              "title": "Create new item in ReFungible collection with collection admin permissions",3488              "fullTitle": "integration test: ext. createItem(): Create new item in ReFungible collection with collection admin permissions",3489              "timedOut": false,3490              "duration": 0,3491              "state": null,3492              "speed": null,3493              "pass": false,3494              "fail": false,3495              "pending": false,3496              "context": null,3497              "code": "const createMode = 'ReFungible';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nawait helpers_1.addCollectionAdminExpectSuccess(alice, newCollectionID, bob);\nawait helpers_1.createItemExpectSuccess(bob, newCollectionID, createMode);",3498              "err": {},3499              "uuid": "440acee4-6142-4675-a0c9-8bf8eed167fe",3500              "parentUUID": null,3501              "isHook": false,3502              "skipped": true3503            }3504          ],3505          "suites": [],3506          "passes": [],3507          "failures": [],3508          "pending": [],3509          "skipped": [3510            "d49d97df-b93b-4980-8377-088992f5a97c",3511            "17151dee-f03e-4576-be19-0bff3dbb99b1",3512            "a843d3cf-c669-4f8d-ac0f-69ad79f4399f",3513            "0d53673a-eea6-48cb-a347-58826b2f4e0c",3514            "f2079a87-c322-48f3-8c55-b039dfa6a631",3515            "440acee4-6142-4675-a0c9-8bf8eed167fe"3516          ],3517          "duration": 0,3518          "root": false,3519          "rootEmpty": false,3520          "_timeout": 99999993521        },3522        {3523          "uuid": "d8760f1e-4b04-4384-ae6a-1f3f2e98bf80",3524          "title": "Negative integration test: ext. createItem():",3525          "fullFile": "/nft_parachain/tests/src/createItem.test.ts",3526          "file": "/src/createItem.test.ts",3527          "beforeHooks": [3528            {3529              "title": "\"before all\" hook",3530              "fullTitle": "Negative integration test: ext. createItem(): \"before all\" hook",3531              "timedOut": false,3532              "duration": 0,3533              "state": null,3534              "speed": null,3535              "pass": false,3536              "fail": false,3537              "pending": false,3538              "context": null,3539              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",3540              "err": {},3541              "uuid": "f7f7d52d-b852-444c-b448-41eedd575398",3542              "parentUUID": null,3543              "isHook": true,3544              "skipped": false3545            }3546          ],3547          "afterHooks": [],3548          "tests": [3549            {3550              "title": "Regular user cannot create new item in NFT collection",3551              "fullTitle": "Negative integration test: ext. createItem(): Regular user cannot create new item in NFT collection",3552              "timedOut": false,3553              "duration": 0,3554              "state": null,3555              "speed": null,3556              "pass": false,3557              "fail": false,3558              "pending": false,3559              "context": null,3560              "code": "const createMode = 'NFT';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nawait expect(helpers_1.createItemExpectSuccess(bob, newCollectionID, createMode)).to.be.rejected;",3561              "err": {},3562              "uuid": "343c1699-ab93-43b5-b20c-9991e6e94c78",3563              "parentUUID": null,3564              "isHook": false,3565              "skipped": true3566            },3567            {3568              "title": "Regular user cannot create new item in Fungible collection",3569              "fullTitle": "Negative integration test: ext. createItem(): Regular user cannot create new item in Fungible collection",3570              "timedOut": false,3571              "duration": 0,3572              "state": null,3573              "speed": null,3574              "pass": false,3575              "fail": false,3576              "pending": false,3577              "context": null,3578              "code": "const createMode = 'Fungible';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode, decimalPoints: 0 } });\nawait expect(helpers_1.createItemExpectSuccess(bob, newCollectionID, createMode)).to.be.rejected;",3579              "err": {},3580              "uuid": "4a67baef-0ec5-44d9-827f-2db5d6752940",3581              "parentUUID": null,3582              "isHook": false,3583              "skipped": true3584            },3585            {3586              "title": "Regular user cannot create new item in ReFungible collection",3587              "fullTitle": "Negative integration test: ext. createItem(): Regular user cannot create new item in ReFungible collection",3588              "timedOut": false,3589              "duration": 0,3590              "state": null,3591              "speed": null,3592              "pass": false,3593              "fail": false,3594              "pending": false,3595              "context": null,3596              "code": "const createMode = 'ReFungible';\nconst newCollectionID = await helpers_1.createCollectionExpectSuccess({ mode: { type: createMode } });\nawait expect(helpers_1.createItemExpectSuccess(bob, newCollectionID, createMode)).to.be.rejected;",3597              "err": {},3598              "uuid": "723df5d5-8595-4e32-9ab1-f3d6831235c0",3599              "parentUUID": null,3600              "isHook": false,3601              "skipped": true3602            }3603          ],3604          "suites": [],3605          "passes": [],3606          "failures": [],3607          "pending": [],3608          "skipped": [3609            "343c1699-ab93-43b5-b20c-9991e6e94c78",3610            "4a67baef-0ec5-44d9-827f-2db5d6752940",3611            "723df5d5-8595-4e32-9ab1-f3d6831235c0"3612          ],3613          "duration": 0,3614          "root": false,3615          "rootEmpty": false,3616          "_timeout": 99999993617        },3618        {3619          "uuid": "64eb7f91-3e10-4ccf-9650-651719037593",3620          "title": "Integration Test createMultipleItems(collection_id, owner, items_data):",3621          "fullFile": "/nft_parachain/tests/src/createMultipleItems.test.ts",3622          "file": "/src/createMultipleItems.test.ts",3623          "beforeHooks": [],3624          "afterHooks": [],3625          "tests": [3626            {3627              "title": "Create  0x31, 0x32, 0x33 items in active NFT collection and verify tokens data in chain",3628              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data): Create  0x31, 0x32, 0x33 items in active NFT collection and verify tokens data in chain",3629              "timedOut": false,3630              "duration": 0,3631              "state": null,3632              "speed": null,3633              "pass": false,3634              "fail": false,3635              "pending": false,3636              "context": null,3637              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    const Alice = privateKey_1.default('//Alice');\n    const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await substrate_api_1.submitTransactionAsync(Alice, createMultipleItemsTx);\n    const itemsListIndexAfter = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexAfter.toNumber()).to.be.equal(3);\n    const token1Data = (await api.query.nft.nftItemList(collectionId, 1)).toJSON();\n    const token2Data = (await api.query.nft.nftItemList(collectionId, 2)).toJSON();\n    const token3Data = (await api.query.nft.nftItemList(collectionId, 3)).toJSON();\n    expect(token1Data.Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Alice.address));\n    expect(token2Data.Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Alice.address));\n    expect(token3Data.Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Alice.address));\n    expect(token1Data.ConstData.toString()).to.be.equal('0x31');\n    expect(token2Data.ConstData.toString()).to.be.equal('0x32');\n    expect(token3Data.ConstData.toString()).to.be.equal('0x33');\n    expect(token1Data.VariableData.toString()).to.be.equal('0x31');\n    expect(token2Data.VariableData.toString()).to.be.equal('0x32');\n    expect(token3Data.VariableData.toString()).to.be.equal('0x33');\n});",3638              "err": {},3639              "uuid": "dde52380-97a1-4527-81e5-6210ed37b0e0",3640              "parentUUID": null,3641              "isHook": false,3642              "skipped": true3643            },3644            {3645              "title": "Create  0x01, 0x02, 0x03 items in active Fungible collection and verify tokens data in chain",3646              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data): Create  0x01, 0x02, 0x03 items in active Fungible collection and verify tokens data in chain",3647              "timedOut": false,3648              "duration": 0,3649              "state": null,3650              "speed": null,3651              "pass": false,3652              "fail": false,3653              "pending": false,3654              "context": null,3655              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    const Alice = privateKey_1.default('//Alice');\n    const args = [\n        { fungible: { value: 1 } },\n        { fungible: { value: 2 } },\n        { fungible: { value: 3 } },\n    ];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await substrate_api_1.submitTransactionAsync(Alice, createMultipleItemsTx);\n    const token1Data = (await api.query.nft.fungibleItemList(collectionId, Alice.address)).toJSON();\n    expect(token1Data.Value).to.be.equal(6); // 1 + 2 + 3\n});",3656              "err": {},3657              "uuid": "2e4b5045-d586-4ea0-886c-48a123adbec8",3658              "parentUUID": null,3659              "isHook": false,3660              "skipped": true3661            },3662            {3663              "title": "Create  0x31, 0x32, 0x33 items in active ReFungible collection and verify tokens data in chain",3664              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data): Create  0x31, 0x32, 0x33 items in active ReFungible collection and verify tokens data in chain",3665              "timedOut": false,3666              "duration": 0,3667              "state": null,3668              "speed": null,3669              "pass": false,3670              "fail": false,3671              "pending": false,3672              "context": null,3673              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    const Alice = privateKey_1.default('//Alice');\n    const args = [\n        { refungible: { const_data: [0x31], variable_data: [0x31], pieces: 1 } },\n        { refungible: { const_data: [0x32], variable_data: [0x32], pieces: 1 } },\n        { refungible: { const_data: [0x33], variable_data: [0x33], pieces: 1 } },\n    ];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await substrate_api_1.submitTransactionAsync(Alice, createMultipleItemsTx);\n    const itemsListIndexAfter = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexAfter.toNumber()).to.be.equal(3);\n    const token1Data = (await api.query.nft.reFungibleItemList(collectionId, 1)).toJSON();\n    const token2Data = (await api.query.nft.reFungibleItemList(collectionId, 2)).toJSON();\n    const token3Data = (await api.query.nft.reFungibleItemList(collectionId, 3)).toJSON();\n    expect(token1Data.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Alice.address));\n    expect(token1Data.Owner[0].Fraction).to.be.equal(1);\n    expect(token2Data.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Alice.address));\n    expect(token2Data.Owner[0].Fraction).to.be.equal(1);\n    expect(token3Data.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Alice.address));\n    expect(token3Data.Owner[0].Fraction).to.be.equal(1);\n    expect(token1Data.ConstData.toString()).to.be.equal('0x31');\n    expect(token2Data.ConstData.toString()).to.be.equal('0x32');\n    expect(token3Data.ConstData.toString()).to.be.equal('0x33');\n    expect(token1Data.VariableData.toString()).to.be.equal('0x31');\n    expect(token2Data.VariableData.toString()).to.be.equal('0x32');\n    expect(token3Data.VariableData.toString()).to.be.equal('0x33');\n});",3674              "err": {},3675              "uuid": "10ac40e1-7fcc-4104-b52a-f9bb3c5eec14",3676              "parentUUID": null,3677              "isHook": false,3678              "skipped": true3679            },3680            {3681              "title": "Can mint amount of items equals to collection limits",3682              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data): Can mint amount of items equals to collection limits",3683              "timedOut": false,3684              "duration": 0,3685              "state": null,3686              "speed": null,3687              "pass": false,3688              "fail": false,3689              "pending": false,3690              "context": null,3691              "code": "await substrate_api_1.default(async (api) => {\n    const alice = privateKey_1.default('//Alice');\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, {\n        TokenLimit: 2,\n    });\n    const args = [\n        { nft: ['A', 'A'] },\n        { nft: ['B', 'B'] },\n    ];\n    const createMultipleItemsTx = api.tx.nft.createMultipleItems(collectionId, helpers_1.normalizeAccountId(alice.address), args);\n    const events = await substrate_api_1.submitTransactionAsync(alice, createMultipleItemsTx);\n    const result = helpers_1.getGenericResult(events);\n    expect(result.success).to.be.true;\n});",3692              "err": {},3693              "uuid": "d2aa77dc-43c0-4eb1-87ed-99e59b7c8699",3694              "parentUUID": null,3695              "isHook": false,3696              "skipped": true3697            }3698          ],3699          "suites": [],3700          "passes": [],3701          "failures": [],3702          "pending": [],3703          "skipped": [3704            "dde52380-97a1-4527-81e5-6210ed37b0e0",3705            "2e4b5045-d586-4ea0-886c-48a123adbec8",3706            "10ac40e1-7fcc-4104-b52a-f9bb3c5eec14",3707            "d2aa77dc-43c0-4eb1-87ed-99e59b7c8699"3708          ],3709          "duration": 0,3710          "root": false,3711          "rootEmpty": false,3712          "_timeout": 99999993713        },3714        {3715          "uuid": "1d0a4943-7714-4aee-97fb-92e9815a934e",3716          "title": "Integration Test createMultipleItems(collection_id, owner, items_data) with collection admin permissions:",3717          "fullFile": "/nft_parachain/tests/src/createMultipleItems.test.ts",3718          "file": "/src/createMultipleItems.test.ts",3719          "beforeHooks": [3720            {3721              "title": "\"before all\" hook",3722              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data) with collection admin permissions: \"before all\" hook",3723              "timedOut": false,3724              "duration": 0,3725              "state": null,3726              "speed": null,3727              "pass": false,3728              "fail": false,3729              "pending": false,3730              "context": null,3731              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",3732              "err": {},3733              "uuid": "4b8317d6-26d2-4a76-b36f-021b60e22414",3734              "parentUUID": null,3735              "isHook": true,3736              "skipped": false3737            }3738          ],3739          "afterHooks": [],3740          "tests": [3741            {3742              "title": "Create  0x31, 0x32, 0x33 items in active NFT collection and verify tokens data in chain",3743              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data) with collection admin permissions: Create  0x31, 0x32, 0x33 items in active NFT collection and verify tokens data in chain",3744              "timedOut": false,3745              "duration": 0,3746              "state": null,3747              "speed": null,3748              "pass": false,3749              "fail": false,3750              "pending": false,3751              "context": null,3752              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\n    const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Bob.address), args);\n    await substrate_api_1.submitTransactionAsync(Bob, createMultipleItemsTx);\n    const itemsListIndexAfter = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexAfter.toNumber()).to.be.equal(3);\n    const token1Data = (await api.query.nft.nftItemList(collectionId, 1)).toJSON();\n    const token2Data = (await api.query.nft.nftItemList(collectionId, 2)).toJSON();\n    const token3Data = (await api.query.nft.nftItemList(collectionId, 3)).toJSON();\n    expect(token1Data.Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Bob.address));\n    expect(token2Data.Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Bob.address));\n    expect(token3Data.Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Bob.address));\n    expect(token1Data.ConstData.toString()).to.be.equal('0x31');\n    expect(token2Data.ConstData.toString()).to.be.equal('0x32');\n    expect(token3Data.ConstData.toString()).to.be.equal('0x33');\n    expect(token1Data.VariableData.toString()).to.be.equal('0x31');\n    expect(token2Data.VariableData.toString()).to.be.equal('0x32');\n    expect(token3Data.VariableData.toString()).to.be.equal('0x33');\n});",3753              "err": {},3754              "uuid": "bb637f9d-b9ea-451c-a30a-492542fd6843",3755              "parentUUID": null,3756              "isHook": false,3757              "skipped": true3758            },3759            {3760              "title": "Create  0x01, 0x02, 0x03 items in active Fungible collection and verify tokens data in chain",3761              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data) with collection admin permissions: Create  0x01, 0x02, 0x03 items in active Fungible collection and verify tokens data in chain",3762              "timedOut": false,3763              "duration": 0,3764              "state": null,3765              "speed": null,3766              "pass": false,3767              "fail": false,3768              "pending": false,3769              "context": null,3770              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\n    const args = [\n        { fungible: { value: 1 } },\n        { fungible: { value: 2 } },\n        { fungible: { value: 3 } },\n    ];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Bob.address), args);\n    await substrate_api_1.submitTransactionAsync(Bob, createMultipleItemsTx);\n    const token1Data = (await api.query.nft.fungibleItemList(collectionId, Bob.address)).toJSON();\n    expect(token1Data.Value).to.be.equal(6); // 1 + 2 + 3\n});",3771              "err": {},3772              "uuid": "c46c8746-1cc5-453e-90d1-d923be03f694",3773              "parentUUID": null,3774              "isHook": false,3775              "skipped": true3776            },3777            {3778              "title": "Create  0x31, 0x32, 0x33 items in active ReFungible collection and verify tokens data in chain",3779              "fullTitle": "Integration Test createMultipleItems(collection_id, owner, items_data) with collection admin permissions: Create  0x31, 0x32, 0x33 items in active ReFungible collection and verify tokens data in chain",3780              "timedOut": false,3781              "duration": 0,3782              "state": null,3783              "speed": null,3784              "pass": false,3785              "fail": false,3786              "pending": false,3787              "context": null,3788              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\n    const args = [\n        { refungible: { const_data: [0x31], variable_data: [0x31], pieces: 1 } },\n        { refungible: { const_data: [0x32], variable_data: [0x32], pieces: 1 } },\n        { refungible: { const_data: [0x33], variable_data: [0x33], pieces: 1 } },\n    ];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Bob.address), args);\n    await substrate_api_1.submitTransactionAsync(Bob, createMultipleItemsTx);\n    const itemsListIndexAfter = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexAfter.toNumber()).to.be.equal(3);\n    const token1Data = (await api.query.nft.reFungibleItemList(collectionId, 1)).toJSON();\n    const token2Data = (await api.query.nft.reFungibleItemList(collectionId, 2)).toJSON();\n    const token3Data = (await api.query.nft.reFungibleItemList(collectionId, 3)).toJSON();\n    expect(token1Data.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Bob.address));\n    expect(token1Data.Owner[0].Fraction).to.be.equal(1);\n    expect(token2Data.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Bob.address));\n    expect(token2Data.Owner[0].Fraction).to.be.equal(1);\n    expect(token3Data.Owner[0].Owner).to.be.deep.equal(helpers_1.normalizeAccountId(Bob.address));\n    expect(token3Data.Owner[0].Fraction).to.be.equal(1);\n    expect(token1Data.ConstData.toString()).to.be.equal('0x31');\n    expect(token2Data.ConstData.toString()).to.be.equal('0x32');\n    expect(token3Data.ConstData.toString()).to.be.equal('0x33');\n    expect(token1Data.VariableData.toString()).to.be.equal('0x31');\n    expect(token2Data.VariableData.toString()).to.be.equal('0x32');\n    expect(token3Data.VariableData.toString()).to.be.equal('0x33');\n});",3789              "err": {},3790              "uuid": "505dee22-4a1b-4911-b40e-e4b124c5b5fa",3791              "parentUUID": null,3792              "isHook": false,3793              "skipped": true3794            }3795          ],3796          "suites": [],3797          "passes": [],3798          "failures": [],3799          "pending": [],3800          "skipped": [3801            "bb637f9d-b9ea-451c-a30a-492542fd6843",3802            "c46c8746-1cc5-453e-90d1-d923be03f694",3803            "505dee22-4a1b-4911-b40e-e4b124c5b5fa"3804          ],3805          "duration": 0,3806          "root": false,3807          "rootEmpty": false,3808          "_timeout": 99999993809        },3810        {3811          "uuid": "8288ec61-5a92-4dc4-95cd-f66b844286ac",3812          "title": "Negative Integration Test createMultipleItems(collection_id, owner, items_data):",3813          "fullFile": "/nft_parachain/tests/src/createMultipleItems.test.ts",3814          "file": "/src/createMultipleItems.test.ts",3815          "beforeHooks": [3816            {3817              "title": "\"before all\" hook",3818              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): \"before all\" hook",3819              "timedOut": false,3820              "duration": 0,3821              "state": null,3822              "speed": null,3823              "pass": false,3824              "fail": false,3825              "pending": false,3826              "context": null,3827              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",3828              "err": {},3829              "uuid": "533cb0fd-f60f-44cc-9049-454848ccdcf8",3830              "parentUUID": null,3831              "isHook": true,3832              "skipped": false3833            }3834          ],3835          "afterHooks": [],3836          "tests": [3837            {3838              "title": "Regular user cannot create items in active NFT collection",3839              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Regular user cannot create items in active NFT collection",3840              "timedOut": false,3841              "duration": 0,3842              "state": null,3843              "speed": null,3844              "pass": false,3845              "fail": false,3846              "pending": false,3847              "context": null,3848              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    const args = [{ nft: ['0x31', '0x31'] }, { nft: ['0x32', '0x32'] }, { nft: ['0x33', '0x33'] }];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await expect(substrate_api_1.submitTransactionAsync(Bob, createMultipleItemsTx)).to.be.rejected;\n});",3849              "err": {},3850              "uuid": "0b0aa09f-6e5c-462f-86e4-86fb59d07e3a",3851              "parentUUID": null,3852              "isHook": false,3853              "skipped": true3854            },3855            {3856              "title": "Regular user cannot create items in active Fungible collection",3857              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Regular user cannot create items in active Fungible collection",3858              "timedOut": false,3859              "duration": 0,3860              "state": null,3861              "speed": null,3862              "pass": false,3863              "fail": false,3864              "pending": false,3865              "context": null,3866              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    const args = [\n        { fungible: { value: 1 } },\n        { fungible: { value: 2 } },\n        { fungible: { value: 3 } },\n    ];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await expect(substrate_api_1.submitTransactionAsync(Bob, createMultipleItemsTx)).to.be.rejected;\n});",3867              "err": {},3868              "uuid": "3c3fda06-6710-4b6b-b3c3-646378b4ae92",3869              "parentUUID": null,3870              "isHook": false,3871              "skipped": true3872            },3873            {3874              "title": "Regular user cannot create items in active ReFungible collection",3875              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Regular user cannot create items in active ReFungible collection",3876              "timedOut": false,3877              "duration": 0,3878              "state": null,3879              "speed": null,3880              "pass": false,3881              "fail": false,3882              "pending": false,3883              "context": null,3884              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const itemsListIndexBefore = await api.query.nft.itemListIndex(collectionId);\n    expect(itemsListIndexBefore.toNumber()).to.be.equal(0);\n    const args = [\n        { refungible: { const_data: [0x31], variable_data: [0x31], pieces: 1 } },\n        { refungible: { const_data: [0x32], variable_data: [0x32], pieces: 1 } },\n        { refungible: { const_data: [0x33], variable_data: [0x33], pieces: 1 } },\n    ];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await expect(substrate_api_1.submitTransactionAsync(Bob, createMultipleItemsTx)).to.be.rejected;\n});",3885              "err": {},3886              "uuid": "baf53ce7-d08d-483e-88d0-a4b2075b3d1f",3887              "parentUUID": null,3888              "isHook": false,3889              "skipped": true3890            },3891            {3892              "title": "Create token with not existing type",3893              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Create token with not existing type",3894              "timedOut": false,3895              "duration": 0,3896              "state": null,3897              "speed": null,3898              "pass": false,3899              "fail": false,3900              "pending": false,3901              "context": null,3902              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    try {\n        const args = [{ invalid: null }, { invalid: null }, { invalid: null }];\n        const createMultipleItemsTx = await api.tx.nft\n            .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n        await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, createMultipleItemsTx)).to.be.rejected;\n    }\n    catch (e) {\n        // tslint:disable-next-line:no-unused-expression\n        expect(e).to.be.exist;\n    }\n});",3903              "err": {},3904              "uuid": "168fcf78-ea46-4da2-9260-cf769a9ec1b7",3905              "parentUUID": null,3906              "isHook": false,3907              "skipped": true3908            },3909            {3910              "title": "Create token in not existing collection",3911              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Create token in not existing collection",3912              "timedOut": false,3913              "duration": 0,3914              "state": null,3915              "speed": null,3916              "pass": false,3917              "fail": false,3918              "pending": false,3919              "context": null,3920              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), ['NFT', 'NFT', 'NFT']);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, createMultipleItemsTx)).to.be.rejected;\n});",3921              "err": {},3922              "uuid": "93ac2bab-a5ad-4328-96a9-3f1fdbf33dd8",3923              "parentUUID": null,3924              "isHook": false,3925              "skipped": true3926            },3927            {3928              "title": "Create NFT and Re-fungible tokens that has reached the maximum data limit",3929              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Create NFT and Re-fungible tokens that has reached the maximum data limit",3930              "timedOut": false,3931              "duration": 0,3932              "state": null,3933              "speed": null,3934              "pass": false,3935              "fail": false,3936              "pending": false,3937              "context": null,3938              "code": "await substrate_api_1.default(async (api) => {\n    // NFT\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const Alice = privateKey_1.default('//Alice');\n    const args = [\n        { nft: ['A'.repeat(2049), 'A'.repeat(2049)] },\n        { nft: ['B'.repeat(2049), 'B'.repeat(2049)] },\n        { nft: ['C'.repeat(2049), 'C'.repeat(2049)] },\n    ];\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, createMultipleItemsTx)).to.be.rejected;\n    // ReFungible\n    const collectionIdReFungible = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const argsReFungible = [\n        { ReFungible: ['1'.repeat(2049), '1'.repeat(2049), 10] },\n        { ReFungible: ['2'.repeat(2049), '2'.repeat(2049), 10] },\n        { ReFungible: ['3'.repeat(2049), '3'.repeat(2049), 10] },\n    ];\n    const createMultipleItemsTxFungible = api.tx.nft\n        .createMultipleItems(collectionIdReFungible, helpers_1.normalizeAccountId(Alice.address), argsReFungible);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, createMultipleItemsTxFungible)).to.be.rejected;\n});",3939              "err": {},3940              "uuid": "88ca0edf-1f0d-4c88-9920-983dec0902f7",3941              "parentUUID": null,3942              "isHook": false,3943              "skipped": true3944            },3945            {3946              "title": "Create tokens with different types",3947              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Create tokens with different types",3948              "timedOut": false,3949              "duration": 0,3950              "state": null,3951              "speed": null,3952              "pass": false,3953              "fail": false,3954              "pending": false,3955              "context": null,3956              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const createMultipleItemsTx = api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), ['NFT', 'Fungible', 'ReFungible']);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, createMultipleItemsTx)).to.be.rejected;\n    // garbage collection :-D\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n});",3957              "err": {},3958              "uuid": "175de1dd-2b17-4cb8-b061-e5a55b5a50e9",3959              "parentUUID": null,3960              "isHook": false,3961              "skipped": true3962            },3963            {3964              "title": "Create tokens with different data limits <> maximum data limit",3965              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Create tokens with different data limits <> maximum data limit",3966              "timedOut": false,3967              "duration": 0,3968              "state": null,3969              "speed": null,3970              "pass": false,3971              "fail": false,3972              "pending": false,3973              "context": null,3974              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const args = [\n        { nft: ['A', 'A'] },\n        { nft: ['B', 'B'.repeat(2049)] },\n        { nft: ['C'.repeat(2049), 'C'] },\n    ];\n    const createMultipleItemsTx = await api.tx.nft\n        .createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, createMultipleItemsTx)).to.be.rejected;\n});",3975              "err": {},3976              "uuid": "2b4d53f9-f5e7-4a23-949a-3ac95b3fbbcd",3977              "parentUUID": null,3978              "isHook": false,3979              "skipped": true3980            },3981            {3982              "title": "Fails when minting tokens exceeds collectionLimits amount",3983              "fullTitle": "Negative Integration Test createMultipleItems(collection_id, owner, items_data): Fails when minting tokens exceeds collectionLimits amount",3984              "timedOut": false,3985              "duration": 0,3986              "state": null,3987              "speed": null,3988              "pass": false,3989              "fail": false,3990              "pending": false,3991              "context": null,3992              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.setCollectionLimitsExpectSuccess(Alice, collectionId, {\n        TokenLimit: 1,\n    });\n    const args = [\n        { nft: ['A', 'A'] },\n        { nft: ['B', 'B'] },\n    ];\n    const createMultipleItemsTx = api.tx.nft.createMultipleItems(collectionId, helpers_1.normalizeAccountId(Alice.address), args);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, createMultipleItemsTx)).to.be.rejected;\n});",3993              "err": {},3994              "uuid": "c08e3a79-415f-432e-ba59-bce028a4fd65",3995              "parentUUID": null,3996              "isHook": false,3997              "skipped": true3998            }3999          ],4000          "suites": [],4001          "passes": [],4002          "failures": [],4003          "pending": [],4004          "skipped": [4005            "0b0aa09f-6e5c-462f-86e4-86fb59d07e3a",4006            "3c3fda06-6710-4b6b-b3c3-646378b4ae92",4007            "baf53ce7-d08d-483e-88d0-a4b2075b3d1f",4008            "168fcf78-ea46-4da2-9260-cf769a9ec1b7",4009            "93ac2bab-a5ad-4328-96a9-3f1fdbf33dd8",4010            "88ca0edf-1f0d-4c88-9920-983dec0902f7",4011            "175de1dd-2b17-4cb8-b061-e5a55b5a50e9",4012            "2b4d53f9-f5e7-4a23-949a-3ac95b3fbbcd",4013            "c08e3a79-415f-432e-ba59-bce028a4fd65"4014          ],4015          "duration": 0,4016          "root": false,4017          "rootEmpty": false,4018          "_timeout": 99999994019        },4020        {4021          "uuid": "36c38616-c13a-4557-9cb9-1c3706f3ac7f",4022          "title": "integration test: Fees must be credited to Treasury:",4023          "fullFile": "/nft_parachain/tests/src/creditFeesToTreasury.test.ts",4024          "file": "/src/creditFeesToTreasury.test.ts",4025          "beforeHooks": [4026            {4027              "title": "\"before all\" hook",4028              "fullTitle": "integration test: Fees must be credited to Treasury: \"before all\" hook",4029              "timedOut": false,4030              "duration": 0,4031              "state": null,4032              "speed": null,4033              "pass": false,4034              "fail": false,4035              "pending": false,4036              "context": null,4037              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n});",4038              "err": {},4039              "uuid": "d82f2f76-897d-4b82-b2fa-668962c68547",4040              "parentUUID": null,4041              "isHook": true,4042              "skipped": false4043            }4044          ],4045          "afterHooks": [],4046          "tests": [4047            {4048              "title": "Total issuance does not change",4049              "fullTitle": "integration test: Fees must be credited to Treasury: Total issuance does not change",4050              "timedOut": false,4051              "duration": 0,4052              "state": null,4053              "speed": null,4054              "pass": false,4055              "fail": false,4056              "pending": false,4057              "context": null,4058              "code": "await substrate_api_1.default(async (api) => {\n    await skipInflationBlock(api);\n    await wait_new_blocks_1.default(api, 1);\n    const totalBefore = new bignumber_js_1.BigNumber((await api.query.balances.totalIssuance()).toString());\n    const alicePrivateKey = privateKey_1.default('//Alice');\n    const amount = new bignumber_js_1.BigNumber(1);\n    const transfer = api.tx.balances.transfer(accounts_1.bobsPublicKey, amount.toFixed());\n    const result = helpers_1.getGenericResult(await substrate_api_1.submitTransactionAsync(alicePrivateKey, transfer));\n    const totalAfter = new bignumber_js_1.BigNumber((await api.query.balances.totalIssuance()).toString());\n    expect(result.success).to.be.true;\n    expect(totalAfter.toFixed()).to.be.equal(totalBefore.toFixed());\n});",4059              "err": {},4060              "uuid": "30283cd1-c50d-47fe-a990-3e1bbb81dc54",4061              "parentUUID": null,4062              "isHook": false,4063              "skipped": true4064            },4065            {4066              "title": "Sender balance decreased by fee+sent amount, Treasury balance increased by fee",4067              "fullTitle": "integration test: Fees must be credited to Treasury: Sender balance decreased by fee+sent amount, Treasury balance increased by fee",4068              "timedOut": false,4069              "duration": 0,4070              "state": null,4071              "speed": null,4072              "pass": false,4073              "fail": false,4074              "pending": false,4075              "context": null,4076              "code": "await substrate_api_1.default(async (api) => {\n    await skipInflationBlock(api);\n    await wait_new_blocks_1.default(api, 1);\n    const alicePrivateKey = privateKey_1.default('//Alice');\n    const treasuryBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(Treasury)).data.free.toString());\n    const aliceBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    const amount = new bignumber_js_1.BigNumber(1);\n    const transfer = api.tx.balances.transfer(accounts_1.bobsPublicKey, amount.toFixed());\n    const result = helpers_1.getGenericResult(await substrate_api_1.submitTransactionAsync(alicePrivateKey, transfer));\n    const treasuryBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(Treasury)).data.free.toString());\n    const aliceBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    const fee = aliceBalanceBefore.minus(aliceBalanceAfter).minus(amount);\n    const treasuryIncrease = treasuryBalanceAfter.minus(treasuryBalanceBefore);\n    expect(result.success).to.be.true;\n    expect(treasuryIncrease.toFixed()).to.be.equal(fee.toFixed());\n});",4077              "err": {},4078              "uuid": "129ec89e-7233-46b1-9406-e8f837ec7df7",4079              "parentUUID": null,4080              "isHook": false,4081              "skipped": true4082            },4083            {4084              "title": "Treasury balance increased by failed tx fee",4085              "fullTitle": "integration test: Fees must be credited to Treasury: Treasury balance increased by failed tx fee",4086              "timedOut": false,4087              "duration": 0,4088              "state": null,4089              "speed": null,4090              "pass": false,4091              "fail": false,4092              "pending": false,4093              "context": null,4094              "code": "await substrate_api_1.default(async (api) => {\n    await skipInflationBlock(api);\n    await wait_new_blocks_1.default(api, 1);\n    const bobPrivateKey = privateKey_1.default('//Bob');\n    const treasuryBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(Treasury)).data.free.toString());\n    const bobBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.bobsPublicKey)).data.free.toString());\n    const badTx = api.tx.balances.setBalance(accounts_1.alicesPublicKey, 0, 0);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(bobPrivateKey, badTx)).to.be.rejected;\n    const treasuryBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(Treasury)).data.free.toString());\n    const bobBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.bobsPublicKey)).data.free.toString());\n    const fee = bobBalanceBefore.minus(bobBalanceAfter);\n    const treasuryIncrease = treasuryBalanceAfter.minus(treasuryBalanceBefore);\n    expect(treasuryIncrease.toFixed()).to.be.equal(fee.toFixed());\n});",4095              "err": {},4096              "uuid": "93062bf3-a522-428b-922b-80684d2cc0a0",4097              "parentUUID": null,4098              "isHook": false,4099              "skipped": true4100            },4101            {4102              "title": "NFT Transactions also send fees to Treasury",4103              "fullTitle": "integration test: Fees must be credited to Treasury: NFT Transactions also send fees to Treasury",4104              "timedOut": false,4105              "duration": 0,4106              "state": null,4107              "speed": null,4108              "pass": false,4109              "fail": false,4110              "pending": false,4111              "context": null,4112              "code": "await substrate_api_1.default(async (api) => {\n    await skipInflationBlock(api);\n    await wait_new_blocks_1.default(api, 1);\n    const treasuryBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(Treasury)).data.free.toString());\n    const aliceBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    await helpers_1.createCollectionExpectSuccess();\n    const treasuryBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(Treasury)).data.free.toString());\n    const aliceBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    const fee = aliceBalanceBefore.minus(aliceBalanceAfter);\n    const treasuryIncrease = treasuryBalanceAfter.minus(treasuryBalanceBefore);\n    expect(treasuryIncrease.toFixed()).to.be.equal(fee.toFixed());\n});",4113              "err": {},4114              "uuid": "9f2156c7-beb1-40eb-84fb-754b080e4575",4115              "parentUUID": null,4116              "isHook": false,4117              "skipped": true4118            },4119            {4120              "title": "Fees are sane",4121              "fullTitle": "integration test: Fees must be credited to Treasury: Fees are sane",4122              "timedOut": false,4123              "duration": 0,4124              "state": null,4125              "speed": null,4126              "pass": false,4127              "fail": false,4128              "pending": false,4129              "context": null,4130              "code": "await substrate_api_1.default(async (api) => {\n    await skipInflationBlock(api);\n    await wait_new_blocks_1.default(api, 1);\n    const aliceBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    await helpers_1.createCollectionExpectSuccess();\n    const aliceBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    const fee = aliceBalanceBefore.minus(aliceBalanceAfter);\n    expect(fee.dividedBy(1e15).toNumber()).to.be.lessThan(saneMaximumFee + createCollectionDeposit);\n    expect(fee.dividedBy(1e15).toNumber()).to.be.greaterThan(saneMinimumFee + createCollectionDeposit);\n});",4131              "err": {},4132              "uuid": "b771b916-77d8-4052-a811-a1080c925937",4133              "parentUUID": null,4134              "isHook": false,4135              "skipped": true4136            },4137            {4138              "title": "NFT Transfer fee is close to 0.1 Unique",4139              "fullTitle": "integration test: Fees must be credited to Treasury: NFT Transfer fee is close to 0.1 Unique",4140              "timedOut": false,4141              "duration": 0,4142              "state": null,4143              "speed": null,4144              "pass": false,4145              "fail": false,4146              "pending": false,4147              "context": null,4148              "code": "await substrate_api_1.default(async (api) => {\n    await skipInflationBlock(api);\n    await wait_new_blocks_1.default(api, 1);\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT');\n    const aliceBalanceBefore = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    await helpers_1.transferExpectSuccess(collectionId, tokenId, alice, bob, 1, 'NFT');\n    const aliceBalanceAfter = new bignumber_js_1.BigNumber((await api.query.system.account(accounts_1.alicesPublicKey)).data.free.toString());\n    const fee = aliceBalanceBefore.minus(aliceBalanceAfter);\n    // console.log(fee.toString());\n    const expectedTransferFee = 0.1;\n    const tolerance = 0.001;\n    expect(fee.dividedBy(1e15).minus(expectedTransferFee).abs().toNumber()).to.be.lessThan(tolerance);\n});",4149              "err": {},4150              "uuid": "959a2708-5f73-4e34-b23b-451db6b792cb",4151              "parentUUID": null,4152              "isHook": false,4153              "skipped": true4154            }4155          ],4156          "suites": [],4157          "passes": [],4158          "failures": [],4159          "pending": [],4160          "skipped": [4161            "30283cd1-c50d-47fe-a990-3e1bbb81dc54",4162            "129ec89e-7233-46b1-9406-e8f837ec7df7",4163            "93062bf3-a522-428b-922b-80684d2cc0a0",4164            "9f2156c7-beb1-40eb-84fb-754b080e4575",4165            "b771b916-77d8-4052-a811-a1080c925937",4166            "959a2708-5f73-4e34-b23b-451db6b792cb"4167          ],4168          "duration": 0,4169          "root": false,4170          "rootEmpty": false,4171          "_timeout": 99999994172        },4173        {4174          "uuid": "690f02a6-5932-480d-bdad-909c7451a15d",4175          "title": "integration test: ext. destroyCollection():",4176          "fullFile": "/nft_parachain/tests/src/destroyCollection.test.ts",4177          "file": "/src/destroyCollection.test.ts",4178          "beforeHooks": [],4179          "afterHooks": [],4180          "tests": [4181            {4182              "title": "NFT collection can be destroyed",4183              "fullTitle": "integration test: ext. destroyCollection(): NFT collection can be destroyed",4184              "timedOut": false,4185              "duration": 0,4186              "state": null,4187              "speed": null,4188              "pass": false,4189              "fail": false,4190              "pending": false,4191              "context": null,4192              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);",4193              "err": {},4194              "uuid": "4180464f-22c6-4e68-a585-4c7dfe2f7fde",4195              "parentUUID": null,4196              "isHook": false,4197              "skipped": true4198            },4199            {4200              "title": "Fungible collection can be destroyed",4201              "fullTitle": "integration test: ext. destroyCollection(): Fungible collection can be destroyed",4202              "timedOut": false,4203              "duration": 0,4204              "state": null,4205              "speed": null,4206              "pass": false,4207              "fail": false,4208              "pending": false,4209              "context": null,4210              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);",4211              "err": {},4212              "uuid": "2e938b8d-c64e-49e5-a704-3b3ad62f2fd8",4213              "parentUUID": null,4214              "isHook": false,4215              "skipped": true4216            },4217            {4218              "title": "ReFungible collection can be destroyed",4219              "fullTitle": "integration test: ext. destroyCollection(): ReFungible collection can be destroyed",4220              "timedOut": false,4221              "duration": 0,4222              "state": null,4223              "speed": null,4224              "pass": false,4225              "fail": false,4226              "pending": false,4227              "context": null,4228              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);",4229              "err": {},4230              "uuid": "9297b7a6-20c5-49eb-bd2b-c09794ef5792",4231              "parentUUID": null,4232              "isHook": false,4233              "skipped": true4234            }4235          ],4236          "suites": [],4237          "passes": [],4238          "failures": [],4239          "pending": [],4240          "skipped": [4241            "4180464f-22c6-4e68-a585-4c7dfe2f7fde",4242            "2e938b8d-c64e-49e5-a704-3b3ad62f2fd8",4243            "9297b7a6-20c5-49eb-bd2b-c09794ef5792"4244          ],4245          "duration": 0,4246          "root": false,4247          "rootEmpty": false,4248          "_timeout": 99999994249        },4250        {4251          "uuid": "d09522f9-f6a3-479f-9398-a62427e9a352",4252          "title": "(!negative test!) integration test: ext. destroyCollection():",4253          "fullFile": "/nft_parachain/tests/src/destroyCollection.test.ts",4254          "file": "/src/destroyCollection.test.ts",4255          "beforeHooks": [4256            {4257              "title": "\"before all\" hook",4258              "fullTitle": "(!negative test!) integration test: ext. destroyCollection(): \"before all\" hook",4259              "timedOut": false,4260              "duration": 0,4261              "state": null,4262              "speed": null,4263              "pass": false,4264              "fail": false,4265              "pending": false,4266              "context": null,4267              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n});",4268              "err": {},4269              "uuid": "029c7b06-9a11-473f-9597-d857bb51b47a",4270              "parentUUID": null,4271              "isHook": true,4272              "skipped": false4273            }4274          ],4275          "afterHooks": [],4276          "tests": [4277            {4278              "title": "(!negative test!) Destroy a collection that never existed",4279              "fullTitle": "(!negative test!) integration test: ext. destroyCollection(): (!negative test!) Destroy a collection that never existed",4280              "timedOut": false,4281              "duration": 0,4282              "state": null,4283              "speed": null,4284              "pass": false,4285              "fail": false,4286              "pending": false,4287              "context": null,4288              "code": "await substrate_api_1.default(async (api) => {\n    // Find the collection that never existed\n    const collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n    await helpers_1.destroyCollectionExpectFailure(collectionId);\n});",4289              "err": {},4290              "uuid": "53dcbc2e-6a9b-46e6-8548-8a9713b3208c",4291              "parentUUID": null,4292              "isHook": false,4293              "skipped": true4294            },4295            {4296              "title": "(!negative test!) Destroy a collection that has already been destroyed",4297              "fullTitle": "(!negative test!) integration test: ext. destroyCollection(): (!negative test!) Destroy a collection that has already been destroyed",4298              "timedOut": false,4299              "duration": 0,4300              "state": null,4301              "speed": null,4302              "pass": false,4303              "fail": false,4304              "pending": false,4305              "context": null,4306              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);\nawait helpers_1.destroyCollectionExpectFailure(collectionId);",4307              "err": {},4308              "uuid": "c9193aa7-25a6-429d-878f-3150a9f87104",4309              "parentUUID": null,4310              "isHook": false,4311              "skipped": true4312            },4313            {4314              "title": "(!negative test!) Destroy a collection using non-owner account",4315              "fullTitle": "(!negative test!) integration test: ext. destroyCollection(): (!negative test!) Destroy a collection using non-owner account",4316              "timedOut": false,4317              "duration": 0,4318              "state": null,4319              "speed": null,4320              "pass": false,4321              "fail": false,4322              "pending": false,4323              "context": null,4324              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.destroyCollectionExpectFailure(collectionId, '//Bob');\nawait helpers_1.destroyCollectionExpectSuccess(collectionId, '//Alice');",4325              "err": {},4326              "uuid": "470c05d3-d36a-4638-a972-45af56d80408",4327              "parentUUID": null,4328              "isHook": false,4329              "skipped": true4330            },4331            {4332              "title": "(!negative test!) Destroy a collection using collection admin account",4333              "fullTitle": "(!negative test!) integration test: ext. destroyCollection(): (!negative test!) Destroy a collection using collection admin account",4334              "timedOut": false,4335              "duration": 0,4336              "state": null,4337              "speed": null,4338              "pass": false,4339              "fail": false,4340              "pending": false,4341              "context": null,4342              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\nawait helpers_1.destroyCollectionExpectFailure(collectionId, '//Bob');",4343              "err": {},4344              "uuid": "d1ef4c9e-3e82-4c0d-a7a1-c4f210d1ab74",4345              "parentUUID": null,4346              "isHook": false,4347              "skipped": true4348            },4349            {4350              "title": "fails when OwnerCanDestroy == false",4351              "fullTitle": "(!negative test!) integration test: ext. destroyCollection(): fails when OwnerCanDestroy == false",4352              "timedOut": false,4353              "duration": 0,4354              "state": null,4355              "speed": null,4356              "pass": false,4357              "fail": false,4358              "pending": false,4359              "context": null,4360              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, { OwnerCanDestroy: false });\nawait helpers_1.destroyCollectionExpectFailure(collectionId, '//Alice');",4361              "err": {},4362              "uuid": "903a5aa7-495c-40da-8140-c165911e13dd",4363              "parentUUID": null,4364              "isHook": false,4365              "skipped": true4366            }4367          ],4368          "suites": [],4369          "passes": [],4370          "failures": [],4371          "pending": [],4372          "skipped": [4373            "53dcbc2e-6a9b-46e6-8548-8a9713b3208c",4374            "c9193aa7-25a6-429d-878f-3150a9f87104",4375            "470c05d3-d36a-4638-a972-45af56d80408",4376            "d1ef4c9e-3e82-4c0d-a7a1-c4f210d1ab74",4377            "903a5aa7-495c-40da-8140-c165911e13dd"4378          ],4379          "duration": 0,4380          "root": false,4381          "rootEmpty": false,4382          "_timeout": 99999994383        },4384        {4385          "uuid": "b82eb7b3-f4de-4127-b330-42ebda6df15a",4386          "title": "Integration Test enableContractSponsoring",4387          "fullFile": "/nft_parachain/tests/src/enableContractSponsoring.test.ts",4388          "file": "/src/enableContractSponsoring.test.ts",4389          "beforeHooks": [],4390          "afterHooks": [],4391          "tests": [4392            {4393              "title": "ensure tx fee is paid from endowment",4394              "fullTitle": "Integration Test enableContractSponsoring ensure tx fee is paid from endowment",4395              "timedOut": false,4396              "duration": 0,4397              "state": null,4398              "speed": null,4399              "pass": false,4400              "fail": false,4401              "pending": true,4402              "context": null,4403              "code": "",4404              "err": {},4405              "uuid": "0ae636f0-531e-47d5-a219-33329a247bef",4406              "parentUUID": null,4407              "isHook": false,4408              "skipped": false4409            },4410            {4411              "title": "ensure it can be enabled twice",4412              "fullTitle": "Integration Test enableContractSponsoring ensure it can be enabled twice",4413              "timedOut": false,4414              "duration": 0,4415              "state": null,4416              "speed": null,4417              "pass": false,4418              "fail": false,4419              "pending": true,4420              "context": null,4421              "code": "",4422              "err": {},4423              "uuid": "810ed4cb-bb60-4225-aecd-8b6f089a5469",4424              "parentUUID": null,4425              "isHook": false,4426              "skipped": false4427            },4428            {4429              "title": "ensure it can be disabled twice",4430              "fullTitle": "Integration Test enableContractSponsoring ensure it can be disabled twice",4431              "timedOut": false,4432              "duration": 0,4433              "state": null,4434              "speed": null,4435              "pass": false,4436              "fail": false,4437              "pending": true,4438              "context": null,4439              "code": "",4440              "err": {},4441              "uuid": "133f6180-6c1c-4a81-a037-2bbc883f6c0e",4442              "parentUUID": null,4443              "isHook": false,4444              "skipped": false4445            },4446            {4447              "title": "ensure it can be re-enabled",4448              "fullTitle": "Integration Test enableContractSponsoring ensure it can be re-enabled",4449              "timedOut": false,4450              "duration": 0,4451              "state": null,4452              "speed": null,4453              "pass": false,4454              "fail": false,4455              "pending": true,4456              "context": null,4457              "code": "",4458              "err": {},4459              "uuid": "7436de7a-9afc-4b17-b1d5-83d81324757e",4460              "parentUUID": null,4461              "isHook": false,4462              "skipped": false4463            }4464          ],4465          "suites": [],4466          "passes": [],4467          "failures": [],4468          "pending": [4469            "0ae636f0-531e-47d5-a219-33329a247bef",4470            "810ed4cb-bb60-4225-aecd-8b6f089a5469",4471            "133f6180-6c1c-4a81-a037-2bbc883f6c0e",4472            "7436de7a-9afc-4b17-b1d5-83d81324757e"4473          ],4474          "skipped": [],4475          "duration": 0,4476          "root": false,4477          "rootEmpty": false,4478          "_timeout": 99999994479        },4480        {4481          "uuid": "0ea1b6f0-3109-4184-92a0-58b87521268a",4482          "title": "Negative Integration Test enableContractSponsoring",4483          "fullFile": "/nft_parachain/tests/src/enableContractSponsoring.test.ts",4484          "file": "/src/enableContractSponsoring.test.ts",4485          "beforeHooks": [],4486          "afterHooks": [],4487          "tests": [4488            {4489              "title": "fails when called for non-contract address",4490              "fullTitle": "Negative Integration Test enableContractSponsoring fails when called for non-contract address",4491              "timedOut": false,4492              "duration": 0,4493              "state": null,4494              "speed": null,4495              "pass": false,4496              "fail": false,4497              "pending": true,4498              "context": null,4499              "code": "",4500              "err": {},4501              "uuid": "bb3cf798-d40c-4f39-8cdc-90775e1e3b89",4502              "parentUUID": null,4503              "isHook": false,4504              "skipped": false4505            },4506            {4507              "title": "fails when called by non-owning user",4508              "fullTitle": "Negative Integration Test enableContractSponsoring fails when called by non-owning user",4509              "timedOut": false,4510              "duration": 0,4511              "state": null,4512              "speed": null,4513              "pass": false,4514              "fail": false,4515              "pending": true,4516              "context": null,4517              "code": "",4518              "err": {},4519              "uuid": "09fe0e7e-13a1-4d61-a3ed-01016a39b5b6",4520              "parentUUID": null,4521              "isHook": false,4522              "skipped": false4523            }4524          ],4525          "suites": [],4526          "passes": [],4527          "failures": [],4528          "pending": [4529            "bb3cf798-d40c-4f39-8cdc-90775e1e3b89",4530            "09fe0e7e-13a1-4d61-a3ed-01016a39b5b6"4531          ],4532          "skipped": [],4533          "duration": 0,4534          "root": false,4535          "rootEmpty": false,4536          "_timeout": 99999994537        },4538        {4539          "uuid": "f9b63262-28cc-416a-b570-70da5d8f65f4",4540          "title": "Enable/Disable Transfers",4541          "fullFile": "/nft_parachain/tests/src/enableDisableTransfer.test.ts",4542          "file": "/src/enableDisableTransfer.test.ts",4543          "beforeHooks": [],4544          "afterHooks": [],4545          "tests": [4546            {4547              "title": "User can transfer token with enabled transfer flag",4548              "fullTitle": "Enable/Disable Transfers User can transfer token with enabled transfer flag",4549              "timedOut": false,4550              "duration": 0,4551              "state": null,4552              "speed": null,4553              "pass": false,4554              "fail": false,4555              "pending": false,4556              "context": null,4557              "code": "await substrate_api_1.default(async () => {\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    // explicitely set transfer flag\n    await helpers_1.setTransferFlagExpectSuccess(Alice, nftCollectionId, true);\n    await helpers_1.transferExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 1);\n});",4558              "err": {},4559              "uuid": "40955e62-05af-4179-be1d-5f281075f39c",4560              "parentUUID": null,4561              "isHook": false,4562              "skipped": true4563            },4564            {4565              "title": "User can'n transfer token with disabled transfer flag",4566              "fullTitle": "Enable/Disable Transfers User can'n transfer token with disabled transfer flag",4567              "timedOut": false,4568              "duration": 0,4569              "state": null,4570              "speed": null,4571              "pass": false,4572              "fail": false,4573              "pending": false,4574              "context": null,4575              "code": "await substrate_api_1.default(async () => {\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    // explicitely set transfer flag\n    await helpers_1.setTransferFlagExpectSuccess(Alice, nftCollectionId, false);\n    await helpers_1.transferExpectFailure(nftCollectionId, newNftTokenId, Alice, Bob, 1);\n});",4576              "err": {},4577              "uuid": "9393b0ed-dc59-4b6b-9934-f48351b5cc36",4578              "parentUUID": null,4579              "isHook": false,4580              "skipped": true4581            }4582          ],4583          "suites": [],4584          "passes": [],4585          "failures": [],4586          "pending": [],4587          "skipped": [4588            "40955e62-05af-4179-be1d-5f281075f39c",4589            "9393b0ed-dc59-4b6b-9934-f48351b5cc36"4590          ],4591          "duration": 0,4592          "root": false,4593          "rootEmpty": false,4594          "_timeout": 99999994595        },4596        {4597          "uuid": "64ceb3ce-485a-4092-96b9-0918cbcbb806",4598          "title": "Negative Enable/Disable Transfers",4599          "fullFile": "/nft_parachain/tests/src/enableDisableTransfer.test.ts",4600          "file": "/src/enableDisableTransfer.test.ts",4601          "beforeHooks": [],4602          "afterHooks": [],4603          "tests": [4604            {4605              "title": "Non-owner cannot change transfer flag",4606              "fullTitle": "Negative Enable/Disable Transfers Non-owner cannot change transfer flag",4607              "timedOut": false,4608              "duration": 0,4609              "state": null,4610              "speed": null,4611              "pass": false,4612              "fail": false,4613              "pending": false,4614              "context": null,4615              "code": "await substrate_api_1.default(async () => {\n    const Bob = privateKey_1.default('//Bob');\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    // Change transfer flag\n    await helpers_1.setTransferFlagExpectFailure(Bob, nftCollectionId, false);\n});",4616              "err": {},4617              "uuid": "5e8bf0a6-4130-427d-8aa0-a7e5de676d9c",4618              "parentUUID": null,4619              "isHook": false,4620              "skipped": true4621            }4622          ],4623          "suites": [],4624          "passes": [],4625          "failures": [],4626          "pending": [],4627          "skipped": [4628            "5e8bf0a6-4130-427d-8aa0-a7e5de676d9c"4629          ],4630          "duration": 0,4631          "root": false,4632          "rootEmpty": false,4633          "_timeout": 99999994634        },4635        {4636          "uuid": "166a2b99-feef-4313-a348-0c84514b7e19",4637          "title": "EVM allowlist",4638          "fullFile": "/nft_parachain/tests/src/eth/allowlist.test.ts",4639          "file": "/src/eth/allowlist.test.ts",4640          "beforeHooks": [],4641          "afterHooks": [],4642          "tests": [4643            {4644              "title": "Contract allowlist can be toggled",4645              "fullTitle": "EVM allowlist Contract allowlist can be toggled",4646              "timedOut": false,4647              "duration": 0,4648              "state": null,4649              "speed": null,4650              "pass": false,4651              "fail": false,4652              "pending": false,4653              "context": null,4654              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4655              "err": {},4656              "uuid": "8a2553da-4d76-4d01-a46b-0c7aeda8f17e",4657              "parentUUID": null,4658              "isHook": false,4659              "skipped": true4660            },4661            {4662              "title": "Non-whitelisted user can't call contract with allowlist enabled",4663              "fullTitle": "EVM allowlist Non-whitelisted user can't call contract with allowlist enabled",4664              "timedOut": false,4665              "duration": 0,4666              "state": null,4667              "speed": null,4668              "pass": false,4669              "fail": false,4670              "pending": false,4671              "context": null,4672              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4673              "err": {},4674              "uuid": "6bfb1246-7056-4272-95a5-16c071445167",4675              "parentUUID": null,4676              "isHook": false,4677              "skipped": true4678            }4679          ],4680          "suites": [],4681          "passes": [],4682          "failures": [],4683          "pending": [],4684          "skipped": [4685            "8a2553da-4d76-4d01-a46b-0c7aeda8f17e",4686            "6bfb1246-7056-4272-95a5-16c071445167"4687          ],4688          "duration": 0,4689          "root": false,4690          "rootEmpty": false,4691          "_timeout": 99999994692        },4693        {4694          "uuid": "1ef94075-5c71-4a69-8fee-0243a30ecf92",4695          "title": "Contract calls",4696          "fullFile": "/nft_parachain/tests/src/eth/base.test.ts",4697          "file": "/src/eth/base.test.ts",4698          "beforeHooks": [],4699          "afterHooks": [],4700          "tests": [4701            {4702              "title": "Call of simple contract fee is less than 0.2 UNQ",4703              "fullTitle": "Contract calls Call of simple contract fee is less than 0.2 UNQ",4704              "timedOut": false,4705              "duration": 0,4706              "state": null,4707              "speed": null,4708              "pass": false,4709              "fail": false,4710              "pending": false,4711              "context": null,4712              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4713              "err": {},4714              "uuid": "2e8f1e63-d243-4508-8c90-83fe6bebf0c8",4715              "parentUUID": null,4716              "isHook": false,4717              "skipped": true4718            },4719            {4720              "title": "Balance transfer fee is less than 0.2 UNQ",4721              "fullTitle": "Contract calls Balance transfer fee is less than 0.2 UNQ",4722              "timedOut": false,4723              "duration": 0,4724              "state": null,4725              "speed": null,4726              "pass": false,4727              "fail": false,4728              "pending": false,4729              "context": null,4730              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4731              "err": {},4732              "uuid": "a49dfe5b-78a8-4972-83c8-8f4838216a25",4733              "parentUUID": null,4734              "isHook": false,4735              "skipped": true4736            }4737          ],4738          "suites": [],4739          "passes": [],4740          "failures": [],4741          "pending": [],4742          "skipped": [4743            "2e8f1e63-d243-4508-8c90-83fe6bebf0c8",4744            "a49dfe5b-78a8-4972-83c8-8f4838216a25"4745          ],4746          "duration": 0,4747          "root": false,4748          "rootEmpty": false,4749          "_timeout": 99999994750        },4751        {4752          "uuid": "63ceb95a-b882-4cf6-a99a-aa5b4993076b",4753          "title": "Token transfer between substrate address and EVM address. Fungible",4754          "fullFile": "/nft_parachain/tests/src/eth/crossTransfer.test.ts",4755          "file": "/src/eth/crossTransfer.test.ts",4756          "beforeHooks": [],4757          "afterHooks": [],4758          "tests": [4759            {4760              "title": "The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate",4761              "fullTitle": "Token transfer between substrate address and EVM address. Fungible The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate",4762              "timedOut": false,4763              "duration": 0,4764              "state": null,4765              "speed": null,4766              "pass": false,4767              "fail": false,4768              "pending": false,4769              "context": null,4770              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4771              "err": {},4772              "uuid": "016bdad3-72c1-4b25-a25f-fa786dd3c92d",4773              "parentUUID": null,4774              "isHook": false,4775              "skipped": true4776            },4777            {4778              "title": "The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM",4779              "fullTitle": "Token transfer between substrate address and EVM address. Fungible The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM",4780              "timedOut": false,4781              "duration": 0,4782              "state": null,4783              "speed": null,4784              "pass": false,4785              "fail": false,4786              "pending": false,4787              "context": null,4788              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4789              "err": {},4790              "uuid": "dc9e2f55-1603-434e-8bdc-d3669c24e2e4",4791              "parentUUID": null,4792              "isHook": false,4793              "skipped": true4794            }4795          ],4796          "suites": [],4797          "passes": [],4798          "failures": [],4799          "pending": [],4800          "skipped": [4801            "016bdad3-72c1-4b25-a25f-fa786dd3c92d",4802            "dc9e2f55-1603-434e-8bdc-d3669c24e2e4"4803          ],4804          "duration": 0,4805          "root": false,4806          "rootEmpty": false,4807          "_timeout": 99999994808        },4809        {4810          "uuid": "3bcae81c-07ce-48a2-aa69-0d8c8e27c623",4811          "title": "Token transfer between substrate address and EVM address. NFT",4812          "fullFile": "/nft_parachain/tests/src/eth/crossTransfer.test.ts",4813          "file": "/src/eth/crossTransfer.test.ts",4814          "beforeHooks": [],4815          "afterHooks": [],4816          "tests": [4817            {4818              "title": "The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate",4819              "fullTitle": "Token transfer between substrate address and EVM address. NFT The private key X create a substrate address. Alice sends a token to the corresponding EVM address, and X can send it to Bob in the substrate",4820              "timedOut": false,4821              "duration": 0,4822              "state": null,4823              "speed": null,4824              "pass": false,4825              "fail": false,4826              "pending": false,4827              "context": null,4828              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4829              "err": {},4830              "uuid": "687f48a8-d2de-4888-98c2-b23c2e116691",4831              "parentUUID": null,4832              "isHook": false,4833              "skipped": true4834            },4835            {4836              "title": "The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM",4837              "fullTitle": "Token transfer between substrate address and EVM address. NFT The private key X create a EVM address. Alice sends a token to the substrate address corresponding to this EVM address, and X can send it to Bob in the EVM",4838              "timedOut": false,4839              "duration": 0,4840              "state": null,4841              "speed": null,4842              "pass": false,4843              "fail": false,4844              "pending": false,4845              "context": null,4846              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4847              "err": {},4848              "uuid": "e8feec8e-382f-487c-b76a-5acc10da9bce",4849              "parentUUID": null,4850              "isHook": false,4851              "skipped": true4852            }4853          ],4854          "suites": [],4855          "passes": [],4856          "failures": [],4857          "pending": [],4858          "skipped": [4859            "687f48a8-d2de-4888-98c2-b23c2e116691",4860            "e8feec8e-382f-487c-b76a-5acc10da9bce"4861          ],4862          "duration": 0,4863          "root": false,4864          "rootEmpty": false,4865          "_timeout": 99999994866        },4867        {4868          "uuid": "e28ed94d-9043-43ab-b3d3-bdada9894d84",4869          "title": "Fungible: Information getting",4870          "fullFile": "/nft_parachain/tests/src/eth/fungible.test.ts",4871          "file": "/src/eth/fungible.test.ts",4872          "beforeHooks": [],4873          "afterHooks": [],4874          "tests": [4875            {4876              "title": "totalSupply",4877              "fullTitle": "Fungible: Information getting totalSupply",4878              "timedOut": false,4879              "duration": 0,4880              "state": null,4881              "speed": null,4882              "pass": false,4883              "fail": false,4884              "pending": false,4885              "context": null,4886              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4887              "err": {},4888              "uuid": "a426de65-2a4a-4b02-9c67-45d296bf7dc1",4889              "parentUUID": null,4890              "isHook": false,4891              "skipped": true4892            },4893            {4894              "title": "balanceOf",4895              "fullTitle": "Fungible: Information getting balanceOf",4896              "timedOut": false,4897              "duration": 0,4898              "state": null,4899              "speed": null,4900              "pass": false,4901              "fail": false,4902              "pending": false,4903              "context": null,4904              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4905              "err": {},4906              "uuid": "c1081390-abe4-4727-b086-68af2d8bd821",4907              "parentUUID": null,4908              "isHook": false,4909              "skipped": true4910            }4911          ],4912          "suites": [],4913          "passes": [],4914          "failures": [],4915          "pending": [],4916          "skipped": [4917            "a426de65-2a4a-4b02-9c67-45d296bf7dc1",4918            "c1081390-abe4-4727-b086-68af2d8bd821"4919          ],4920          "duration": 0,4921          "root": false,4922          "rootEmpty": false,4923          "_timeout": 99999994924        },4925        {4926          "uuid": "38e5c06d-bbc9-4bae-bc0b-45b5475ebd53",4927          "title": "Fungible: Plain calls",4928          "fullFile": "/nft_parachain/tests/src/eth/fungible.test.ts",4929          "file": "/src/eth/fungible.test.ts",4930          "beforeHooks": [],4931          "afterHooks": [],4932          "tests": [4933            {4934              "title": "Can perform approve()",4935              "fullTitle": "Fungible: Plain calls Can perform approve()",4936              "timedOut": false,4937              "duration": 0,4938              "state": null,4939              "speed": null,4940              "pass": false,4941              "fail": false,4942              "pending": false,4943              "context": null,4944              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4945              "err": {},4946              "uuid": "61154419-0a48-44b1-ae0f-4b3dd6e3a085",4947              "parentUUID": null,4948              "isHook": false,4949              "skipped": true4950            },4951            {4952              "title": "Can perform transferFrom()",4953              "fullTitle": "Fungible: Plain calls Can perform transferFrom()",4954              "timedOut": false,4955              "duration": 0,4956              "state": null,4957              "speed": null,4958              "pass": false,4959              "fail": false,4960              "pending": false,4961              "context": null,4962              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4963              "err": {},4964              "uuid": "25aa7368-095b-4f36-849e-2940ca117fba",4965              "parentUUID": null,4966              "isHook": false,4967              "skipped": true4968            },4969            {4970              "title": "Can perform transfer()",4971              "fullTitle": "Fungible: Plain calls Can perform transfer()",4972              "timedOut": false,4973              "duration": 0,4974              "state": null,4975              "speed": null,4976              "pass": false,4977              "fail": false,4978              "pending": false,4979              "context": null,4980              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",4981              "err": {},4982              "uuid": "26bd4d69-70a0-41e3-9019-b1a9c61dd4db",4983              "parentUUID": null,4984              "isHook": false,4985              "skipped": true4986            }4987          ],4988          "suites": [],4989          "passes": [],4990          "failures": [],4991          "pending": [],4992          "skipped": [4993            "61154419-0a48-44b1-ae0f-4b3dd6e3a085",4994            "25aa7368-095b-4f36-849e-2940ca117fba",4995            "26bd4d69-70a0-41e3-9019-b1a9c61dd4db"4996          ],4997          "duration": 0,4998          "root": false,4999          "rootEmpty": false,5000          "_timeout": 99999995001        },5002        {5003          "uuid": "f64e15cb-ff19-483f-8370-1717a0e52137",5004          "title": "Fungible: Fees",5005          "fullFile": "/nft_parachain/tests/src/eth/fungible.test.ts",5006          "file": "/src/eth/fungible.test.ts",5007          "beforeHooks": [],5008          "afterHooks": [],5009          "tests": [5010            {5011              "title": "approve() call fee is less than 0.2UNQ",5012              "fullTitle": "Fungible: Fees approve() call fee is less than 0.2UNQ",5013              "timedOut": false,5014              "duration": 0,5015              "state": null,5016              "speed": null,5017              "pass": false,5018              "fail": false,5019              "pending": false,5020              "context": null,5021              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5022              "err": {},5023              "uuid": "18ee49b0-8612-4674-9e66-8e0855b1bed7",5024              "parentUUID": null,5025              "isHook": false,5026              "skipped": true5027            },5028            {5029              "title": "transferFrom() call fee is less than 0.2UNQ",5030              "fullTitle": "Fungible: Fees transferFrom() call fee is less than 0.2UNQ",5031              "timedOut": false,5032              "duration": 0,5033              "state": null,5034              "speed": null,5035              "pass": false,5036              "fail": false,5037              "pending": false,5038              "context": null,5039              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5040              "err": {},5041              "uuid": "8604d5a4-bb0d-4ce7-b997-3bb941d2dadc",5042              "parentUUID": null,5043              "isHook": false,5044              "skipped": true5045            },5046            {5047              "title": "transfer() call fee is less than 0.2UNQ",5048              "fullTitle": "Fungible: Fees transfer() call fee is less than 0.2UNQ",5049              "timedOut": false,5050              "duration": 0,5051              "state": null,5052              "speed": null,5053              "pass": false,5054              "fail": false,5055              "pending": false,5056              "context": null,5057              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5058              "err": {},5059              "uuid": "3b472b88-09a8-499e-8ae3-0082a0fd2b7e",5060              "parentUUID": null,5061              "isHook": false,5062              "skipped": true5063            }5064          ],5065          "suites": [],5066          "passes": [],5067          "failures": [],5068          "pending": [],5069          "skipped": [5070            "18ee49b0-8612-4674-9e66-8e0855b1bed7",5071            "8604d5a4-bb0d-4ce7-b997-3bb941d2dadc",5072            "3b472b88-09a8-499e-8ae3-0082a0fd2b7e"5073          ],5074          "duration": 0,5075          "root": false,5076          "rootEmpty": false,5077          "_timeout": 99999995078        },5079        {5080          "uuid": "0bd2f0db-3ea7-4d52-b1bd-b39e365c4611",5081          "title": "Fungible: Substrate calls",5082          "fullFile": "/nft_parachain/tests/src/eth/fungible.test.ts",5083          "file": "/src/eth/fungible.test.ts",5084          "beforeHooks": [],5085          "afterHooks": [],5086          "tests": [5087            {5088              "title": "Events emitted for approve()",5089              "fullTitle": "Fungible: Substrate calls Events emitted for approve()",5090              "timedOut": false,5091              "duration": 0,5092              "state": null,5093              "speed": null,5094              "pass": false,5095              "fail": false,5096              "pending": false,5097              "context": null,5098              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5099              "err": {},5100              "uuid": "aa6f7c90-68ff-4b90-85cf-a35adfd5df6c",5101              "parentUUID": null,5102              "isHook": false,5103              "skipped": true5104            },5105            {5106              "title": "Events emitted for transferFrom()",5107              "fullTitle": "Fungible: Substrate calls Events emitted for transferFrom()",5108              "timedOut": false,5109              "duration": 0,5110              "state": null,5111              "speed": null,5112              "pass": false,5113              "fail": false,5114              "pending": false,5115              "context": null,5116              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5117              "err": {},5118              "uuid": "cf7b96d6-e4e1-4233-9d7b-4a072c9c200d",5119              "parentUUID": null,5120              "isHook": false,5121              "skipped": true5122            },5123            {5124              "title": "Events emitted for transfer()",5125              "fullTitle": "Fungible: Substrate calls Events emitted for transfer()",5126              "timedOut": false,5127              "duration": 0,5128              "state": null,5129              "speed": null,5130              "pass": false,5131              "fail": false,5132              "pending": false,5133              "context": null,5134              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5135              "err": {},5136              "uuid": "2bba3c20-33bd-4365-bce6-a415c26f86b3",5137              "parentUUID": null,5138              "isHook": false,5139              "skipped": true5140            }5141          ],5142          "suites": [],5143          "passes": [],5144          "failures": [],5145          "pending": [],5146          "skipped": [5147            "aa6f7c90-68ff-4b90-85cf-a35adfd5df6c",5148            "cf7b96d6-e4e1-4233-9d7b-4a072c9c200d",5149            "2bba3c20-33bd-4365-bce6-a415c26f86b3"5150          ],5151          "duration": 0,5152          "root": false,5153          "rootEmpty": false,5154          "_timeout": 99999995155        },5156        {5157          "uuid": "ba3b6c83-0f9f-4fb8-8ad4-d53ef53312f7",5158          "title": "Helpers sanity check",5159          "fullFile": "/nft_parachain/tests/src/eth/helpersSmoke.test.ts",5160          "file": "/src/eth/helpersSmoke.test.ts",5161          "beforeHooks": [],5162          "afterHooks": [],5163          "tests": [5164            {5165              "title": "Contract owner is recorded",5166              "fullTitle": "Helpers sanity check Contract owner is recorded",5167              "timedOut": false,5168              "duration": 0,5169              "state": null,5170              "speed": null,5171              "pass": false,5172              "fail": false,5173              "pending": false,5174              "context": null,5175              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5176              "err": {},5177              "uuid": "051817e6-7916-4f3b-8f07-53399cadceb9",5178              "parentUUID": null,5179              "isHook": false,5180              "skipped": true5181            },5182            {5183              "title": "Flipper is working",5184              "fullTitle": "Helpers sanity check Flipper is working",5185              "timedOut": false,5186              "duration": 0,5187              "state": null,5188              "speed": null,5189              "pass": false,5190              "fail": false,5191              "pending": false,5192              "context": null,5193              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5194              "err": {},5195              "uuid": "ed6828c4-1e4d-4019-a9ab-09908d92a125",5196              "parentUUID": null,5197              "isHook": false,5198              "skipped": true5199            }5200          ],5201          "suites": [],5202          "passes": [],5203          "failures": [],5204          "pending": [],5205          "skipped": [5206            "051817e6-7916-4f3b-8f07-53399cadceb9",5207            "ed6828c4-1e4d-4019-a9ab-09908d92a125"5208          ],5209          "duration": 0,5210          "root": false,5211          "rootEmpty": false,5212          "_timeout": 99999995213        },5214        {5215          "uuid": "f55a84b3-636b-41ab-a5b4-bc3c2a5b18d0",5216          "title": "Matcher contract usage",5217          "fullFile": "/nft_parachain/tests/src/eth/marketplace/marketplace.test.ts",5218          "file": "/src/eth/marketplace/marketplace.test.ts",5219          "beforeHooks": [],5220          "afterHooks": [],5221          "tests": [5222            {5223              "title": "With UNQ",5224              "fullTitle": "Matcher contract usage With UNQ",5225              "timedOut": false,5226              "duration": 0,5227              "state": null,5228              "speed": null,5229              "pass": false,5230              "fail": false,5231              "pending": false,5232              "context": null,5233              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5234              "err": {},5235              "uuid": "2f01ebb5-2705-439a-9540-390408e547c0",5236              "parentUUID": null,5237              "isHook": false,5238              "skipped": true5239            },5240            {5241              "title": "With custom ERC20",5242              "fullTitle": "Matcher contract usage With custom ERC20",5243              "timedOut": false,5244              "duration": 0,5245              "state": null,5246              "speed": null,5247              "pass": false,5248              "fail": false,5249              "pending": false,5250              "context": null,5251              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5252              "err": {},5253              "uuid": "ccf9e063-ac4a-4c78-a9ed-13deb1d5e2ae",5254              "parentUUID": null,5255              "isHook": false,5256              "skipped": true5257            },5258            {5259              "title": "With escrow",5260              "fullTitle": "Matcher contract usage With escrow",5261              "timedOut": false,5262              "duration": 0,5263              "state": null,5264              "speed": null,5265              "pass": false,5266              "fail": false,5267              "pending": false,5268              "context": null,5269              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5270              "err": {},5271              "uuid": "2ad4094c-5a03-4f59-8140-a973b6f16e87",5272              "parentUUID": null,5273              "isHook": false,5274              "skipped": true5275            }5276          ],5277          "suites": [],5278          "passes": [],5279          "failures": [],5280          "pending": [],5281          "skipped": [5282            "2f01ebb5-2705-439a-9540-390408e547c0",5283            "ccf9e063-ac4a-4c78-a9ed-13deb1d5e2ae",5284            "2ad4094c-5a03-4f59-8140-a973b6f16e87"5285          ],5286          "duration": 0,5287          "root": false,5288          "rootEmpty": false,5289          "_timeout": 99999995290        },5291        {5292          "uuid": "9c8dfde9-8dc0-4258-95ec-998c0cbd658b",5293          "title": "Common metadata",5294          "fullFile": "/nft_parachain/tests/src/eth/metadata.test.ts",5295          "file": "/src/eth/metadata.test.ts",5296          "beforeHooks": [],5297          "afterHooks": [],5298          "tests": [5299            {5300              "title": "Returns collection name",5301              "fullTitle": "Common metadata Returns collection name",5302              "timedOut": false,5303              "duration": 0,5304              "state": null,5305              "speed": null,5306              "pass": false,5307              "fail": false,5308              "pending": false,5309              "context": null,5310              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5311              "err": {},5312              "uuid": "6388af9f-2efe-42ba-bfd7-cd29fabd8af9",5313              "parentUUID": null,5314              "isHook": false,5315              "skipped": true5316            },5317            {5318              "title": "Returns symbol name",5319              "fullTitle": "Common metadata Returns symbol name",5320              "timedOut": false,5321              "duration": 0,5322              "state": null,5323              "speed": null,5324              "pass": false,5325              "fail": false,5326              "pending": false,5327              "context": null,5328              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5329              "err": {},5330              "uuid": "698a3dfb-824b-4e20-99fa-9ff4a01cc206",5331              "parentUUID": null,5332              "isHook": false,5333              "skipped": true5334            }5335          ],5336          "suites": [],5337          "passes": [],5338          "failures": [],5339          "pending": [],5340          "skipped": [5341            "6388af9f-2efe-42ba-bfd7-cd29fabd8af9",5342            "698a3dfb-824b-4e20-99fa-9ff4a01cc206"5343          ],5344          "duration": 0,5345          "root": false,5346          "rootEmpty": false,5347          "_timeout": 99999995348        },5349        {5350          "uuid": "621af845-f162-42a3-b591-dfba99fe7e04",5351          "title": "Fungible metadata",5352          "fullFile": "/nft_parachain/tests/src/eth/metadata.test.ts",5353          "file": "/src/eth/metadata.test.ts",5354          "beforeHooks": [],5355          "afterHooks": [],5356          "tests": [5357            {5358              "title": "Returns fungible decimals",5359              "fullTitle": "Fungible metadata Returns fungible decimals",5360              "timedOut": false,5361              "duration": 0,5362              "state": null,5363              "speed": null,5364              "pass": false,5365              "fail": false,5366              "pending": false,5367              "context": null,5368              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5369              "err": {},5370              "uuid": "f09618db-1592-4fb9-acf1-b71ecf10b3d1",5371              "parentUUID": null,5372              "isHook": false,5373              "skipped": true5374            }5375          ],5376          "suites": [],5377          "passes": [],5378          "failures": [],5379          "pending": [],5380          "skipped": [5381            "f09618db-1592-4fb9-acf1-b71ecf10b3d1"5382          ],5383          "duration": 0,5384          "root": false,5385          "rootEmpty": false,5386          "_timeout": 99999995387        },5388        {5389          "uuid": "5e6c13ef-795c-416a-9c78-ead6a32d3b7d",5390          "title": "EVM Migrations",5391          "fullFile": "/nft_parachain/tests/src/eth/migration.test.ts",5392          "file": "/src/eth/migration.test.ts",5393          "beforeHooks": [],5394          "afterHooks": [],5395          "tests": [5396            {5397              "title": "Deploy contract saved state",5398              "fullTitle": "EVM Migrations Deploy contract saved state",5399              "timedOut": false,5400              "duration": 0,5401              "state": null,5402              "speed": null,5403              "pass": false,5404              "fail": false,5405              "pending": false,5406              "context": null,5407              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5408              "err": {},5409              "uuid": "a5a57dce-aec7-43f8-a4fb-8b7f28c8b098",5410              "parentUUID": null,5411              "isHook": false,5412              "skipped": true5413            }5414          ],5415          "suites": [],5416          "passes": [],5417          "failures": [],5418          "pending": [],5419          "skipped": [5420            "a5a57dce-aec7-43f8-a4fb-8b7f28c8b098"5421          ],5422          "duration": 0,5423          "root": false,5424          "rootEmpty": false,5425          "_timeout": 99999995426        },5427        {5428          "uuid": "29c89e20-ce3a-4cc7-b5ce-cf92a2f775c7",5429          "title": "NFT: Information getting",5430          "fullFile": "/nft_parachain/tests/src/eth/nonFungible.test.ts",5431          "file": "/src/eth/nonFungible.test.ts",5432          "beforeHooks": [],5433          "afterHooks": [],5434          "tests": [5435            {5436              "title": "totalSupply",5437              "fullTitle": "NFT: Information getting totalSupply",5438              "timedOut": false,5439              "duration": 0,5440              "state": null,5441              "speed": null,5442              "pass": false,5443              "fail": false,5444              "pending": false,5445              "context": null,5446              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5447              "err": {},5448              "uuid": "1a7693a8-a035-43a6-ada3-9789e96b8afc",5449              "parentUUID": null,5450              "isHook": false,5451              "skipped": true5452            },5453            {5454              "title": "balanceOf",5455              "fullTitle": "NFT: Information getting balanceOf",5456              "timedOut": false,5457              "duration": 0,5458              "state": null,5459              "speed": null,5460              "pass": false,5461              "fail": false,5462              "pending": false,5463              "context": null,5464              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5465              "err": {},5466              "uuid": "5ed76965-d2ea-4fcb-aca5-b2d941118ca4",5467              "parentUUID": null,5468              "isHook": false,5469              "skipped": true5470            },5471            {5472              "title": "ownerOf",5473              "fullTitle": "NFT: Information getting ownerOf",5474              "timedOut": false,5475              "duration": 0,5476              "state": null,5477              "speed": null,5478              "pass": false,5479              "fail": false,5480              "pending": false,5481              "context": null,5482              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5483              "err": {},5484              "uuid": "67ee6485-e697-42c9-a3eb-304af1ac2530",5485              "parentUUID": null,5486              "isHook": false,5487              "skipped": true5488            }5489          ],5490          "suites": [],5491          "passes": [],5492          "failures": [],5493          "pending": [],5494          "skipped": [5495            "1a7693a8-a035-43a6-ada3-9789e96b8afc",5496            "5ed76965-d2ea-4fcb-aca5-b2d941118ca4",5497            "67ee6485-e697-42c9-a3eb-304af1ac2530"5498          ],5499          "duration": 0,5500          "root": false,5501          "rootEmpty": false,5502          "_timeout": 99999995503        },5504        {5505          "uuid": "dd3c3df9-87e7-4de4-9a10-86603947cd0a",5506          "title": "NFT: Plain calls",5507          "fullFile": "/nft_parachain/tests/src/eth/nonFungible.test.ts",5508          "file": "/src/eth/nonFungible.test.ts",5509          "beforeHooks": [],5510          "afterHooks": [],5511          "tests": [5512            {5513              "title": "Can perform mint()",5514              "fullTitle": "NFT: Plain calls Can perform mint()",5515              "timedOut": false,5516              "duration": 0,5517              "state": null,5518              "speed": null,5519              "pass": false,5520              "fail": false,5521              "pending": false,5522              "context": null,5523              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5524              "err": {},5525              "uuid": "17886293-1b92-4e5e-8e87-b877c04eb0d7",5526              "parentUUID": null,5527              "isHook": false,5528              "skipped": true5529            },5530            {5531              "title": "Can perform burn()",5532              "fullTitle": "NFT: Plain calls Can perform burn()",5533              "timedOut": false,5534              "duration": 0,5535              "state": null,5536              "speed": null,5537              "pass": false,5538              "fail": false,5539              "pending": false,5540              "context": null,5541              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5542              "err": {},5543              "uuid": "777af62f-e701-4586-8b91-3136588eedc3",5544              "parentUUID": null,5545              "isHook": false,5546              "skipped": true5547            },5548            {5549              "title": "Can perform approve()",5550              "fullTitle": "NFT: Plain calls Can perform approve()",5551              "timedOut": false,5552              "duration": 0,5553              "state": null,5554              "speed": null,5555              "pass": false,5556              "fail": false,5557              "pending": false,5558              "context": null,5559              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5560              "err": {},5561              "uuid": "87cca972-d2fe-46d3-b8d9-78f13f0eeb56",5562              "parentUUID": null,5563              "isHook": false,5564              "skipped": true5565            },5566            {5567              "title": "Can perform transferFrom()",5568              "fullTitle": "NFT: Plain calls Can perform transferFrom()",5569              "timedOut": false,5570              "duration": 0,5571              "state": null,5572              "speed": null,5573              "pass": false,5574              "fail": false,5575              "pending": false,5576              "context": null,5577              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5578              "err": {},5579              "uuid": "bd6c2bd1-cf7d-417c-8d97-29bb263bd52f",5580              "parentUUID": null,5581              "isHook": false,5582              "skipped": true5583            },5584            {5585              "title": "Can perform transfer()",5586              "fullTitle": "NFT: Plain calls Can perform transfer()",5587              "timedOut": false,5588              "duration": 0,5589              "state": null,5590              "speed": null,5591              "pass": false,5592              "fail": false,5593              "pending": false,5594              "context": null,5595              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5596              "err": {},5597              "uuid": "9a9d9fce-0eae-4350-bb31-7bd5cddfa379",5598              "parentUUID": null,5599              "isHook": false,5600              "skipped": true5601            }5602          ],5603          "suites": [],5604          "passes": [],5605          "failures": [],5606          "pending": [],5607          "skipped": [5608            "17886293-1b92-4e5e-8e87-b877c04eb0d7",5609            "777af62f-e701-4586-8b91-3136588eedc3",5610            "87cca972-d2fe-46d3-b8d9-78f13f0eeb56",5611            "bd6c2bd1-cf7d-417c-8d97-29bb263bd52f",5612            "9a9d9fce-0eae-4350-bb31-7bd5cddfa379"5613          ],5614          "duration": 0,5615          "root": false,5616          "rootEmpty": false,5617          "_timeout": 99999995618        },5619        {5620          "uuid": "2c5ec398-8026-4f53-a652-031d46ae1b99",5621          "title": "NFT: Fees",5622          "fullFile": "/nft_parachain/tests/src/eth/nonFungible.test.ts",5623          "file": "/src/eth/nonFungible.test.ts",5624          "beforeHooks": [],5625          "afterHooks": [],5626          "tests": [5627            {5628              "title": "approve() call fee is less than 0.2UNQ",5629              "fullTitle": "NFT: Fees approve() call fee is less than 0.2UNQ",5630              "timedOut": false,5631              "duration": 0,5632              "state": null,5633              "speed": null,5634              "pass": false,5635              "fail": false,5636              "pending": false,5637              "context": null,5638              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5639              "err": {},5640              "uuid": "2a278075-6373-464b-9c11-b9ad67ec0c4a",5641              "parentUUID": null,5642              "isHook": false,5643              "skipped": true5644            },5645            {5646              "title": "transferFrom() call fee is less than 0.2UNQ",5647              "fullTitle": "NFT: Fees transferFrom() call fee is less than 0.2UNQ",5648              "timedOut": false,5649              "duration": 0,5650              "state": null,5651              "speed": null,5652              "pass": false,5653              "fail": false,5654              "pending": false,5655              "context": null,5656              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5657              "err": {},5658              "uuid": "f5bdbf22-f3c5-4ed3-8b3b-0b8f888a4658",5659              "parentUUID": null,5660              "isHook": false,5661              "skipped": true5662            },5663            {5664              "title": "transfer() call fee is less than 0.2UNQ",5665              "fullTitle": "NFT: Fees transfer() call fee is less than 0.2UNQ",5666              "timedOut": false,5667              "duration": 0,5668              "state": null,5669              "speed": null,5670              "pass": false,5671              "fail": false,5672              "pending": false,5673              "context": null,5674              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5675              "err": {},5676              "uuid": "69da8472-8f02-4763-9ff6-9c2e60bbd4d9",5677              "parentUUID": null,5678              "isHook": false,5679              "skipped": true5680            }5681          ],5682          "suites": [],5683          "passes": [],5684          "failures": [],5685          "pending": [],5686          "skipped": [5687            "2a278075-6373-464b-9c11-b9ad67ec0c4a",5688            "f5bdbf22-f3c5-4ed3-8b3b-0b8f888a4658",5689            "69da8472-8f02-4763-9ff6-9c2e60bbd4d9"5690          ],5691          "duration": 0,5692          "root": false,5693          "rootEmpty": false,5694          "_timeout": 99999995695        },5696        {5697          "uuid": "be5044de-17be-4f4f-9c43-8a5c1139142e",5698          "title": "NFT: Substrate calls",5699          "fullFile": "/nft_parachain/tests/src/eth/nonFungible.test.ts",5700          "file": "/src/eth/nonFungible.test.ts",5701          "beforeHooks": [],5702          "afterHooks": [],5703          "tests": [5704            {5705              "title": "Events emitted for mint()",5706              "fullTitle": "NFT: Substrate calls Events emitted for mint()",5707              "timedOut": false,5708              "duration": 0,5709              "state": null,5710              "speed": null,5711              "pass": false,5712              "fail": false,5713              "pending": false,5714              "context": null,5715              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5716              "err": {},5717              "uuid": "2bb08a8e-2873-4619-83bb-f39af6239a09",5718              "parentUUID": null,5719              "isHook": false,5720              "skipped": true5721            },5722            {5723              "title": "Events emitted for burn()",5724              "fullTitle": "NFT: Substrate calls Events emitted for burn()",5725              "timedOut": false,5726              "duration": 0,5727              "state": null,5728              "speed": null,5729              "pass": false,5730              "fail": false,5731              "pending": false,5732              "context": null,5733              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5734              "err": {},5735              "uuid": "d49f6eb8-d101-48fc-a414-491137650956",5736              "parentUUID": null,5737              "isHook": false,5738              "skipped": true5739            },5740            {5741              "title": "Events emitted for approve()",5742              "fullTitle": "NFT: Substrate calls Events emitted for approve()",5743              "timedOut": false,5744              "duration": 0,5745              "state": null,5746              "speed": null,5747              "pass": false,5748              "fail": false,5749              "pending": false,5750              "context": null,5751              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5752              "err": {},5753              "uuid": "57983457-a928-4a13-bb30-4802081a6197",5754              "parentUUID": null,5755              "isHook": false,5756              "skipped": true5757            },5758            {5759              "title": "Events emitted for transferFrom()",5760              "fullTitle": "NFT: Substrate calls Events emitted for transferFrom()",5761              "timedOut": false,5762              "duration": 0,5763              "state": null,5764              "speed": null,5765              "pass": false,5766              "fail": false,5767              "pending": false,5768              "context": null,5769              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5770              "err": {},5771              "uuid": "ddab55e4-95e4-4e59-9b16-ac782e667252",5772              "parentUUID": null,5773              "isHook": false,5774              "skipped": true5775            },5776            {5777              "title": "Events emitted for transfer()",5778              "fullTitle": "NFT: Substrate calls Events emitted for transfer()",5779              "timedOut": false,5780              "duration": 0,5781              "state": null,5782              "speed": null,5783              "pass": false,5784              "fail": false,5785              "pending": false,5786              "context": null,5787              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5788              "err": {},5789              "uuid": "14b7b792-d571-4ac5-92a0-c3803e8ffcf7",5790              "parentUUID": null,5791              "isHook": false,5792              "skipped": true5793            }5794          ],5795          "suites": [],5796          "passes": [],5797          "failures": [],5798          "pending": [],5799          "skipped": [5800            "2bb08a8e-2873-4619-83bb-f39af6239a09",5801            "d49f6eb8-d101-48fc-a414-491137650956",5802            "57983457-a928-4a13-bb30-4802081a6197",5803            "ddab55e4-95e4-4e59-9b16-ac782e667252",5804            "14b7b792-d571-4ac5-92a0-c3803e8ffcf7"5805          ],5806          "duration": 0,5807          "root": false,5808          "rootEmpty": false,5809          "_timeout": 99999995810        },5811        {5812          "uuid": "39e4e2ce-c9de-4260-a74f-8585fafecf1a",5813          "title": "EVM payable contracts",5814          "fullFile": "/nft_parachain/tests/src/eth/payable.test.ts",5815          "file": "/src/eth/payable.test.ts",5816          "beforeHooks": [],5817          "afterHooks": [],5818          "tests": [5819            {5820              "title": "Evm contract can receive wei from eth account",5821              "fullTitle": "EVM payable contracts Evm contract can receive wei from eth account",5822              "timedOut": false,5823              "duration": 0,5824              "state": null,5825              "speed": null,5826              "pass": false,5827              "fail": false,5828              "pending": false,5829              "context": null,5830              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5831              "err": {},5832              "uuid": "822d164c-5ac7-440a-8e76-c165898af1af",5833              "parentUUID": null,5834              "isHook": false,5835              "skipped": true5836            },5837            {5838              "title": "Evm contract can receive wei from substrate account",5839              "fullTitle": "EVM payable contracts Evm contract can receive wei from substrate account",5840              "timedOut": false,5841              "duration": 0,5842              "state": null,5843              "speed": null,5844              "pass": false,5845              "fail": false,5846              "pending": false,5847              "context": null,5848              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5849              "err": {},5850              "uuid": "e6b31921-975a-42c4-9675-bcab97445089",5851              "parentUUID": null,5852              "isHook": false,5853              "skipped": true5854            },5855            {5856              "title": "Wei sent directly to backing storage of evm contract balance is unaccounted",5857              "fullTitle": "EVM payable contracts Wei sent directly to backing storage of evm contract balance is unaccounted",5858              "timedOut": false,5859              "duration": 0,5860              "state": null,5861              "speed": null,5862              "pass": false,5863              "fail": false,5864              "pending": false,5865              "context": null,5866              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5867              "err": {},5868              "uuid": "6b49958a-fd26-40d3-a188-202fe5e5904a",5869              "parentUUID": null,5870              "isHook": false,5871              "skipped": true5872            },5873            {5874              "title": "Balance can be retrieved from evm contract",5875              "fullTitle": "EVM payable contracts Balance can be retrieved from evm contract",5876              "timedOut": false,5877              "duration": 0,5878              "state": null,5879              "speed": null,5880              "pass": false,5881              "fail": false,5882              "pending": false,5883              "context": null,5884              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5885              "err": {},5886              "uuid": "1fe5e42d-f3cb-46fd-ad4e-0c1e4525fa4f",5887              "parentUUID": null,5888              "isHook": false,5889              "skipped": true5890            }5891          ],5892          "suites": [],5893          "passes": [],5894          "failures": [],5895          "pending": [],5896          "skipped": [5897            "822d164c-5ac7-440a-8e76-c165898af1af",5898            "e6b31921-975a-42c4-9675-bcab97445089",5899            "6b49958a-fd26-40d3-a188-202fe5e5904a",5900            "1fe5e42d-f3cb-46fd-ad4e-0c1e4525fa4f"5901          ],5902          "duration": 0,5903          "root": false,5904          "rootEmpty": false,5905          "_timeout": 99999995906        },5907        {5908          "uuid": "d7123b77-e85e-4f5c-835e-25fb7ea0995c",5909          "title": "Fungible (Via EVM proxy): Information getting",5910          "fullFile": "/nft_parachain/tests/src/eth/proxy/fungibleProxy.test.ts",5911          "file": "/src/eth/proxy/fungibleProxy.test.ts",5912          "beforeHooks": [],5913          "afterHooks": [],5914          "tests": [5915            {5916              "title": "totalSupply",5917              "fullTitle": "Fungible (Via EVM proxy): Information getting totalSupply",5918              "timedOut": false,5919              "duration": 0,5920              "state": null,5921              "speed": null,5922              "pass": false,5923              "fail": false,5924              "pending": false,5925              "context": null,5926              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5927              "err": {},5928              "uuid": "44d2365a-a35d-44cc-8cc0-8494474b9d2f",5929              "parentUUID": null,5930              "isHook": false,5931              "skipped": true5932            },5933            {5934              "title": "balanceOf",5935              "fullTitle": "Fungible (Via EVM proxy): Information getting balanceOf",5936              "timedOut": false,5937              "duration": 0,5938              "state": null,5939              "speed": null,5940              "pass": false,5941              "fail": false,5942              "pending": false,5943              "context": null,5944              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5945              "err": {},5946              "uuid": "9c9cc56c-a6ab-4f3d-8928-b6a7dac1bef2",5947              "parentUUID": null,5948              "isHook": false,5949              "skipped": true5950            }5951          ],5952          "suites": [],5953          "passes": [],5954          "failures": [],5955          "pending": [],5956          "skipped": [5957            "44d2365a-a35d-44cc-8cc0-8494474b9d2f",5958            "9c9cc56c-a6ab-4f3d-8928-b6a7dac1bef2"5959          ],5960          "duration": 0,5961          "root": false,5962          "rootEmpty": false,5963          "_timeout": 99999995964        },5965        {5966          "uuid": "3d993567-a5f6-41b4-a454-426b2b0ba806",5967          "title": "Fungible (Via EVM proxy): Plain calls",5968          "fullFile": "/nft_parachain/tests/src/eth/proxy/fungibleProxy.test.ts",5969          "file": "/src/eth/proxy/fungibleProxy.test.ts",5970          "beforeHooks": [],5971          "afterHooks": [],5972          "tests": [5973            {5974              "title": "Can perform approve()",5975              "fullTitle": "Fungible (Via EVM proxy): Plain calls Can perform approve()",5976              "timedOut": false,5977              "duration": 0,5978              "state": null,5979              "speed": null,5980              "pass": false,5981              "fail": false,5982              "pending": false,5983              "context": null,5984              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",5985              "err": {},5986              "uuid": "85c01938-eb19-409f-9343-c89d4b128af5",5987              "parentUUID": null,5988              "isHook": false,5989              "skipped": true5990            },5991            {5992              "title": "Can perform transferFrom()",5993              "fullTitle": "Fungible (Via EVM proxy): Plain calls Can perform transferFrom()",5994              "timedOut": false,5995              "duration": 0,5996              "state": null,5997              "speed": null,5998              "pass": false,5999              "fail": false,6000              "pending": false,6001              "context": null,6002              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6003              "err": {},6004              "uuid": "978c10ed-0dcb-412f-b6a0-0e85366de9b1",6005              "parentUUID": null,6006              "isHook": false,6007              "skipped": true6008            },6009            {6010              "title": "Can perform transfer()",6011              "fullTitle": "Fungible (Via EVM proxy): Plain calls Can perform transfer()",6012              "timedOut": false,6013              "duration": 0,6014              "state": null,6015              "speed": null,6016              "pass": false,6017              "fail": false,6018              "pending": false,6019              "context": null,6020              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6021              "err": {},6022              "uuid": "3d203895-5663-4b95-b831-4d497ece8a12",6023              "parentUUID": null,6024              "isHook": false,6025              "skipped": true6026            }6027          ],6028          "suites": [],6029          "passes": [],6030          "failures": [],6031          "pending": [],6032          "skipped": [6033            "85c01938-eb19-409f-9343-c89d4b128af5",6034            "978c10ed-0dcb-412f-b6a0-0e85366de9b1",6035            "3d203895-5663-4b95-b831-4d497ece8a12"6036          ],6037          "duration": 0,6038          "root": false,6039          "rootEmpty": false,6040          "_timeout": 99999996041        },6042        {6043          "uuid": "a1237654-d12a-476d-a746-7e1caf639542",6044          "title": "NFT (Via EVM proxy): Information getting",6045          "fullFile": "/nft_parachain/tests/src/eth/proxy/nonFungibleProxy.test.ts",6046          "file": "/src/eth/proxy/nonFungibleProxy.test.ts",6047          "beforeHooks": [],6048          "afterHooks": [],6049          "tests": [6050            {6051              "title": "totalSupply",6052              "fullTitle": "NFT (Via EVM proxy): Information getting totalSupply",6053              "timedOut": false,6054              "duration": 0,6055              "state": null,6056              "speed": null,6057              "pass": false,6058              "fail": false,6059              "pending": false,6060              "context": null,6061              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6062              "err": {},6063              "uuid": "3e71410e-4799-4d58-95bc-6ea860550b52",6064              "parentUUID": null,6065              "isHook": false,6066              "skipped": true6067            },6068            {6069              "title": "balanceOf",6070              "fullTitle": "NFT (Via EVM proxy): Information getting balanceOf",6071              "timedOut": false,6072              "duration": 0,6073              "state": null,6074              "speed": null,6075              "pass": false,6076              "fail": false,6077              "pending": false,6078              "context": null,6079              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6080              "err": {},6081              "uuid": "28d140d6-9e3f-4b98-92fa-f8fa23158060",6082              "parentUUID": null,6083              "isHook": false,6084              "skipped": true6085            },6086            {6087              "title": "ownerOf",6088              "fullTitle": "NFT (Via EVM proxy): Information getting ownerOf",6089              "timedOut": false,6090              "duration": 0,6091              "state": null,6092              "speed": null,6093              "pass": false,6094              "fail": false,6095              "pending": false,6096              "context": null,6097              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6098              "err": {},6099              "uuid": "159d2f85-802f-4728-b7f3-ed156ce034f3",6100              "parentUUID": null,6101              "isHook": false,6102              "skipped": true6103            }6104          ],6105          "suites": [],6106          "passes": [],6107          "failures": [],6108          "pending": [],6109          "skipped": [6110            "3e71410e-4799-4d58-95bc-6ea860550b52",6111            "28d140d6-9e3f-4b98-92fa-f8fa23158060",6112            "159d2f85-802f-4728-b7f3-ed156ce034f3"6113          ],6114          "duration": 0,6115          "root": false,6116          "rootEmpty": false,6117          "_timeout": 99999996118        },6119        {6120          "uuid": "6024151e-59e4-4403-bbbb-578984a48786",6121          "title": "NFT (Via EVM proxy): Plain calls",6122          "fullFile": "/nft_parachain/tests/src/eth/proxy/nonFungibleProxy.test.ts",6123          "file": "/src/eth/proxy/nonFungibleProxy.test.ts",6124          "beforeHooks": [],6125          "afterHooks": [],6126          "tests": [6127            {6128              "title": "Can perform mint()",6129              "fullTitle": "NFT (Via EVM proxy): Plain calls Can perform mint()",6130              "timedOut": false,6131              "duration": 0,6132              "state": null,6133              "speed": null,6134              "pass": false,6135              "fail": false,6136              "pending": false,6137              "context": null,6138              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6139              "err": {},6140              "uuid": "b19fe432-9e66-4d0b-95d3-71c8da071695",6141              "parentUUID": null,6142              "isHook": false,6143              "skipped": true6144            },6145            {6146              "title": "Can perform burn()",6147              "fullTitle": "NFT (Via EVM proxy): Plain calls Can perform burn()",6148              "timedOut": false,6149              "duration": 0,6150              "state": null,6151              "speed": null,6152              "pass": false,6153              "fail": false,6154              "pending": false,6155              "context": null,6156              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6157              "err": {},6158              "uuid": "d9075a45-8e4b-4b0a-859f-7062a3bbfb08",6159              "parentUUID": null,6160              "isHook": false,6161              "skipped": true6162            },6163            {6164              "title": "Can perform approve()",6165              "fullTitle": "NFT (Via EVM proxy): Plain calls Can perform approve()",6166              "timedOut": false,6167              "duration": 0,6168              "state": null,6169              "speed": null,6170              "pass": false,6171              "fail": false,6172              "pending": false,6173              "context": null,6174              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6175              "err": {},6176              "uuid": "1e441b49-2c31-4352-8737-99d9fd0a53ce",6177              "parentUUID": null,6178              "isHook": false,6179              "skipped": true6180            },6181            {6182              "title": "Can perform transferFrom()",6183              "fullTitle": "NFT (Via EVM proxy): Plain calls Can perform transferFrom()",6184              "timedOut": false,6185              "duration": 0,6186              "state": null,6187              "speed": null,6188              "pass": false,6189              "fail": false,6190              "pending": false,6191              "context": null,6192              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6193              "err": {},6194              "uuid": "caa9e0f6-b5f8-4765-9a78-5a57314a93d4",6195              "parentUUID": null,6196              "isHook": false,6197              "skipped": true6198            },6199            {6200              "title": "Can perform transfer()",6201              "fullTitle": "NFT (Via EVM proxy): Plain calls Can perform transfer()",6202              "timedOut": false,6203              "duration": 0,6204              "state": null,6205              "speed": null,6206              "pass": false,6207              "fail": false,6208              "pending": false,6209              "context": null,6210              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6211              "err": {},6212              "uuid": "9c70266f-3630-4867-bd98-99f85f3ad367",6213              "parentUUID": null,6214              "isHook": false,6215              "skipped": true6216            }6217          ],6218          "suites": [],6219          "passes": [],6220          "failures": [],6221          "pending": [],6222          "skipped": [6223            "b19fe432-9e66-4d0b-95d3-71c8da071695",6224            "d9075a45-8e4b-4b0a-859f-7062a3bbfb08",6225            "1e441b49-2c31-4352-8737-99d9fd0a53ce",6226            "caa9e0f6-b5f8-4765-9a78-5a57314a93d4",6227            "9c70266f-3630-4867-bd98-99f85f3ad367"6228          ],6229          "duration": 0,6230          "root": false,6231          "rootEmpty": false,6232          "_timeout": 99999996233        },6234        {6235          "uuid": "a6b7f868-6106-44c7-94bd-a23435c69ce8",6236          "title": "EVM sponsoring",6237          "fullFile": "/nft_parachain/tests/src/eth/sponsoring.test.ts",6238          "file": "/src/eth/sponsoring.test.ts",6239          "beforeHooks": [],6240          "afterHooks": [],6241          "tests": [6242            {6243              "title": "Fee is deducted from contract if sponsoring is enabled",6244              "fullTitle": "EVM sponsoring Fee is deducted from contract if sponsoring is enabled",6245              "timedOut": false,6246              "duration": 0,6247              "state": null,6248              "speed": null,6249              "pass": false,6250              "fail": false,6251              "pending": false,6252              "context": null,6253              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6254              "err": {},6255              "uuid": "e7d2b28d-add7-48b9-bb49-0f6e3de0e911",6256              "parentUUID": null,6257              "isHook": false,6258              "skipped": true6259            },6260            {6261              "title": "...but this doesn't applies to payable value",6262              "fullTitle": "EVM sponsoring ...but this doesn't applies to payable value",6263              "timedOut": false,6264              "duration": 0,6265              "state": null,6266              "speed": null,6267              "pass": false,6268              "fail": false,6269              "pending": false,6270              "context": null,6271              "code": "await substrate_api_1.default(async (api) => {\n    await usingWeb3(async (web3) => {\n        await cb({ api, web3 });\n    });\n});",6272              "err": {},6273              "uuid": "3b4ee7bd-ce13-4061-bb00-b42c12a56a51",6274              "parentUUID": null,6275              "isHook": false,6276              "skipped": true6277            }6278          ],6279          "suites": [],6280          "passes": [],6281          "failures": [],6282          "pending": [],6283          "skipped": [6284            "e7d2b28d-add7-48b9-bb49-0f6e3de0e911",6285            "3b4ee7bd-ce13-4061-bb00-b42c12a56a51"6286          ],6287          "duration": 0,6288          "root": false,6289          "rootEmpty": false,6290          "_timeout": 99999996291        },6292        {6293          "uuid": "3a782123-a540-4917-97ca-acaa03e2ec44",6294          "title": "integration test: Inflation",6295          "fullFile": "/nft_parachain/tests/src/inflation.test.ts",6296          "file": "/src/inflation.test.ts",6297          "beforeHooks": [],6298          "afterHooks": [],6299          "tests": [6300            {6301              "title": "First year inflation is 10%",6302              "fullTitle": "integration test: Inflation First year inflation is 10%",6303              "timedOut": false,6304              "duration": 0,6305              "state": null,6306              "speed": null,6307              "pass": false,6308              "fail": false,6309              "pending": false,6310              "context": null,6311              "code": "await substrate_api_1.default(async (api) => {\n    const blockInterval = parseInt((await api.consts.inflation.inflationBlockInterval).toString());\n    const totalIssuanceStart = new bignumber_js_1.BigNumber((await api.query.inflation.startingYearTotalIssuance()).toString());\n    const blockInflation = new bignumber_js_1.BigNumber((await api.query.inflation.blockInflation()).toString());\n    const YEAR = 5259600; // Blocks in one year\n    const totalExpectedInflation = totalIssuanceStart.multipliedBy(0.1);\n    const totalActualInflation = blockInflation.multipliedBy(YEAR / blockInterval);\n    const tolerance = 0.00001; // Relative difference per year between theoretical and actual inflation\n    expect(totalExpectedInflation.dividedBy(totalActualInflation).minus(1).abs().toNumber()).to.be.lessThan(tolerance);\n});",6312              "err": {},6313              "uuid": "4bb3a25e-9223-42c1-b99a-b78e248ac864",6314              "parentUUID": null,6315              "isHook": false,6316              "skipped": true6317            }6318          ],6319          "suites": [],6320          "passes": [],6321          "failures": [],6322          "pending": [],6323          "skipped": [6324            "4bb3a25e-9223-42c1-b99a-b78e248ac864"6325          ],6326          "duration": 0,6327          "root": false,6328          "rootEmpty": false,6329          "_timeout": 99999996330        },6331        {6332          "uuid": "3cb447bc-3795-43d4-ba76-9e96f7c10164",6333          "title": "Integration Test fungible overflows",6334          "fullFile": "/nft_parachain/tests/src/overflow.test.ts",6335          "file": "/src/overflow.test.ts",6336          "beforeHooks": [6337            {6338              "title": "\"before all\" hook",6339              "fullTitle": "Integration Test fungible overflows \"before all\" hook",6340              "timedOut": false,6341              "duration": 0,6342              "state": null,6343              "speed": null,6344              "pass": false,6345              "fail": false,6346              "pending": false,6347              "context": null,6348              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n    charlie = privateKey_1.default('//Charlie');\n});",6349              "err": {},6350              "uuid": "87cb3cb2-344b-41dc-ab4e-43a13a6f956a",6351              "parentUUID": null,6352              "isHook": true,6353              "skipped": false6354            }6355          ],6356          "afterHooks": [],6357          "tests": [6358            {6359              "title": "fails when overflows on transfer",6360              "fullTitle": "Integration Test fungible overflows fails when overflows on transfer",6361              "timedOut": false,6362              "duration": 0,6363              "state": null,6364              "speed": null,6365              "pass": false,6366              "fail": false,6367              "pending": false,6368              "context": null,6369              "code": "const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.createFungibleItemExpectSuccess(alice, fungibleCollectionId, { Value: helpers_1.U128_MAX });\nawait helpers_1.transferExpectSuccess(fungibleCollectionId, 0, alice, bob, helpers_1.U128_MAX, 'Fungible');\nawait helpers_1.createFungibleItemExpectSuccess(alice, fungibleCollectionId, { Value: 1n });\nawait helpers_1.transferExpectFailure(fungibleCollectionId, 0, alice, bob, 1);\nexpect(await helpers_1.getFungibleBalance(fungibleCollectionId, alice.address)).to.equal(1n);\nexpect(await helpers_1.getFungibleBalance(fungibleCollectionId, bob.address)).to.equal(helpers_1.U128_MAX);",6370              "err": {},6371              "uuid": "494b4340-c214-43e1-9a60-bf5ed837b911",6372              "parentUUID": null,6373              "isHook": false,6374              "skipped": true6375            },6376            {6377              "title": "fails on allowance overflow",6378              "fullTitle": "Integration Test fungible overflows fails on allowance overflow",6379              "timedOut": false,6380              "duration": 0,6381              "state": null,6382              "speed": null,6383              "pass": false,6384              "fail": false,6385              "pending": false,6386              "context": null,6387              "code": "const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.createFungibleItemExpectSuccess(alice, fungibleCollectionId, { Value: helpers_1.U128_MAX });\nawait helpers_1.approveExpectSuccess(fungibleCollectionId, 0, alice, bob, helpers_1.U128_MAX);\nawait helpers_1.approveExpectFail(fungibleCollectionId, 0, alice, bob, helpers_1.U128_MAX);",6388              "err": {},6389              "uuid": "576bd335-6c12-4c4b-8330-3df79feaebab",6390              "parentUUID": null,6391              "isHook": false,6392              "skipped": true6393            },6394            {6395              "title": "fails when overflows on transferFrom",6396              "fullTitle": "Integration Test fungible overflows fails when overflows on transferFrom",6397              "timedOut": false,6398              "duration": 0,6399              "state": null,6400              "speed": null,6401              "pass": false,6402              "fail": false,6403              "pending": false,6404              "context": null,6405              "code": "const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.createFungibleItemExpectSuccess(alice, fungibleCollectionId, { Value: helpers_1.U128_MAX });\nawait helpers_1.approveExpectSuccess(fungibleCollectionId, 0, alice, bob, helpers_1.U128_MAX);\nawait helpers_1.transferFromExpectSuccess(fungibleCollectionId, 0, bob, alice, charlie, helpers_1.U128_MAX, 'Fungible');\nexpect(await helpers_1.getFungibleBalance(fungibleCollectionId, charlie.address)).to.equal(helpers_1.U128_MAX);\nexpect((await helpers_1.getAllowance(fungibleCollectionId, 0, alice.address, bob.address)).toString()).to.equal('0');\nawait helpers_1.createFungibleItemExpectSuccess(alice, fungibleCollectionId, { Value: helpers_1.U128_MAX });\nawait helpers_1.approveExpectSuccess(fungibleCollectionId, 0, alice, bob, 1n);\nawait helpers_1.transferFromExpectFail(fungibleCollectionId, 0, bob, alice, charlie, 1);\nexpect(await helpers_1.getFungibleBalance(fungibleCollectionId, charlie.address)).to.equal(helpers_1.U128_MAX);\nexpect((await helpers_1.getAllowance(fungibleCollectionId, 0, alice.address, bob.address)).toString()).to.equal('1');",6406              "err": {},6407              "uuid": "a384b326-375e-4c27-96d7-ebb95b0f2952",6408              "parentUUID": null,6409              "isHook": false,6410              "skipped": true6411            }6412          ],6413          "suites": [],6414          "passes": [],6415          "failures": [],6416          "pending": [],6417          "skipped": [6418            "494b4340-c214-43e1-9a60-bf5ed837b911",6419            "576bd335-6c12-4c4b-8330-3df79feaebab",6420            "a384b326-375e-4c27-96d7-ebb95b0f2952"6421          ],6422          "duration": 0,6423          "root": false,6424          "rootEmpty": false,6425          "_timeout": 99999996426        },6427        {6428          "uuid": "eb63d35a-61f0-4f4b-97a3-3d752c0ed6ff",6429          "title": "Pallet presence",6430          "fullFile": "/nft_parachain/tests/src/pallet-presence.test.ts",6431          "file": "/src/pallet-presence.test.ts",6432          "beforeHooks": [],6433          "afterHooks": [],6434          "tests": [6435            {6436              "title": "Required pallets are present",6437              "fullTitle": "Pallet presence Required pallets are present",6438              "timedOut": false,6439              "duration": 0,6440              "state": null,6441              "speed": null,6442              "pass": false,6443              "fail": false,6444              "pending": false,6445              "context": null,6446              "code": "await substrate_api_1.default(async (api) => {\n    for (let i = 0; i < requiredPallets.length; i++) {\n        chai_1.expect(getModuleNames(api)).to.include(requiredPallets[i]);\n    }\n});",6447              "err": {},6448              "uuid": "ef7906da-de02-4c50-a4b9-2afeba4cff54",6449              "parentUUID": null,6450              "isHook": false,6451              "skipped": true6452            },6453            {6454              "title": "Governance and consensus pallets are present",6455              "fullTitle": "Pallet presence Governance and consensus pallets are present",6456              "timedOut": false,6457              "duration": 0,6458              "state": null,6459              "speed": null,6460              "pass": false,6461              "fail": false,6462              "pending": false,6463              "context": null,6464              "code": "await substrate_api_1.default(async (api) => {\n    for (let i = 0; i < consensusPallets.length; i++) {\n        chai_1.expect(getModuleNames(api)).to.include(consensusPallets[i]);\n    }\n});",6465              "err": {},6466              "uuid": "cdc09d05-ff48-4fa1-9afa-5a868164a7d3",6467              "parentUUID": null,6468              "isHook": false,6469              "skipped": true6470            },6471            {6472              "title": "No extra pallets are included",6473              "fullTitle": "Pallet presence No extra pallets are included",6474              "timedOut": false,6475              "duration": 0,6476              "state": null,6477              "speed": null,6478              "pass": false,6479              "fail": false,6480              "pending": false,6481              "context": null,6482              "code": "await substrate_api_1.default(async (api) => {\n    chai_1.expect(getModuleNames(api).sort()).to.be.deep.equal([...requiredPallets, ...consensusPallets].sort());\n});",6483              "err": {},6484              "uuid": "3e3cc583-e342-44b9-a5c3-7a9101d48118",6485              "parentUUID": null,6486              "isHook": false,6487              "skipped": true6488            }6489          ],6490          "suites": [],6491          "passes": [],6492          "failures": [],6493          "pending": [],6494          "skipped": [6495            "ef7906da-de02-4c50-a4b9-2afeba4cff54",6496            "cdc09d05-ff48-4fa1-9afa-5a868164a7d3",6497            "3e3cc583-e342-44b9-a5c3-7a9101d48118"6498          ],6499          "duration": 0,6500          "root": false,6501          "rootEmpty": false,6502          "_timeout": 99999996503        },6504        {6505          "uuid": "dc732f9f-225a-4ac1-b53c-d6d723388d72",6506          "title": "Integration Test removeCollectionAdmin(collection_id, account_id):",6507          "fullFile": "/nft_parachain/tests/src/removeCollectionAdmin.test.ts",6508          "file": "/src/removeCollectionAdmin.test.ts",6509          "beforeHooks": [],6510          "afterHooks": [],6511          "tests": [6512            {6513              "title": "Remove collection admin.",6514              "fullTitle": "Integration Test removeCollectionAdmin(collection_id, account_id): Remove collection admin.",6515              "timedOut": false,6516              "duration": 0,6517              "state": null,6518              "speed": null,6519              "pass": false,6520              "fail": false,6521              "pending": false,6522              "context": null,6523              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.deep.eq(Alice.address);\n    // first - add collection admin Bob\n    const addAdminTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await substrate_api_1.submitTransactionAsync(Alice, addAdminTx);\n    const adminListAfterAddAdmin = (await api.query.nft.adminList(collectionId)).toJSON();\n    expect(adminListAfterAddAdmin).to.be.deep.contains(helpers_1.normalizeAccountId(Bob.address));\n    // then remove bob from admins of collection\n    const removeAdminTx = api.tx.nft.removeCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await substrate_api_1.submitTransactionAsync(Alice, removeAdminTx);\n    const adminListAfterRemoveAdmin = (await api.query.nft.adminList(collectionId)).toJSON;\n    expect(adminListAfterRemoveAdmin).not.to.be.deep.contains(helpers_1.normalizeAccountId(Bob.address));\n});",6524              "err": {},6525              "uuid": "1e89bb51-7d8b-4059-8bec-06511701d088",6526              "parentUUID": null,6527              "isHook": false,6528              "skipped": true6529            },6530            {6531              "title": "Remove collection admin by admin.",6532              "fullTitle": "Integration Test removeCollectionAdmin(collection_id, account_id): Remove collection admin by admin.",6533              "timedOut": false,6534              "duration": 0,6535              "state": null,6536              "speed": null,6537              "pass": false,6538              "fail": false,6539              "pending": false,6540              "context": null,6541              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    const Charlie = privateKey_1.default('//Charlie');\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.deep.eq(Alice.address);\n    // first - add collection admin Bob\n    const addAdminTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await substrate_api_1.submitTransactionAsync(Alice, addAdminTx);\n    const addAdminTx2 = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Charlie.address));\n    await substrate_api_1.submitTransactionAsync(Alice, addAdminTx2);\n    const adminListAfterAddAdmin = (await api.query.nft.adminList(collectionId)).toJSON();\n    expect(adminListAfterAddAdmin).to.be.deep.contains(helpers_1.normalizeAccountId(Bob.address));\n    // then remove bob from admins of collection\n    const removeAdminTx = api.tx.nft.removeCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await substrate_api_1.submitTransactionAsync(Charlie, removeAdminTx);\n    const adminListAfterRemoveAdmin = (await api.query.nft.adminList(collectionId)).toJSON;\n    expect(adminListAfterRemoveAdmin).not.to.be.deep.contains(helpers_1.normalizeAccountId(Bob.address));\n});",6542              "err": {},6543              "uuid": "aa6bb14d-7b07-4c11-8f63-f19f34678e0d",6544              "parentUUID": null,6545              "isHook": false,6546              "skipped": true6547            },6548            {6549              "title": "Remove admin from collection that has no admins",6550              "fullTitle": "Integration Test removeCollectionAdmin(collection_id, account_id): Remove admin from collection that has no admins",6551              "timedOut": false,6552              "duration": 0,6553              "state": null,6554              "speed": null,6555              "pass": false,6556              "fail": false,6557              "pending": false,6558              "context": null,6559              "code": "await substrate_api_1.default(async (api) => {\n    const Alice = privateKey_1.default('//Alice');\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const adminListBeforeAddAdmin = (await api.query.nft.adminList(collectionId));\n    expect(adminListBeforeAddAdmin).to.have.lengthOf(0);\n    const tx = api.tx.nft.removeCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Alice.address));\n    await substrate_api_1.submitTransactionAsync(Alice, tx);\n});",6560              "err": {},6561              "uuid": "19946d54-de8a-4a6b-95bd-05d67da4992a",6562              "parentUUID": null,6563              "isHook": false,6564              "skipped": true6565            }6566          ],6567          "suites": [],6568          "passes": [],6569          "failures": [],6570          "pending": [],6571          "skipped": [6572            "1e89bb51-7d8b-4059-8bec-06511701d088",6573            "aa6bb14d-7b07-4c11-8f63-f19f34678e0d",6574            "19946d54-de8a-4a6b-95bd-05d67da4992a"6575          ],6576          "duration": 0,6577          "root": false,6578          "rootEmpty": false,6579          "_timeout": 99999996580        },6581        {6582          "uuid": "55dcf9fb-d81f-497c-8e8f-362fe16e8d9b",6583          "title": "Negative Integration Test removeCollectionAdmin(collection_id, account_id):",6584          "fullFile": "/nft_parachain/tests/src/removeCollectionAdmin.test.ts",6585          "file": "/src/removeCollectionAdmin.test.ts",6586          "beforeHooks": [],6587          "afterHooks": [],6588          "tests": [6589            {6590              "title": "Can't remove collection admin from not existing collection",6591              "fullTitle": "Negative Integration Test removeCollectionAdmin(collection_id, account_id): Can't remove collection admin from not existing collection",6592              "timedOut": false,6593              "duration": 0,6594              "state": null,6595              "speed": null,6596              "pass": false,6597              "fail": false,6598              "pending": false,6599              "context": null,6600              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = (1 << 32) - 1;\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const changeOwnerTx = api.tx.nft.removeCollectionAdmin(collectionId, helpers_1.normalizeAccountId(bob.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, changeOwnerTx)).to.be.rejected;\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",6601              "err": {},6602              "uuid": "cb3c0197-2eda-459f-98f2-fb24f0c8682a",6603              "parentUUID": null,6604              "isHook": false,6605              "skipped": true6606            },6607            {6608              "title": "Can't remove collection admin from deleted collection",6609              "fullTitle": "Negative Integration Test removeCollectionAdmin(collection_id, account_id): Can't remove collection admin from deleted collection",6610              "timedOut": false,6611              "duration": 0,6612              "state": null,6613              "speed": null,6614              "pass": false,6615              "fail": false,6616              "pending": false,6617              "context": null,6618              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n    const changeOwnerTx = api.tx.nft.removeCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, changeOwnerTx)).to.be.rejected;\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",6619              "err": {},6620              "uuid": "10428424-2150-4a02-a617-0b21f301e690",6621              "parentUUID": null,6622              "isHook": false,6623              "skipped": true6624            },6625            {6626              "title": "Regular user Can't remove collection admin",6627              "fullTitle": "Negative Integration Test removeCollectionAdmin(collection_id, account_id): Regular user Can't remove collection admin",6628              "timedOut": false,6629              "duration": 0,6630              "state": null,6631              "speed": null,6632              "pass": false,6633              "fail": false,6634              "pending": false,6635              "context": null,6636              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    const Charlie = privateKey_1.default('//Charlie');\n    const addAdminTx = api.tx.nft.addCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await substrate_api_1.submitTransactionAsync(Alice, addAdminTx);\n    const changeOwnerTx = api.tx.nft.removeCollectionAdmin(collectionId, helpers_1.normalizeAccountId(Bob.address));\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Charlie, changeOwnerTx)).to.be.rejected;\n    // Verifying that nothing bad happened (network is live, new collections can be created, etc.)\n    await helpers_1.createCollectionExpectSuccess();\n});",6637              "err": {},6638              "uuid": "f4f77126-8ff7-41fa-8b6a-0136f721d9b6",6639              "parentUUID": null,6640              "isHook": false,6641              "skipped": true6642            }6643          ],6644          "suites": [],6645          "passes": [],6646          "failures": [],6647          "pending": [],6648          "skipped": [6649            "cb3c0197-2eda-459f-98f2-fb24f0c8682a",6650            "10428424-2150-4a02-a617-0b21f301e690",6651            "f4f77126-8ff7-41fa-8b6a-0136f721d9b6"6652          ],6653          "duration": 0,6654          "root": false,6655          "rootEmpty": false,6656          "_timeout": 99999996657        },6658        {6659          "uuid": "4964745b-c07c-469a-bd86-3aabe116e79c",6660          "title": "integration test: ext. removeCollectionSponsor():",6661          "fullFile": "/nft_parachain/tests/src/removeCollectionSponsor.test.ts",6662          "file": "/src/removeCollectionSponsor.test.ts",6663          "beforeHooks": [6664            {6665              "title": "\"before all\" hook",6666              "fullTitle": "integration test: ext. removeCollectionSponsor(): \"before all\" hook",6667              "timedOut": false,6668              "duration": 0,6669              "state": null,6670              "speed": null,6671              "pass": false,6672              "fail": false,6673              "pending": false,6674              "context": null,6675              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",6676              "err": {},6677              "uuid": "073aa191-794a-43ea-afe9-eece5ca6ea5b",6678              "parentUUID": null,6679              "isHook": true,6680              "skipped": false6681            }6682          ],6683          "afterHooks": [],6684          "tests": [6685            {6686              "title": "Removing NFT collection sponsor stops sponsorship",6687              "fullTitle": "integration test: ext. removeCollectionSponsor(): Removing NFT collection sponsor stops sponsorship",6688              "timedOut": false,6689              "duration": 0,6690              "state": null,6691              "speed": null,6692              "pass": false,6693              "fail": false,6694              "pending": false,6695              "context": null,6696              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait helpers_1.removeCollectionSponsorExpectSuccess(collectionId);\nawait substrate_api_1.default(async (api) => {\n    // Find unused address\n    const zeroBalance = await helpers_1.findUnusedAddress(api);\n    // Mint token for unused address\n    const itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT', zeroBalance.address);\n    // Transfer this tokens from unused address to Alice - should fail\n    const AsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    const zeroToAlice = api.tx.nft.transfer(helpers_1.normalizeAccountId(alice.address), collectionId, itemId, 0);\n    const badTransaction = async function () {\n        await substrate_api_1.submitTransactionExpectFailAsync(zeroBalance, zeroToAlice);\n    };\n    await expect(badTransaction()).to.be.rejectedWith('Inability to pay some fees');\n    const BsponsorBalance = new bignumber_js_1.BigNumber((await api.query.system.account(bob.address)).data.free.toString());\n    expect(BsponsorBalance.isEqualTo(AsponsorBalance)).to.be.true;\n});",6697              "err": {},6698              "uuid": "7340d2b9-1efe-4571-adb6-2fc324d04587",6699              "parentUUID": null,6700              "isHook": false,6701              "skipped": true6702            },6703            {6704              "title": "Remove a sponsor after it was already removed",6705              "fullTitle": "integration test: ext. removeCollectionSponsor(): Remove a sponsor after it was already removed",6706              "timedOut": false,6707              "duration": 0,6708              "state": null,6709              "speed": null,6710              "pass": false,6711              "fail": false,6712              "pending": false,6713              "context": null,6714              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait helpers_1.removeCollectionSponsorExpectSuccess(collectionId);\nawait helpers_1.removeCollectionSponsorExpectSuccess(collectionId);",6715              "err": {},6716              "uuid": "989ef0aa-29ba-40e5-a468-77743d0450c7",6717              "parentUUID": null,6718              "isHook": false,6719              "skipped": true6720            },6721            {6722              "title": "Remove sponsor in a collection that never had the sponsor set",6723              "fullTitle": "integration test: ext. removeCollectionSponsor(): Remove sponsor in a collection that never had the sponsor set",6724              "timedOut": false,6725              "duration": 0,6726              "state": null,6727              "speed": null,6728              "pass": false,6729              "fail": false,6730              "pending": false,6731              "context": null,6732              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.removeCollectionSponsorExpectSuccess(collectionId);",6733              "err": {},6734              "uuid": "48c44c61-dfae-46bf-9862-a56e3377f5d3",6735              "parentUUID": null,6736              "isHook": false,6737              "skipped": true6738            },6739            {6740              "title": "Remove sponsor for a collection that had the sponsor set, but not confirmed",6741              "fullTitle": "integration test: ext. removeCollectionSponsor(): Remove sponsor for a collection that had the sponsor set, but not confirmed",6742              "timedOut": false,6743              "duration": 0,6744              "state": null,6745              "speed": null,6746              "pass": false,6747              "fail": false,6748              "pending": false,6749              "context": null,6750              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.removeCollectionSponsorExpectSuccess(collectionId);",6751              "err": {},6752              "uuid": "79a34054-2bf6-453f-ab67-996b5a978801",6753              "parentUUID": null,6754              "isHook": false,6755              "skipped": true6756            }6757          ],6758          "suites": [],6759          "passes": [],6760          "failures": [],6761          "pending": [],6762          "skipped": [6763            "7340d2b9-1efe-4571-adb6-2fc324d04587",6764            "989ef0aa-29ba-40e5-a468-77743d0450c7",6765            "48c44c61-dfae-46bf-9862-a56e3377f5d3",6766            "79a34054-2bf6-453f-ab67-996b5a978801"6767          ],6768          "duration": 0,6769          "root": false,6770          "rootEmpty": false,6771          "_timeout": 99999996772        },6773        {6774          "uuid": "46267fd7-8042-4ac8-8efa-9e6b2a450d98",6775          "title": "(!negative test!) integration test: ext. removeCollectionSponsor():",6776          "fullFile": "/nft_parachain/tests/src/removeCollectionSponsor.test.ts",6777          "file": "/src/removeCollectionSponsor.test.ts",6778          "beforeHooks": [6779            {6780              "title": "\"before all\" hook",6781              "fullTitle": "(!negative test!) integration test: ext. removeCollectionSponsor(): \"before all\" hook",6782              "timedOut": false,6783              "duration": 0,6784              "state": null,6785              "speed": null,6786              "pass": false,6787              "fail": false,6788              "pending": false,6789              "context": null,6790              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",6791              "err": {},6792              "uuid": "ed73243a-c3b3-47dc-accf-cfb8e03021ae",6793              "parentUUID": null,6794              "isHook": true,6795              "skipped": false6796            }6797          ],6798          "afterHooks": [],6799          "tests": [6800            {6801              "title": "(!negative test!) Remove sponsor for a collection that never existed",6802              "fullTitle": "(!negative test!) integration test: ext. removeCollectionSponsor(): (!negative test!) Remove sponsor for a collection that never existed",6803              "timedOut": false,6804              "duration": 0,6805              "state": null,6806              "speed": null,6807              "pass": false,6808              "fail": false,6809              "pending": false,6810              "context": null,6811              "code": "// Find the collection that never existed\nlet collectionId = 0;\nawait substrate_api_1.default(async (api) => {\n    collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n});\nawait helpers_1.removeCollectionSponsorExpectFailure(collectionId);",6812              "err": {},6813              "uuid": "e35932f4-4d42-4d65-8d46-7246df195d99",6814              "parentUUID": null,6815              "isHook": false,6816              "skipped": true6817            },6818            {6819              "title": "(!negative test!) Remove sponsor for a collection with collection admin permissions",6820              "fullTitle": "(!negative test!) integration test: ext. removeCollectionSponsor(): (!negative test!) Remove sponsor for a collection with collection admin permissions",6821              "timedOut": false,6822              "duration": 0,6823              "state": null,6824              "speed": null,6825              "pass": false,6826              "fail": false,6827              "pending": false,6828              "context": null,6829              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\nawait helpers_1.removeCollectionSponsorExpectFailure(collectionId, '//Bob');",6830              "err": {},6831              "uuid": "85ae77c3-2b77-4f93-a49c-5b607907004e",6832              "parentUUID": null,6833              "isHook": false,6834              "skipped": true6835            },6836            {6837              "title": "(!negative test!) Remove sponsor for a collection by regular user",6838              "fullTitle": "(!negative test!) integration test: ext. removeCollectionSponsor(): (!negative test!) Remove sponsor for a collection by regular user",6839              "timedOut": false,6840              "duration": 0,6841              "state": null,6842              "speed": null,6843              "pass": false,6844              "fail": false,6845              "pending": false,6846              "context": null,6847              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.removeCollectionSponsorExpectFailure(collectionId, '//Bob');",6848              "err": {},6849              "uuid": "7aaae6ca-2617-469d-9192-6689adf16516",6850              "parentUUID": null,6851              "isHook": false,6852              "skipped": true6853            },6854            {6855              "title": "(!negative test!) Remove sponsor in a destroyed collection",6856              "fullTitle": "(!negative test!) integration test: ext. removeCollectionSponsor(): (!negative test!) Remove sponsor in a destroyed collection",6857              "timedOut": false,6858              "duration": 0,6859              "state": null,6860              "speed": null,6861              "pass": false,6862              "fail": false,6863              "pending": false,6864              "context": null,6865              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);\nawait helpers_1.removeCollectionSponsorExpectFailure(collectionId);",6866              "err": {},6867              "uuid": "9d7a6e72-16ef-4ce7-a2a3-adf9ab8682a6",6868              "parentUUID": null,6869              "isHook": false,6870              "skipped": true6871            },6872            {6873              "title": "Set - remove - confirm: fails",6874              "fullTitle": "(!negative test!) integration test: ext. removeCollectionSponsor(): Set - remove - confirm: fails",6875              "timedOut": false,6876              "duration": 0,6877              "state": null,6878              "speed": null,6879              "pass": false,6880              "fail": false,6881              "pending": false,6882              "context": null,6883              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.removeCollectionSponsorExpectSuccess(collectionId);\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Bob');",6884              "err": {},6885              "uuid": "271077e2-6ea6-4690-a3a5-2194bb57a35c",6886              "parentUUID": null,6887              "isHook": false,6888              "skipped": true6889            },6890            {6891              "title": "Set - confirm - remove - confirm: Sponsor cannot come back",6892              "fullTitle": "(!negative test!) integration test: ext. removeCollectionSponsor(): Set - confirm - remove - confirm: Sponsor cannot come back",6893              "timedOut": false,6894              "duration": 0,6895              "state": null,6896              "speed": null,6897              "pass": false,6898              "fail": false,6899              "pending": false,6900              "context": null,6901              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId, '//Bob');\nawait helpers_1.removeCollectionSponsorExpectSuccess(collectionId);\nawait helpers_1.confirmSponsorshipExpectFailure(collectionId, '//Bob');",6902              "err": {},6903              "uuid": "cce11642-dcd7-40f6-bfdb-b1da80351677",6904              "parentUUID": null,6905              "isHook": false,6906              "skipped": true6907            }6908          ],6909          "suites": [],6910          "passes": [],6911          "failures": [],6912          "pending": [],6913          "skipped": [6914            "e35932f4-4d42-4d65-8d46-7246df195d99",6915            "85ae77c3-2b77-4f93-a49c-5b607907004e",6916            "7aaae6ca-2617-469d-9192-6689adf16516",6917            "9d7a6e72-16ef-4ce7-a2a3-adf9ab8682a6",6918            "271077e2-6ea6-4690-a3a5-2194bb57a35c",6919            "cce11642-dcd7-40f6-bfdb-b1da80351677"6920          ],6921          "duration": 0,6922          "root": false,6923          "rootEmpty": false,6924          "_timeout": 99999996925        },6926        {6927          "uuid": "090e386e-3947-4ceb-b0e9-56c8c3508d7b",6928          "title": "Integration Test removeFromContractWhiteList",6929          "fullFile": "/nft_parachain/tests/src/removeFromContractWhiteList.test.ts",6930          "file": "/src/removeFromContractWhiteList.test.ts",6931          "beforeHooks": [],6932          "afterHooks": [],6933          "tests": [6934            {6935              "title": "user is no longer whitelisted after removal",6936              "fullTitle": "Integration Test removeFromContractWhiteList user is no longer whitelisted after removal",6937              "timedOut": false,6938              "duration": 0,6939              "state": null,6940              "speed": null,6941              "pass": false,6942              "fail": false,6943              "pending": true,6944              "context": null,6945              "code": "",6946              "err": {},6947              "uuid": "30612bcc-b508-4b33-a278-2fe06ac300e1",6948              "parentUUID": null,6949              "isHook": false,6950              "skipped": false6951            },6952            {6953              "title": "user can't execute contract after removal",6954              "fullTitle": "Integration Test removeFromContractWhiteList user can't execute contract after removal",6955              "timedOut": false,6956              "duration": 0,6957              "state": null,6958              "speed": null,6959              "pass": false,6960              "fail": false,6961              "pending": true,6962              "context": null,6963              "code": "",6964              "err": {},6965              "uuid": "bbd33294-82f8-450b-b4cc-e40250a1abbc",6966              "parentUUID": null,6967              "isHook": false,6968              "skipped": false6969            },6970            {6971              "title": "can be called twice",6972              "fullTitle": "Integration Test removeFromContractWhiteList can be called twice",6973              "timedOut": false,6974              "duration": 0,6975              "state": null,6976              "speed": null,6977              "pass": false,6978              "fail": false,6979              "pending": true,6980              "context": null,6981              "code": "",6982              "err": {},6983              "uuid": "9b422317-c895-4d4d-84e2-d5fcb6691899",6984              "parentUUID": null,6985              "isHook": false,6986              "skipped": false6987            }6988          ],6989          "suites": [],6990          "passes": [],6991          "failures": [],6992          "pending": [6993            "30612bcc-b508-4b33-a278-2fe06ac300e1",6994            "bbd33294-82f8-450b-b4cc-e40250a1abbc",6995            "9b422317-c895-4d4d-84e2-d5fcb6691899"6996          ],6997          "skipped": [],6998          "duration": 0,6999          "root": false,7000          "rootEmpty": false,7001          "_timeout": 99999997002        },7003        {7004          "uuid": "d47d209d-7b8e-4624-9853-69ac8edb7cae",7005          "title": "Negative Integration Test removeFromContractWhiteList",7006          "fullFile": "/nft_parachain/tests/src/removeFromContractWhiteList.test.ts",7007          "file": "/src/removeFromContractWhiteList.test.ts",7008          "beforeHooks": [],7009          "afterHooks": [],7010          "tests": [7011            {7012              "title": "fails when called with non-contract address",7013              "fullTitle": "Negative Integration Test removeFromContractWhiteList fails when called with non-contract address",7014              "timedOut": false,7015              "duration": 0,7016              "state": null,7017              "speed": null,7018              "pass": false,7019              "fail": false,7020              "pending": true,7021              "context": null,7022              "code": "",7023              "err": {},7024              "uuid": "4f24edbc-cc11-419a-beda-b4f5523bbacc",7025              "parentUUID": null,7026              "isHook": false,7027              "skipped": false7028            },7029            {7030              "title": "fails when executed by non owner",7031              "fullTitle": "Negative Integration Test removeFromContractWhiteList fails when executed by non owner",7032              "timedOut": false,7033              "duration": 0,7034              "state": null,7035              "speed": null,7036              "pass": false,7037              "fail": false,7038              "pending": true,7039              "context": null,7040              "code": "",7041              "err": {},7042              "uuid": "bcbccafd-9285-4e64-9284-5f6db30eb825",7043              "parentUUID": null,7044              "isHook": false,7045              "skipped": false7046            }7047          ],7048          "suites": [],7049          "passes": [],7050          "failures": [],7051          "pending": [7052            "4f24edbc-cc11-419a-beda-b4f5523bbacc",7053            "bcbccafd-9285-4e64-9284-5f6db30eb825"7054          ],7055          "skipped": [],7056          "duration": 0,7057          "root": false,7058          "rootEmpty": false,7059          "_timeout": 99999997060        },7061        {7062          "uuid": "5645c742-0df3-48e9-a87e-17c9b86fc529",7063          "title": "Integration Test removeFromWhiteList",7064          "fullFile": "/nft_parachain/tests/src/removeFromWhiteList.test.ts",7065          "file": "/src/removeFromWhiteList.test.ts",7066          "beforeHooks": [7067            {7068              "title": "\"before all\" hook",7069              "fullTitle": "Integration Test removeFromWhiteList \"before all\" hook",7070              "timedOut": false,7071              "duration": 0,7072              "state": null,7073              "speed": null,7074              "pass": false,7075              "fail": false,7076              "pending": false,7077              "context": null,7078              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n});",7079              "err": {},7080              "uuid": "58a47998-94fb-4f5a-b1de-b091d4eb3c89",7081              "parentUUID": null,7082              "isHook": true,7083              "skipped": false7084            }7085          ],7086          "afterHooks": [],7087          "tests": [7088            {7089              "title": "ensure bob is not in whitelist after removal",7090              "fullTitle": "Integration Test removeFromWhiteList ensure bob is not in whitelist after removal",7091              "timedOut": false,7092              "duration": 0,7093              "state": null,7094              "speed": null,7095              "pass": false,7096              "fail": false,7097              "pending": false,7098              "context": null,7099              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionId, bob.address);\n    await helpers_1.removeFromWhiteListExpectSuccess(alice, collectionId, helpers_1.normalizeAccountId(bob.address));\n    expect(await helpers_1.isWhitelisted(collectionId, bob.address)).to.be.false;\n});",7100              "err": {},7101              "uuid": "ce40679f-cb58-4efd-9fab-0c937dbb8a16",7102              "parentUUID": null,7103              "isHook": false,7104              "skipped": true7105            },7106            {7107              "title": "allows removal from collection with unset whitelist status",7108              "fullTitle": "Integration Test removeFromWhiteList allows removal from collection with unset whitelist status",7109              "timedOut": false,7110              "duration": 0,7111              "state": null,7112              "speed": null,7113              "pass": false,7114              "fail": false,7115              "pending": false,7116              "context": null,7117              "code": "await substrate_api_1.default(async () => {\n    const collectionWithoutWhitelistId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionWithoutWhitelistId);\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionWithoutWhitelistId, bob.address);\n    await helpers_1.disableWhiteListExpectSuccess(alice, collectionWithoutWhitelistId);\n    await helpers_1.removeFromWhiteListExpectSuccess(alice, collectionWithoutWhitelistId, helpers_1.normalizeAccountId(bob.address));\n});",7118              "err": {},7119              "uuid": "dde05dbd-559a-45e3-9260-5830c90659ae",7120              "parentUUID": null,7121              "isHook": false,7122              "skipped": true7123            }7124          ],7125          "suites": [],7126          "passes": [],7127          "failures": [],7128          "pending": [],7129          "skipped": [7130            "ce40679f-cb58-4efd-9fab-0c937dbb8a16",7131            "dde05dbd-559a-45e3-9260-5830c90659ae"7132          ],7133          "duration": 0,7134          "root": false,7135          "rootEmpty": false,7136          "_timeout": 99999997137        },7138        {7139          "uuid": "19ce9466-ea0d-482a-ab0e-6cbdab561771",7140          "title": "Negative Integration Test removeFromWhiteList",7141          "fullFile": "/nft_parachain/tests/src/removeFromWhiteList.test.ts",7142          "file": "/src/removeFromWhiteList.test.ts",7143          "beforeHooks": [7144            {7145              "title": "\"before all\" hook",7146              "fullTitle": "Negative Integration Test removeFromWhiteList \"before all\" hook",7147              "timedOut": false,7148              "duration": 0,7149              "state": null,7150              "speed": null,7151              "pass": false,7152              "fail": false,7153              "pending": false,7154              "context": null,7155              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n});",7156              "err": {},7157              "uuid": "1a924510-3952-46dd-aa5c-548cfa332fac",7158              "parentUUID": null,7159              "isHook": true,7160              "skipped": false7161            }7162          ],7163          "afterHooks": [],7164          "tests": [7165            {7166              "title": "fails on removal from not existing collection",7167              "fullTitle": "Negative Integration Test removeFromWhiteList fails on removal from not existing collection",7168              "timedOut": false,7169              "duration": 0,7170              "state": null,7171              "speed": null,7172              "pass": false,7173              "fail": false,7174              "pending": false,7175              "context": null,7176              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.findNotExistingCollection(api);\n    await helpers_1.removeFromWhiteListExpectFailure(alice, collectionId, helpers_1.normalizeAccountId(bob.address));\n});",7177              "err": {},7178              "uuid": "3469734c-9e2c-4d43-beb3-f4b29eb1bd46",7179              "parentUUID": null,7180              "isHook": false,7181              "skipped": true7182            },7183            {7184              "title": "fails on removal from removed collection",7185              "fullTitle": "Negative Integration Test removeFromWhiteList fails on removal from removed collection",7186              "timedOut": false,7187              "duration": 0,7188              "state": null,7189              "speed": null,7190              "pass": false,7191              "fail": false,7192              "pending": false,7193              "context": null,7194              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionId, bob.address);\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n    await helpers_1.removeFromWhiteListExpectFailure(alice, collectionId, helpers_1.normalizeAccountId(bob.address));\n});",7195              "err": {},7196              "uuid": "bcbedd90-5b70-413f-84db-44643f560207",7197              "parentUUID": null,7198              "isHook": false,7199              "skipped": true7200            }7201          ],7202          "suites": [],7203          "passes": [],7204          "failures": [],7205          "pending": [],7206          "skipped": [7207            "3469734c-9e2c-4d43-beb3-f4b29eb1bd46",7208            "bcbedd90-5b70-413f-84db-44643f560207"7209          ],7210          "duration": 0,7211          "root": false,7212          "rootEmpty": false,7213          "_timeout": 99999997214        },7215        {7216          "uuid": "e52a884e-26af-4ea4-b808-af59702ee39c",7217          "title": "Integration Test removeFromWhiteList with collection admin permissions",7218          "fullFile": "/nft_parachain/tests/src/removeFromWhiteList.test.ts",7219          "file": "/src/removeFromWhiteList.test.ts",7220          "beforeHooks": [7221            {7222              "title": "\"before all\" hook",7223              "fullTitle": "Integration Test removeFromWhiteList with collection admin permissions \"before all\" hook",7224              "timedOut": false,7225              "duration": 0,7226              "state": null,7227              "speed": null,7228              "pass": false,7229              "fail": false,7230              "pending": false,7231              "context": null,7232              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n    charlie = privateKey_1.default('//Charlie');\n});",7233              "err": {},7234              "uuid": "a181856c-c084-4e13-aa7f-c1f70231fe00",7235              "parentUUID": null,7236              "isHook": true,7237              "skipped": false7238            }7239          ],7240          "afterHooks": [],7241          "tests": [7242            {7243              "title": "ensure address is not in whitelist after removal",7244              "fullTitle": "Integration Test removeFromWhiteList with collection admin permissions ensure address is not in whitelist after removal",7245              "timedOut": false,7246              "duration": 0,7247              "state": null,7248              "speed": null,7249              "pass": false,7250              "fail": false,7251              "pending": false,7252              "context": null,7253              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\n    await helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionId, charlie.address);\n    await helpers_1.removeFromWhiteListExpectSuccess(bob, collectionId, helpers_1.normalizeAccountId(charlie.address));\n    expect(await helpers_1.isWhitelisted(collectionId, charlie.address)).to.be.false;\n});",7254              "err": {},7255              "uuid": "95ab897e-27d4-4d3f-a10b-3c2be388a913",7256              "parentUUID": null,7257              "isHook": false,7258              "skipped": true7259            },7260            {7261              "title": "Collection admin allowed to remove from whitelist with unset whitelist status",7262              "fullTitle": "Integration Test removeFromWhiteList with collection admin permissions Collection admin allowed to remove from whitelist with unset whitelist status",7263              "timedOut": false,7264              "duration": 0,7265              "state": null,7266              "speed": null,7267              "pass": false,7268              "fail": false,7269              "pending": false,7270              "context": null,7271              "code": "await substrate_api_1.default(async () => {\n    const collectionWithoutWhitelistId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionWithoutWhitelistId);\n    await helpers_1.addCollectionAdminExpectSuccess(alice, collectionWithoutWhitelistId, bob);\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionWithoutWhitelistId, charlie.address);\n    await helpers_1.disableWhiteListExpectSuccess(alice, collectionWithoutWhitelistId);\n    await helpers_1.removeFromWhiteListExpectSuccess(bob, collectionWithoutWhitelistId, helpers_1.normalizeAccountId(charlie.address));\n});",7272              "err": {},7273              "uuid": "65854ca8-cab8-4bec-bff4-8f2b22f904d0",7274              "parentUUID": null,7275              "isHook": false,7276              "skipped": true7277            },7278            {7279              "title": "Regular user can`t remove from whitelist",7280              "fullTitle": "Integration Test removeFromWhiteList with collection admin permissions Regular user can`t remove from whitelist",7281              "timedOut": false,7282              "duration": 0,7283              "state": null,7284              "speed": null,7285              "pass": false,7286              "fail": false,7287              "pending": false,7288              "context": null,7289              "code": "await substrate_api_1.default(async () => {\n    const collectionWithoutWhitelistId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionWithoutWhitelistId);\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionWithoutWhitelistId, charlie.address);\n    await helpers_1.removeFromWhiteListExpectFailure(bob, collectionWithoutWhitelistId, helpers_1.normalizeAccountId(charlie.address));\n});",7290              "err": {},7291              "uuid": "ea3232c6-dc6f-48f1-b0bf-16ff18789fcd",7292              "parentUUID": null,7293              "isHook": false,7294              "skipped": true7295            }7296          ],7297          "suites": [],7298          "passes": [],7299          "failures": [],7300          "pending": [],7301          "skipped": [7302            "95ab897e-27d4-4d3f-a10b-3c2be388a913",7303            "65854ca8-cab8-4bec-bff4-8f2b22f904d0",7304            "ea3232c6-dc6f-48f1-b0bf-16ff18789fcd"7305          ],7306          "duration": 0,7307          "root": false,7308          "rootEmpty": false,7309          "_timeout": 99999997310        },7311        {7312          "uuid": "d445ff02-9beb-4d72-a551-3cfcbe03f764",7313          "title": "Integration Test scheduler base transaction",7314          "fullFile": "/nft_parachain/tests/src/scheduler.test.ts",7315          "file": "/src/scheduler.test.ts",7316          "beforeHooks": [],7317          "afterHooks": [],7318          "tests": [7319            {7320              "title": "User can transfer owned token with delay (scheduler)",7321              "fullTitle": "Integration Test scheduler base transaction User can transfer owned token with delay (scheduler)",7322              "timedOut": false,7323              "duration": 0,7324              "state": null,7325              "speed": null,7326              "pass": false,7327              "fail": false,7328              "pending": false,7329              "context": null,7330              "code": "await substrate_api_1.default(async () => {\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    await helpers_1.setCollectionSponsorExpectSuccess(nftCollectionId, Alice.address);\n    await helpers_1.confirmSponsorshipExpectSuccess(nftCollectionId);\n    await helpers_1.scheduleTransferExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 1, 6000, 4);\n});",7331              "err": {},7332              "uuid": "a7260324-2729-42a7-9a19-8587cc347edd",7333              "parentUUID": null,7334              "isHook": false,7335              "skipped": true7336            }7337          ],7338          "suites": [],7339          "passes": [],7340          "failures": [],7341          "pending": [],7342          "skipped": [7343            "a7260324-2729-42a7-9a19-8587cc347edd"7344          ],7345          "duration": 0,7346          "root": false,7347          "rootEmpty": false,7348          "_timeout": 99999997349        },7350        {7351          "uuid": "31bca936-fc7a-4283-a857-2a6b853ab612",7352          "title": "Negative Integration Test setChainLimits",7353          "fullFile": "/nft_parachain/tests/src/setChainLimits.test.ts",7354          "file": "/src/setChainLimits.test.ts",7355          "beforeHooks": [7356            {7357              "title": "\"before all\" hook",7358              "fullTitle": "Negative Integration Test setChainLimits \"before all\" hook",7359              "timedOut": false,7360              "duration": 0,7361              "state": null,7362              "speed": null,7363              "pass": false,7364              "fail": false,7365              "pending": false,7366              "context": null,7367              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n    dave = privateKey_1.default('//Dave');\n    limits = {\n        CollectionNumbersLimit: 1,\n        AccountTokenOwnershipLimit: 1,\n        CollectionsAdminsLimit: 1,\n        CustomDataLimit: 1,\n        NftSponsorTransferTimeout: 1,\n        FungibleSponsorTransferTimeout: 1,\n        RefungibleSponsorTransferTimeout: 1,\n        OffchainSchemaLimit: 1,\n        VariableOnChainSchemaLimit: 1,\n        ConstOnChainSchemaLimit: 1,\n    };\n});",7368              "err": {},7369              "uuid": "d688f74a-285d-42bc-be8d-681e088bb48b",7370              "parentUUID": null,7371              "isHook": true,7372              "skipped": false7373            }7374          ],7375          "afterHooks": [],7376          "tests": [7377            {7378              "title": "Collection owner cannot set chain limits",7379              "fullTitle": "Negative Integration Test setChainLimits Collection owner cannot set chain limits",7380              "timedOut": false,7381              "duration": 0,7382              "state": null,7383              "speed": null,7384              "pass": false,7385              "fail": false,7386              "pending": false,7387              "context": null,7388              "code": "await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nawait helpers_1.setChainLimitsExpectFailure(alice, limits);",7389              "err": {},7390              "uuid": "4c3a77eb-6b88-43db-87be-aad42e534e5d",7391              "parentUUID": null,7392              "isHook": false,7393              "skipped": true7394            },7395            {7396              "title": "Collection admin cannot set chain limits",7397              "fullTitle": "Negative Integration Test setChainLimits Collection admin cannot set chain limits",7398              "timedOut": false,7399              "duration": 0,7400              "state": null,7401              "speed": null,7402              "pass": false,7403              "fail": false,7404              "pending": false,7405              "context": null,7406              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nawait helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\nawait helpers_1.setChainLimitsExpectFailure(bob, limits);",7407              "err": {},7408              "uuid": "e10a746b-5eb2-46b4-83c1-73610192c10d",7409              "parentUUID": null,7410              "isHook": false,7411              "skipped": true7412            },7413            {7414              "title": "Regular user cannot set chain limits",7415              "fullTitle": "Negative Integration Test setChainLimits Regular user cannot set chain limits",7416              "timedOut": false,7417              "duration": 0,7418              "state": null,7419              "speed": null,7420              "pass": false,7421              "fail": false,7422              "pending": false,7423              "context": null,7424              "code": "await helpers_1.setChainLimitsExpectFailure(dave, limits);",7425              "err": {},7426              "uuid": "80a8e621-e260-4231-bd27-e4f4b15c1634",7427              "parentUUID": null,7428              "isHook": false,7429              "skipped": true7430            }7431          ],7432          "suites": [],7433          "passes": [],7434          "failures": [],7435          "pending": [],7436          "skipped": [7437            "4c3a77eb-6b88-43db-87be-aad42e534e5d",7438            "e10a746b-5eb2-46b4-83c1-73610192c10d",7439            "80a8e621-e260-4231-bd27-e4f4b15c1634"7440          ],7441          "duration": 0,7442          "root": false,7443          "rootEmpty": false,7444          "_timeout": 99999997445        },7446        {7447          "uuid": "864e8fd6-67ae-4a10-88ad-33850223b651",7448          "title": "setCollectionLimits positive",7449          "fullFile": "/nft_parachain/tests/src/setCollectionLimits.test.ts",7450          "file": "/src/setCollectionLimits.test.ts",7451          "beforeHooks": [7452            {7453              "title": "\"before all\" hook",7454              "fullTitle": "setCollectionLimits positive \"before all\" hook",7455              "timedOut": false,7456              "duration": 0,7457              "state": null,7458              "speed": null,7459              "pass": false,7460              "fail": false,7461              "pending": false,7462              "context": null,7463              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    collectionIdForTesting = await helpers_1.createCollectionExpectSuccess({ name: 'A', description: 'B', tokenPrefix: 'C', mode: { type: 'NFT' } });\n});",7464              "err": {},7465              "uuid": "2cc67a48-a83e-49b2-9c6c-cce236dfc6ff",7466              "parentUUID": null,7467              "isHook": true,7468              "skipped": false7469            }7470          ],7471          "afterHooks": [],7472          "tests": [7473            {7474              "title": "execute setCollectionLimits with predefined params ",7475              "fullTitle": "setCollectionLimits positive execute setCollectionLimits with predefined params ",7476              "timedOut": false,7477              "duration": 0,7478              "state": null,7479              "speed": null,7480              "pass": false,7481              "fail": false,7482              "pending": false,7483              "context": null,7484              "code": "await substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setCollectionLimits(collectionIdForTesting, {\n        AccountTokenOwnershipLimit: accountTokenOwnershipLimit,\n        SponsoredMintSize: sponsoredDataSize,\n        TokenLimit: tokenLimit,\n        SponsorTimeout: sponsorTimeout,\n        OwnerCanTransfer: true,\n        OwnerCanDestroy: true,\n    });\n    const events = await substrate_api_1.submitTransactionAsync(alice, tx);\n    const result = helpers_1.getCreateItemResult(events);\n    // get collection limits defined previously\n    const collectionInfo = await helpers_1.getDetailedCollectionInfo(api, collectionIdForTesting);\n    // tslint:disable-next-line:no-unused-expression\n    expect(result.success).to.be.true;\n    expect(collectionInfo.Limits.AccountTokenOwnershipLimit).to.be.equal(accountTokenOwnershipLimit);\n    expect(collectionInfo.Limits.SponsoredDataSize).to.be.equal(sponsoredDataSize);\n    expect(collectionInfo.Limits.TokenLimit).to.be.equal(tokenLimit);\n    expect(collectionInfo.Limits.SponsorTimeout).to.be.equal(sponsorTimeout);\n    expect(collectionInfo.Limits.OwnerCanTransfer).to.be.true;\n    expect(collectionInfo.Limits.OwnerCanDestroy).to.be.true;\n});",7485              "err": {},7486              "uuid": "d32d1982-da29-46d9-8d16-10523cd331b6",7487              "parentUUID": null,7488              "isHook": false,7489              "skipped": true7490            },7491            {7492              "title": "Set the same token limit twice",7493              "fullTitle": "setCollectionLimits positive Set the same token limit twice",7494              "timedOut": false,7495              "duration": 0,7496              "state": null,7497              "speed": null,7498              "pass": false,7499              "fail": false,7500              "pending": false,7501              "context": null,7502              "code": "await substrate_api_1.default(async (api) => {\n    const collectionLimits = {\n        AccountTokenOwnershipLimit: accountTokenOwnershipLimit,\n        SponsoredMintSize: sponsoredDataSize,\n        TokenLimit: tokenLimit,\n        SponsorTimeout: sponsorTimeout,\n        OwnerCanTransfer: true,\n        OwnerCanDestroy: true,\n    };\n    // The first time\n    const tx1 = api.tx.nft.setCollectionLimits(collectionIdForTesting, collectionLimits);\n    const events1 = await substrate_api_1.submitTransactionAsync(alice, tx1);\n    const result1 = helpers_1.getCreateItemResult(events1);\n    const collectionInfo1 = await helpers_1.getDetailedCollectionInfo(api, collectionIdForTesting);\n    // The second time\n    const tx2 = api.tx.nft.setCollectionLimits(collectionIdForTesting, collectionLimits);\n    const events2 = await substrate_api_1.submitTransactionAsync(alice, tx2);\n    const result2 = helpers_1.getCreateItemResult(events2);\n    const collectionInfo2 = await helpers_1.getDetailedCollectionInfo(api, collectionIdForTesting);\n    // tslint:disable-next-line:no-unused-expression\n    expect(result1.success).to.be.true;\n    expect(collectionInfo1.Limits.TokenLimit).to.be.equal(tokenLimit);\n    expect(result2.success).to.be.true;\n    expect(collectionInfo2.Limits.TokenLimit).to.be.equal(tokenLimit);\n});",7503              "err": {},7504              "uuid": "6b883ae8-e9cc-436f-b66f-d589dee3774b",7505              "parentUUID": null,7506              "isHook": false,7507              "skipped": true7508            }7509          ],7510          "suites": [],7511          "passes": [],7512          "failures": [],7513          "pending": [],7514          "skipped": [7515            "d32d1982-da29-46d9-8d16-10523cd331b6",7516            "6b883ae8-e9cc-436f-b66f-d589dee3774b"7517          ],7518          "duration": 0,7519          "root": false,7520          "rootEmpty": false,7521          "_timeout": 99999997522        },7523        {7524          "uuid": "80730974-8aaf-4b53-837e-843c327f5f32",7525          "title": "setCollectionLimits negative",7526          "fullFile": "/nft_parachain/tests/src/setCollectionLimits.test.ts",7527          "file": "/src/setCollectionLimits.test.ts",7528          "beforeHooks": [7529            {7530              "title": "\"before all\" hook",7531              "fullTitle": "setCollectionLimits negative \"before all\" hook",7532              "timedOut": false,7533              "duration": 0,7534              "state": null,7535              "speed": null,7536              "pass": false,7537              "fail": false,7538              "pending": false,7539              "context": null,7540              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n    collectionIdForTesting = await helpers_1.createCollectionExpectSuccess({ name: 'A', description: 'B', tokenPrefix: 'C', mode: { type: 'NFT' } });\n});",7541              "err": {},7542              "uuid": "a19bd118-2c02-44a5-8352-4ba72d5b51ea",7543              "parentUUID": null,7544              "isHook": true,7545              "skipped": false7546            }7547          ],7548          "afterHooks": [],7549          "tests": [7550            {7551              "title": "execute setCollectionLimits for not exists collection",7552              "fullTitle": "setCollectionLimits negative execute setCollectionLimits for not exists collection",7553              "timedOut": false,7554              "duration": 0,7555              "state": null,7556              "speed": null,7557              "pass": false,7558              "fail": false,7559              "pending": false,7560              "context": null,7561              "code": "await substrate_api_1.default(async (api) => {\n    const collectionCount = await helpers_1.getCreatedCollectionCount(api);\n    const nonExistedCollectionId = collectionCount + 1;\n    tx = api.tx.nft.setCollectionLimits(nonExistedCollectionId, {\n        accountTokenOwnershipLimit,\n        sponsoredDataSize,\n        sponsoredMintSize,\n        tokenLimit,\n    });\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, tx)).to.be.rejected;\n});",7562              "err": {},7563              "uuid": "53dc0d8c-321e-4901-9157-3fd66bcc15ab",7564              "parentUUID": null,7565              "isHook": false,7566              "skipped": true7567            },7568            {7569              "title": "execute setCollectionLimits from user who is not owner of this collection",7570              "fullTitle": "setCollectionLimits negative execute setCollectionLimits from user who is not owner of this collection",7571              "timedOut": false,7572              "duration": 0,7573              "state": null,7574              "speed": null,7575              "pass": false,7576              "fail": false,7577              "pending": false,7578              "context": null,7579              "code": "await substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setCollectionLimits(collectionIdForTesting, {\n        accountTokenOwnershipLimit,\n        sponsoredDataSize,\n        sponsoredMintSize,\n        tokenLimit,\n    });\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(bob, tx)).to.be.rejected;\n});",7580              "err": {},7581              "uuid": "ddad0ec1-5004-45c0-b755-a8c833b3c744",7582              "parentUUID": null,7583              "isHook": false,7584              "skipped": true7585            },7586            {7587              "title": "execute setCollectionLimits from admin collection",7588              "fullTitle": "setCollectionLimits negative execute setCollectionLimits from admin collection",7589              "timedOut": false,7590              "duration": 0,7591              "state": null,7592              "speed": null,7593              "pass": false,7594              "fail": false,7595              "pending": false,7596              "context": null,7597              "code": "await helpers_1.addCollectionAdminExpectSuccess(alice, collectionIdForTesting, bob);\nawait substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setCollectionLimits(collectionIdForTesting, {\n        accountTokenOwnershipLimit,\n        sponsoredDataSize,\n        sponsoredMintSize,\n        tokenLimit,\n    });\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(bob, tx)).to.be.rejected;\n});",7598              "err": {},7599              "uuid": "a62c80c1-5434-4801-9a9b-7a901d3a6e12",7600              "parentUUID": null,7601              "isHook": false,7602              "skipped": true7603            },7604            {7605              "title": "execute setCollectionLimits with incorrect limits",7606              "fullTitle": "setCollectionLimits negative execute setCollectionLimits with incorrect limits",7607              "timedOut": false,7608              "duration": 0,7609              "state": null,7610              "speed": null,7611              "pass": false,7612              "fail": false,7613              "pending": false,7614              "context": null,7615              "code": "await substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setCollectionLimits(collectionIdForTesting, {\n        accountTokenOwnershipLimit: 'awdawd',\n        sponsorTransferTimeout: 'awd',\n        sponsoredDataSize: '12312312312312312',\n        tokenLimit: '-100',\n    });\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, tx)).to.be.rejected;\n});",7616              "err": {},7617              "uuid": "d2e949e0-7f48-4d3c-a12d-8da0910c3ce3",7618              "parentUUID": null,7619              "isHook": false,7620              "skipped": true7621            },7622            {7623              "title": "fails when trying to enable OwnerCanTransfer after it was disabled",7624              "fullTitle": "setCollectionLimits negative fails when trying to enable OwnerCanTransfer after it was disabled",7625              "timedOut": false,7626              "duration": 0,7627              "state": null,7628              "speed": null,7629              "pass": false,7630              "fail": false,7631              "pending": false,7632              "context": null,7633              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, {\n    AccountTokenOwnershipLimit: accountTokenOwnershipLimit,\n    SponsoredMintSize: sponsoredDataSize,\n    TokenLimit: tokenLimit,\n    SponsorTimeout: sponsorTimeout,\n    OwnerCanTransfer: false,\n    OwnerCanDestroy: true,\n});\nawait helpers_1.setCollectionLimitsExpectFailure(alice, collectionId, {\n    AccountTokenOwnershipLimit: accountTokenOwnershipLimit,\n    SponsoredMintSize: sponsoredDataSize,\n    TokenLimit: tokenLimit,\n    SponsorTimeout: sponsorTimeout,\n    OwnerCanTransfer: true,\n    OwnerCanDestroy: true,\n});",7634              "err": {},7635              "uuid": "9520e496-d043-44a3-bb82-d17eb2499334",7636              "parentUUID": null,7637              "isHook": false,7638              "skipped": true7639            },7640            {7641              "title": "fails when trying to enable OwnerCanDestroy after it was disabled",7642              "fullTitle": "setCollectionLimits negative fails when trying to enable OwnerCanDestroy after it was disabled",7643              "timedOut": false,7644              "duration": 0,7645              "state": null,7646              "speed": null,7647              "pass": false,7648              "fail": false,7649              "pending": false,7650              "context": null,7651              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, {\n    AccountTokenOwnershipLimit: accountTokenOwnershipLimit,\n    SponsoredMintSize: sponsoredDataSize,\n    TokenLimit: tokenLimit,\n    SponsorTimeout: sponsorTimeout,\n    OwnerCanTransfer: true,\n    OwnerCanDestroy: false,\n});\nawait helpers_1.setCollectionLimitsExpectFailure(alice, collectionId, {\n    AccountTokenOwnershipLimit: accountTokenOwnershipLimit,\n    SponsoredMintSize: sponsoredDataSize,\n    TokenLimit: tokenLimit,\n    SponsorTimeout: sponsorTimeout,\n    OwnerCanTransfer: true,\n    OwnerCanDestroy: true,\n});",7652              "err": {},7653              "uuid": "cbfc2098-3360-4c35-b9a3-1f2459547199",7654              "parentUUID": null,7655              "isHook": false,7656              "skipped": true7657            },7658            {7659              "title": "Setting the higher token limit fails",7660              "fullTitle": "setCollectionLimits negative Setting the higher token limit fails",7661              "timedOut": false,7662              "duration": 0,7663              "state": null,7664              "speed": null,7665              "pass": false,7666              "fail": false,7667              "pending": false,7668              "context": null,7669              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const collectionLimits = {\n        AccountTokenOwnershipLimit: accountTokenOwnershipLimit,\n        SponsoredMintSize: sponsoredDataSize,\n        TokenLimit: tokenLimit,\n        SponsorTimeout: sponsorTimeout,\n        OwnerCanTransfer: true,\n        OwnerCanDestroy: true,\n    };\n    // The first time\n    await helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, collectionLimits);\n    // The second time - higher token limit\n    collectionLimits.TokenLimit += 1;\n    await helpers_1.setCollectionLimitsExpectFailure(alice, collectionId, collectionLimits);\n});",7670              "err": {},7671              "uuid": "ac5ff0da-daa7-4509-b527-09cc176b1d40",7672              "parentUUID": null,7673              "isHook": false,7674              "skipped": true7675            }7676          ],7677          "suites": [],7678          "passes": [],7679          "failures": [],7680          "pending": [],7681          "skipped": [7682            "53dc0d8c-321e-4901-9157-3fd66bcc15ab",7683            "ddad0ec1-5004-45c0-b755-a8c833b3c744",7684            "a62c80c1-5434-4801-9a9b-7a901d3a6e12",7685            "d2e949e0-7f48-4d3c-a12d-8da0910c3ce3",7686            "9520e496-d043-44a3-bb82-d17eb2499334",7687            "cbfc2098-3360-4c35-b9a3-1f2459547199",7688            "ac5ff0da-daa7-4509-b527-09cc176b1d40"7689          ],7690          "duration": 0,7691          "root": false,7692          "rootEmpty": false,7693          "_timeout": 99999997694        },7695        {7696          "uuid": "0ec248e7-8ae8-4211-8c0e-048f7bc90578",7697          "title": "integration test: ext. setCollectionSponsor():",7698          "fullFile": "/nft_parachain/tests/src/setCollectionSponsor.test.ts",7699          "file": "/src/setCollectionSponsor.test.ts",7700          "beforeHooks": [7701            {7702              "title": "\"before all\" hook",7703              "fullTitle": "integration test: ext. setCollectionSponsor(): \"before all\" hook",7704              "timedOut": false,7705              "duration": 0,7706              "state": null,7707              "speed": null,7708              "pass": false,7709              "fail": false,7710              "pending": false,7711              "context": null,7712              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n});",7713              "err": {},7714              "uuid": "2efa7181-c0db-42f7-9833-9c853fb5a191",7715              "parentUUID": null,7716              "isHook": true,7717              "skipped": false7718            }7719          ],7720          "afterHooks": [],7721          "tests": [7722            {7723              "title": "Set NFT collection sponsor",7724              "fullTitle": "integration test: ext. setCollectionSponsor(): Set NFT collection sponsor",7725              "timedOut": false,7726              "duration": 0,7727              "state": null,7728              "speed": null,7729              "pass": false,7730              "fail": false,7731              "pending": false,7732              "context": null,7733              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);",7734              "err": {},7735              "uuid": "6fd9bfef-84c0-41ef-8b43-bd993cfd739f",7736              "parentUUID": null,7737              "isHook": false,7738              "skipped": true7739            },7740            {7741              "title": "Set Fungible collection sponsor",7742              "fullTitle": "integration test: ext. setCollectionSponsor(): Set Fungible collection sponsor",7743              "timedOut": false,7744              "duration": 0,7745              "state": null,7746              "speed": null,7747              "pass": false,7748              "fail": false,7749              "pending": false,7750              "context": null,7751              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);",7752              "err": {},7753              "uuid": "61a720d0-0fe1-4b46-967c-c01d70b6242c",7754              "parentUUID": null,7755              "isHook": false,7756              "skipped": true7757            },7758            {7759              "title": "Set ReFungible collection sponsor",7760              "fullTitle": "integration test: ext. setCollectionSponsor(): Set ReFungible collection sponsor",7761              "timedOut": false,7762              "duration": 0,7763              "state": null,7764              "speed": null,7765              "pass": false,7766              "fail": false,7767              "pending": false,7768              "context": null,7769              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);",7770              "err": {},7771              "uuid": "cb5646f4-5aba-4d98-9817-de2c9bd42fce",7772              "parentUUID": null,7773              "isHook": false,7774              "skipped": true7775            },7776            {7777              "title": "Set the same sponsor repeatedly",7778              "fullTitle": "integration test: ext. setCollectionSponsor(): Set the same sponsor repeatedly",7779              "timedOut": false,7780              "duration": 0,7781              "state": null,7782              "speed": null,7783              "pass": false,7784              "fail": false,7785              "pending": false,7786              "context": null,7787              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);",7788              "err": {},7789              "uuid": "86441019-203b-4476-af25-ccba5b9e2741",7790              "parentUUID": null,7791              "isHook": false,7792              "skipped": true7793            },7794            {7795              "title": "Replace collection sponsor",7796              "fullTitle": "integration test: ext. setCollectionSponsor(): Replace collection sponsor",7797              "timedOut": false,7798              "duration": 0,7799              "state": null,7800              "speed": null,7801              "pass": false,7802              "fail": false,7803              "pending": false,7804              "context": null,7805              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nconst keyring = new api_1.Keyring({ type: 'sr25519' });\nconst charlie = keyring.addFromUri('//Charlie');\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, bob.address);\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, charlie.address);",7806              "err": {},7807              "uuid": "24d56994-b714-4916-a755-bbae2775d2c4",7808              "parentUUID": null,7809              "isHook": false,7810              "skipped": true7811            }7812          ],7813          "suites": [],7814          "passes": [],7815          "failures": [],7816          "pending": [],7817          "skipped": [7818            "6fd9bfef-84c0-41ef-8b43-bd993cfd739f",7819            "61a720d0-0fe1-4b46-967c-c01d70b6242c",7820            "cb5646f4-5aba-4d98-9817-de2c9bd42fce",7821            "86441019-203b-4476-af25-ccba5b9e2741",7822            "24d56994-b714-4916-a755-bbae2775d2c4"7823          ],7824          "duration": 0,7825          "root": false,7826          "rootEmpty": false,7827          "_timeout": 99999997828        },7829        {7830          "uuid": "cec3e13f-3894-41ae-b288-c60bfcf771dd",7831          "title": "(!negative test!) integration test: ext. setCollectionSponsor():",7832          "fullFile": "/nft_parachain/tests/src/setCollectionSponsor.test.ts",7833          "file": "/src/setCollectionSponsor.test.ts",7834          "beforeHooks": [7835            {7836              "title": "\"before all\" hook",7837              "fullTitle": "(!negative test!) integration test: ext. setCollectionSponsor(): \"before all\" hook",7838              "timedOut": false,7839              "duration": 0,7840              "state": null,7841              "speed": null,7842              "pass": false,7843              "fail": false,7844              "pending": false,7845              "context": null,7846              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n    charlie = keyring.addFromUri('//Charlie');\n});",7847              "err": {},7848              "uuid": "6e23f95c-a8f1-4af9-905e-d6cd335b614f",7849              "parentUUID": null,7850              "isHook": true,7851              "skipped": false7852            }7853          ],7854          "afterHooks": [],7855          "tests": [7856            {7857              "title": "(!negative test!) Add sponsor with a non-owner",7858              "fullTitle": "(!negative test!) integration test: ext. setCollectionSponsor(): (!negative test!) Add sponsor with a non-owner",7859              "timedOut": false,7860              "duration": 0,7861              "state": null,7862              "speed": null,7863              "pass": false,7864              "fail": false,7865              "pending": false,7866              "context": null,7867              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectFailure(collectionId, bob.address, '//Bob');",7868              "err": {},7869              "uuid": "683d509e-09c6-4df6-928b-aa8f1ca81b8c",7870              "parentUUID": null,7871              "isHook": false,7872              "skipped": true7873            },7874            {7875              "title": "(!negative test!) Add sponsor to a collection that never existed",7876              "fullTitle": "(!negative test!) integration test: ext. setCollectionSponsor(): (!negative test!) Add sponsor to a collection that never existed",7877              "timedOut": false,7878              "duration": 0,7879              "state": null,7880              "speed": null,7881              "pass": false,7882              "fail": false,7883              "pending": false,7884              "context": null,7885              "code": "// Find the collection that never existed\nlet collectionId = 0;\nawait substrate_api_1.default(async (api) => {\n    collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n});\nawait helpers_1.setCollectionSponsorExpectFailure(collectionId, bob.address);",7886              "err": {},7887              "uuid": "8f54053d-0d3a-4948-ad54-716e75cd82e0",7888              "parentUUID": null,7889              "isHook": false,7890              "skipped": true7891            },7892            {7893              "title": "(!negative test!) Add sponsor to a collection that was destroyed",7894              "fullTitle": "(!negative test!) integration test: ext. setCollectionSponsor(): (!negative test!) Add sponsor to a collection that was destroyed",7895              "timedOut": false,7896              "duration": 0,7897              "state": null,7898              "speed": null,7899              "pass": false,7900              "fail": false,7901              "pending": false,7902              "context": null,7903              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.destroyCollectionExpectSuccess(collectionId);\nawait helpers_1.setCollectionSponsorExpectFailure(collectionId, bob.address);",7904              "err": {},7905              "uuid": "40568762-50de-4901-8db1-050f95fb2b52",7906              "parentUUID": null,7907              "isHook": false,7908              "skipped": true7909            },7910            {7911              "title": "(!negative test!) Collection admin add sponsor",7912              "fullTitle": "(!negative test!) integration test: ext. setCollectionSponsor(): (!negative test!) Collection admin add sponsor",7913              "timedOut": false,7914              "duration": 0,7915              "state": null,7916              "speed": null,7917              "pass": false,7918              "fail": false,7919              "pending": false,7920              "context": null,7921              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\nawait helpers_1.setCollectionSponsorExpectFailure(collectionId, charlie.address, '//Bob');",7922              "err": {},7923              "uuid": "a33535e3-d85d-45f3-a599-7b4b2f2bc4ce",7924              "parentUUID": null,7925              "isHook": false,7926              "skipped": true7927            }7928          ],7929          "suites": [],7930          "passes": [],7931          "failures": [],7932          "pending": [],7933          "skipped": [7934            "683d509e-09c6-4df6-928b-aa8f1ca81b8c",7935            "8f54053d-0d3a-4948-ad54-716e75cd82e0",7936            "40568762-50de-4901-8db1-050f95fb2b52",7937            "a33535e3-d85d-45f3-a599-7b4b2f2bc4ce"7938          ],7939          "duration": 0,7940          "root": false,7941          "rootEmpty": false,7942          "_timeout": 99999997943        },7944        {7945          "uuid": "158f543c-d1ad-433b-a908-e239b62b96d3",7946          "title": "Integration Test ext. setConstOnChainSchema()",7947          "fullFile": "/nft_parachain/tests/src/setConstOnChainSchema.test.ts",7948          "file": "/src/setConstOnChainSchema.test.ts",7949          "beforeHooks": [],7950          "afterHooks": [],7951          "tests": [7952            {7953              "title": "Run extrinsic with parameters of the collection id, set the scheme",7954              "fullTitle": "Integration Test ext. setConstOnChainSchema() Run extrinsic with parameters of the collection id, set the scheme",7955              "timedOut": false,7956              "duration": 0,7957              "state": null,7958              "speed": null,7959              "pass": false,7960              "fail": false,7961              "pending": false,7962              "context": null,7963              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.eq(Alice.address);\n    const setShema = api.tx.nft.setConstOnChainSchema(collectionId, Shema);\n    await substrate_api_1.submitTransactionAsync(Alice, setShema);\n});",7964              "err": {},7965              "uuid": "d112aefc-3e9d-46fb-b4a9-b0e0b8dc4d28",7966              "parentUUID": null,7967              "isHook": false,7968              "skipped": true7969            },7970            {7971              "title": "Collection admin can set the scheme",7972              "fullTitle": "Integration Test ext. setConstOnChainSchema() Collection admin can set the scheme",7973              "timedOut": false,7974              "duration": 0,7975              "state": null,7976              "speed": null,7977              "pass": false,7978              "fail": false,7979              "pending": false,7980              "context": null,7981              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.eq(Alice.address);\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\n    const setShema = api.tx.nft.setConstOnChainSchema(collectionId, Shema);\n    await substrate_api_1.submitTransactionAsync(Bob, setShema);\n});",7982              "err": {},7983              "uuid": "9af30569-5854-4062-be4e-a714e755a189",7984              "parentUUID": null,7985              "isHook": false,7986              "skipped": true7987            },7988            {7989              "title": "Checking collection data using the ConstOnChainSchema parameter",7990              "fullTitle": "Integration Test ext. setConstOnChainSchema() Checking collection data using the ConstOnChainSchema parameter",7991              "timedOut": false,7992              "duration": 0,7993              "state": null,7994              "speed": null,7995              "pass": false,7996              "fail": false,7997              "pending": false,7998              "context": null,7999              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const setShema = api.tx.nft.setConstOnChainSchema(collectionId, Shema);\n    await substrate_api_1.submitTransactionAsync(Alice, setShema);\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.ConstOnChainSchema.toString()).to.be.eq(Shema);\n});",8000              "err": {},8001              "uuid": "22077b7e-d757-4822-894a-749f8188e9bd",8002              "parentUUID": null,8003              "isHook": false,8004              "skipped": true8005            }8006          ],8007          "suites": [],8008          "passes": [],8009          "failures": [],8010          "pending": [],8011          "skipped": [8012            "d112aefc-3e9d-46fb-b4a9-b0e0b8dc4d28",8013            "9af30569-5854-4062-be4e-a714e755a189",8014            "22077b7e-d757-4822-894a-749f8188e9bd"8015          ],8016          "duration": 0,8017          "root": false,8018          "rootEmpty": false,8019          "_timeout": 99999998020        },8021        {8022          "uuid": "28e4fb50-d2ac-49de-81fa-1a240770f61a",8023          "title": "Negative Integration Test ext. setConstOnChainSchema()",8024          "fullFile": "/nft_parachain/tests/src/setConstOnChainSchema.test.ts",8025          "file": "/src/setConstOnChainSchema.test.ts",8026          "beforeHooks": [],8027          "afterHooks": [],8028          "tests": [8029            {8030              "title": "Set a non-existent collection",8031              "fullTitle": "Negative Integration Test ext. setConstOnChainSchema() Set a non-existent collection",8032              "timedOut": false,8033              "duration": 0,8034              "state": null,8035              "speed": null,8036              "pass": false,8037              "fail": false,8038              "pending": false,8039              "context": null,8040              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: radix\n    const collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n    const setShema = api.tx.nft.setConstOnChainSchema(collectionId, Shema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, setShema)).to.be.rejected;\n});",8041              "err": {},8042              "uuid": "7ce3cde5-be29-4d65-9320-46cc0d8a4f31",8043              "parentUUID": null,8044              "isHook": false,8045              "skipped": true8046            },8047            {8048              "title": "Set a previously deleted collection",8049              "fullTitle": "Negative Integration Test ext. setConstOnChainSchema() Set a previously deleted collection",8050              "timedOut": false,8051              "duration": 0,8052              "state": null,8053              "speed": null,8054              "pass": false,8055              "fail": false,8056              "pending": false,8057              "context": null,8058              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n    const setShema = api.tx.nft.setConstOnChainSchema(collectionId, Shema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, setShema)).to.be.rejected;\n});",8059              "err": {},8060              "uuid": "9ee1b42d-b518-4090-a17a-dd57e2186940",8061              "parentUUID": null,8062              "isHook": false,8063              "skipped": true8064            },8065            {8066              "title": "Set invalid data in schema (size too large:> 1024b)",8067              "fullTitle": "Negative Integration Test ext. setConstOnChainSchema() Set invalid data in schema (size too large:> 1024b)",8068              "timedOut": false,8069              "duration": 0,8070              "state": null,8071              "speed": null,8072              "pass": false,8073              "fail": false,8074              "pending": false,8075              "context": null,8076              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const setShema = api.tx.nft.setConstOnChainSchema(collectionId, largeShema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, setShema)).to.be.rejected;\n});",8077              "err": {},8078              "uuid": "3fb38da2-5f4f-4929-aed8-07146645f2ed",8079              "parentUUID": null,8080              "isHook": false,8081              "skipped": true8082            },8083            {8084              "title": "Execute method not on behalf of the collection owner",8085              "fullTitle": "Negative Integration Test ext. setConstOnChainSchema() Execute method not on behalf of the collection owner",8086              "timedOut": false,8087              "duration": 0,8088              "state": null,8089              "speed": null,8090              "pass": false,8091              "fail": false,8092              "pending": false,8093              "context": null,8094              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.eq(Alice.address);\n    const setShema = api.tx.nft.setConstOnChainSchema(collectionId, Shema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Bob, setShema)).to.be.rejected;\n});",8095              "err": {},8096              "uuid": "75fdd293-994b-4984-b654-f245487e44d2",8097              "parentUUID": null,8098              "isHook": false,8099              "skipped": true8100            }8101          ],8102          "suites": [],8103          "passes": [],8104          "failures": [],8105          "pending": [],8106          "skipped": [8107            "7ce3cde5-be29-4d65-9320-46cc0d8a4f31",8108            "9ee1b42d-b518-4090-a17a-dd57e2186940",8109            "3fb38da2-5f4f-4929-aed8-07146645f2ed",8110            "75fdd293-994b-4984-b654-f245487e44d2"8111          ],8112          "duration": 0,8113          "root": false,8114          "rootEmpty": false,8115          "_timeout": 99999998116        },8117        {8118          "uuid": "e78dc91b-d806-46dd-984e-ec046f502cd2",8119          "title": "Integration Test setContractSponsoringRateLimit",8120          "fullFile": "/nft_parachain/tests/src/setContractSponsoringRateLimit.test.ts",8121          "file": "/src/setContractSponsoringRateLimit.test.ts",8122          "beforeHooks": [],8123          "afterHooks": [],8124          "tests": [8125            {8126              "title": "ensure sponsored contract can't be called twice without pause for free",8127              "fullTitle": "Integration Test setContractSponsoringRateLimit ensure sponsored contract can't be called twice without pause for free",8128              "timedOut": false,8129              "duration": 0,8130              "state": null,8131              "speed": null,8132              "pass": false,8133              "fail": false,8134              "pending": true,8135              "context": null,8136              "code": "",8137              "err": {},8138              "uuid": "135d3e1d-e004-44c4-9e22-3d6a253435c0",8139              "parentUUID": null,8140              "isHook": false,8141              "skipped": false8142            },8143            {8144              "title": "ensure sponsored contract can be called twice with pause for free",8145              "fullTitle": "Integration Test setContractSponsoringRateLimit ensure sponsored contract can be called twice with pause for free",8146              "timedOut": false,8147              "duration": 0,8148              "state": null,8149              "speed": null,8150              "pass": false,8151              "fail": false,8152              "pending": true,8153              "context": null,8154              "code": "",8155              "err": {},8156              "uuid": "4b560f0c-46d1-49a7-b5a9-5496c91234fc",8157              "parentUUID": null,8158              "isHook": false,8159              "skipped": false8160            }8161          ],8162          "suites": [],8163          "passes": [],8164          "failures": [],8165          "pending": [8166            "135d3e1d-e004-44c4-9e22-3d6a253435c0",8167            "4b560f0c-46d1-49a7-b5a9-5496c91234fc"8168          ],8169          "skipped": [],8170          "duration": 0,8171          "root": false,8172          "rootEmpty": false,8173          "_timeout": 99999998174        },8175        {8176          "uuid": "bc7ada2a-db31-43ce-a802-033605a598f1",8177          "title": "Negative Integration Test setContractSponsoringRateLimit",8178          "fullFile": "/nft_parachain/tests/src/setContractSponsoringRateLimit.test.ts",8179          "file": "/src/setContractSponsoringRateLimit.test.ts",8180          "beforeHooks": [],8181          "afterHooks": [],8182          "tests": [8183            {8184              "title": "fails when called for non-contract address",8185              "fullTitle": "Negative Integration Test setContractSponsoringRateLimit fails when called for non-contract address",8186              "timedOut": false,8187              "duration": 0,8188              "state": null,8189              "speed": null,8190              "pass": false,8191              "fail": false,8192              "pending": true,8193              "context": null,8194              "code": "",8195              "err": {},8196              "uuid": "e39de7ef-40bc-4d8c-aae1-0b7745bad05e",8197              "parentUUID": null,8198              "isHook": false,8199              "skipped": false8200            },8201            {8202              "title": "fails when called by non-owning user",8203              "fullTitle": "Negative Integration Test setContractSponsoringRateLimit fails when called by non-owning user",8204              "timedOut": false,8205              "duration": 0,8206              "state": null,8207              "speed": null,8208              "pass": false,8209              "fail": false,8210              "pending": true,8211              "context": null,8212              "code": "",8213              "err": {},8214              "uuid": "30b5ab68-1f40-4d2a-b589-6d866974e75c",8215              "parentUUID": null,8216              "isHook": false,8217              "skipped": false8218            }8219          ],8220          "suites": [],8221          "passes": [],8222          "failures": [],8223          "pending": [8224            "e39de7ef-40bc-4d8c-aae1-0b7745bad05e",8225            "30b5ab68-1f40-4d2a-b589-6d866974e75c"8226          ],8227          "skipped": [],8228          "duration": 0,8229          "root": false,8230          "rootEmpty": false,8231          "_timeout": 99999998232        },8233        {8234          "uuid": "eb5cbed0-02a5-444a-93de-c94fef224554",8235          "title": "Integration Test setMintPermission",8236          "fullFile": "/nft_parachain/tests/src/setMintPermission.test.ts",8237          "file": "/src/setMintPermission.test.ts",8238          "beforeHooks": [8239            {8240              "title": "\"before all\" hook",8241              "fullTitle": "Integration Test setMintPermission \"before all\" hook",8242              "timedOut": false,8243              "duration": 0,8244              "state": null,8245              "speed": null,8246              "pass": false,8247              "fail": false,8248              "pending": false,8249              "context": null,8250              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n});",8251              "err": {},8252              "uuid": "191f98d5-26a1-4910-8218-af236af77982",8253              "parentUUID": null,8254              "isHook": true,8255              "skipped": false8256            }8257          ],8258          "afterHooks": [],8259          "tests": [8260            {8261              "title": "ensure white-listed non-privileged address can mint tokens",8262              "fullTitle": "Integration Test setMintPermission ensure white-listed non-privileged address can mint tokens",8263              "timedOut": false,8264              "duration": 0,8265              "state": null,8266              "speed": null,8267              "pass": false,8268              "fail": false,8269              "pending": false,8270              "context": null,8271              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\n    await helpers_1.setMintPermissionExpectSuccess(alice, collectionId, true);\n    await helpers_1.addToWhiteListExpectSuccess(alice, collectionId, bob.address);\n    await helpers_1.createItemExpectSuccess(bob, collectionId, 'NFT');\n});",8272              "err": {},8273              "uuid": "884235b9-da39-4217-9f9a-73fac056921c",8274              "parentUUID": null,8275              "isHook": false,8276              "skipped": true8277            },8278            {8279              "title": "can be enabled twice",8280              "fullTitle": "Integration Test setMintPermission can be enabled twice",8281              "timedOut": false,8282              "duration": 0,8283              "state": null,8284              "speed": null,8285              "pass": false,8286              "fail": false,8287              "pending": false,8288              "context": null,8289              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.setMintPermissionExpectSuccess(alice, collectionId, true);\n    await helpers_1.setMintPermissionExpectSuccess(alice, collectionId, true);\n});",8290              "err": {},8291              "uuid": "98173ea4-9d53-4b14-a61c-78b6c9158132",8292              "parentUUID": null,8293              "isHook": false,8294              "skipped": true8295            },8296            {8297              "title": "can be disabled twice",8298              "fullTitle": "Integration Test setMintPermission can be disabled twice",8299              "timedOut": false,8300              "duration": 0,8301              "state": null,8302              "speed": null,8303              "pass": false,8304              "fail": false,8305              "pending": false,8306              "context": null,8307              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.setMintPermissionExpectSuccess(alice, collectionId, true);\n    await helpers_1.setMintPermissionExpectSuccess(alice, collectionId, false);\n    await helpers_1.setMintPermissionExpectSuccess(alice, collectionId, false);\n});",8308              "err": {},8309              "uuid": "2aa44b95-b911-4a5e-9f3d-fda7b0c3fbda",8310              "parentUUID": null,8311              "isHook": false,8312              "skipped": true8313            }8314          ],8315          "suites": [],8316          "passes": [],8317          "failures": [],8318          "pending": [],8319          "skipped": [8320            "884235b9-da39-4217-9f9a-73fac056921c",8321            "98173ea4-9d53-4b14-a61c-78b6c9158132",8322            "2aa44b95-b911-4a5e-9f3d-fda7b0c3fbda"8323          ],8324          "duration": 0,8325          "root": false,8326          "rootEmpty": false,8327          "_timeout": 99999998328        },8329        {8330          "uuid": "cbc6e3f1-5d78-4769-9afd-72998c570eb6",8331          "title": "Negative Integration Test setMintPermission",8332          "fullFile": "/nft_parachain/tests/src/setMintPermission.test.ts",8333          "file": "/src/setMintPermission.test.ts",8334          "beforeHooks": [8335            {8336              "title": "\"before all\" hook",8337              "fullTitle": "Negative Integration Test setMintPermission \"before all\" hook",8338              "timedOut": false,8339              "duration": 0,8340              "state": null,8341              "speed": null,8342              "pass": false,8343              "fail": false,8344              "pending": false,8345              "context": null,8346              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n});",8347              "err": {},8348              "uuid": "34da7a1c-2588-45e4-a3dd-8238f60e2e11",8349              "parentUUID": null,8350              "isHook": true,8351              "skipped": false8352            }8353          ],8354          "afterHooks": [],8355          "tests": [8356            {8357              "title": "fails on not existing collection",8358              "fullTitle": "Negative Integration Test setMintPermission fails on not existing collection",8359              "timedOut": false,8360              "duration": 0,8361              "state": null,8362              "speed": null,8363              "pass": false,8364              "fail": false,8365              "pending": false,8366              "context": null,8367              "code": "await substrate_api_1.default(async (api) => {\n    const nonExistingCollection = await helpers_1.findNotExistingCollection(api);\n    await helpers_1.setMintPermissionExpectFailure(alice, nonExistingCollection, true);\n});",8368              "err": {},8369              "uuid": "2646ad83-06be-4fee-92b4-0316359e4d47",8370              "parentUUID": null,8371              "isHook": false,8372              "skipped": true8373            },8374            {8375              "title": "fails on removed collection",8376              "fullTitle": "Negative Integration Test setMintPermission fails on removed collection",8377              "timedOut": false,8378              "duration": 0,8379              "state": null,8380              "speed": null,8381              "pass": false,8382              "fail": false,8383              "pending": false,8384              "context": null,8385              "code": "await substrate_api_1.default(async () => {\n    const removedCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.destroyCollectionExpectSuccess(removedCollectionId);\n    await helpers_1.setMintPermissionExpectFailure(alice, removedCollectionId, true);\n});",8386              "err": {},8387              "uuid": "06542d72-bd12-4943-a060-726f91838cf6",8388              "parentUUID": null,8389              "isHook": false,8390              "skipped": true8391            },8392            {8393              "title": "fails when not collection owner tries to set mint status",8394              "fullTitle": "Negative Integration Test setMintPermission fails when not collection owner tries to set mint status",8395              "timedOut": false,8396              "duration": 0,8397              "state": null,8398              "speed": null,8399              "pass": false,8400              "fail": false,8401              "pending": false,8402              "context": null,8403              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nawait helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\nawait helpers_1.setMintPermissionExpectFailure(bob, collectionId, true);",8404              "err": {},8405              "uuid": "b5f2f65c-cebf-4155-8a5b-f64db02dfd8b",8406              "parentUUID": null,8407              "isHook": false,8408              "skipped": true8409            },8410            {8411              "title": "Collection admin fails on set",8412              "fullTitle": "Negative Integration Test setMintPermission Collection admin fails on set",8413              "timedOut": false,8414              "duration": 0,8415              "state": null,8416              "speed": null,8417              "pass": false,8418              "fail": false,8419              "pending": false,8420              "context": null,8421              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\n    await helpers_1.setMintPermissionExpectFailure(bob, collectionId, true);\n});",8422              "err": {},8423              "uuid": "d5919771-6a70-4e9b-978f-dae88e7bb206",8424              "parentUUID": null,8425              "isHook": false,8426              "skipped": true8427            },8428            {8429              "title": "ensure non-white-listed non-privileged address can't mint tokens",8430              "fullTitle": "Negative Integration Test setMintPermission ensure non-white-listed non-privileged address can't mint tokens",8431              "timedOut": false,8432              "duration": 0,8433              "state": null,8434              "speed": null,8435              "pass": false,8436              "fail": false,8437              "pending": false,8438              "context": null,8439              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    await helpers_1.enableWhiteListExpectSuccess(alice, collectionId);\n    await helpers_1.setMintPermissionExpectSuccess(alice, collectionId, true);\n    await helpers_1.createItemExpectFailure(bob, collectionId, 'NFT');\n});",8440              "err": {},8441              "uuid": "17be383a-4cda-4426-9104-ca99e965bccc",8442              "parentUUID": null,8443              "isHook": false,8444              "skipped": true8445            }8446          ],8447          "suites": [],8448          "passes": [],8449          "failures": [],8450          "pending": [],8451          "skipped": [8452            "2646ad83-06be-4fee-92b4-0316359e4d47",8453            "06542d72-bd12-4943-a060-726f91838cf6",8454            "b5f2f65c-cebf-4155-8a5b-f64db02dfd8b",8455            "d5919771-6a70-4e9b-978f-dae88e7bb206",8456            "17be383a-4cda-4426-9104-ca99e965bccc"8457          ],8458          "duration": 0,8459          "root": false,8460          "rootEmpty": false,8461          "_timeout": 99999998462        },8463        {8464          "uuid": "8ee811c1-d214-486c-9cf1-2457e3e040d0",8465          "title": "Integration Test setOffchainSchema",8466          "fullFile": "/nft_parachain/tests/src/setOffchainSchema.test.ts",8467          "file": "/src/setOffchainSchema.test.ts",8468          "beforeHooks": [8469            {8470              "title": "\"before all\" hook",8471              "fullTitle": "Integration Test setOffchainSchema \"before all\" hook",8472              "timedOut": false,8473              "duration": 0,8474              "state": null,8475              "speed": null,8476              "pass": false,8477              "fail": false,8478              "pending": false,8479              "context": null,8480              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n});",8481              "err": {},8482              "uuid": "784ee8b7-3378-496c-9630-39ea92fb5387",8483              "parentUUID": null,8484              "isHook": true,8485              "skipped": false8486            }8487          ],8488          "afterHooks": [],8489          "tests": [8490            {8491              "title": "execute setOffchainSchema, verify data was set",8492              "fullTitle": "Integration Test setOffchainSchema execute setOffchainSchema, verify data was set",8493              "timedOut": false,8494              "duration": 0,8495              "state": null,8496              "speed": null,8497              "pass": false,8498              "fail": false,8499              "pending": false,8500              "context": null,8501              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nawait helpers_1.setOffchainSchemaExpectSuccess(alice, collectionId, DATA);\nconst collection = await helpers_1.queryCollectionExpectSuccess(collectionId);\nexpect(collection.OffchainSchema).to.be.equal('0x' + Buffer.from(DATA).toString('hex'));",8502              "err": {},8503              "uuid": "74df46ab-1974-4c14-b1c8-b44107edf519",8504              "parentUUID": null,8505              "isHook": false,8506              "skipped": true8507            },8508            {8509              "title": "execute setOffchainSchema (collection admin), verify data was set",8510              "fullTitle": "Integration Test setOffchainSchema execute setOffchainSchema (collection admin), verify data was set",8511              "timedOut": false,8512              "duration": 0,8513              "state": null,8514              "speed": null,8515              "pass": false,8516              "fail": false,8517              "pending": false,8518              "context": null,8519              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nawait helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\nawait helpers_1.setOffchainSchemaExpectSuccess(bob, collectionId, DATA);\nconst collection = await helpers_1.queryCollectionExpectSuccess(collectionId);\nexpect(collection.OffchainSchema).to.be.equal('0x' + Buffer.from(DATA).toString('hex'));",8520              "err": {},8521              "uuid": "a96f3c18-592c-4597-9516-3f5186e54953",8522              "parentUUID": null,8523              "isHook": false,8524              "skipped": true8525            }8526          ],8527          "suites": [],8528          "passes": [],8529          "failures": [],8530          "pending": [],8531          "skipped": [8532            "74df46ab-1974-4c14-b1c8-b44107edf519",8533            "a96f3c18-592c-4597-9516-3f5186e54953"8534          ],8535          "duration": 0,8536          "root": false,8537          "rootEmpty": false,8538          "_timeout": 99999998539        },8540        {8541          "uuid": "128add77-4dab-49aa-93c8-f00f156e2fe8",8542          "title": "Negative Integration Test setOffchainSchema",8543          "fullFile": "/nft_parachain/tests/src/setOffchainSchema.test.ts",8544          "file": "/src/setOffchainSchema.test.ts",8545          "beforeHooks": [8546            {8547              "title": "\"before all\" hook",8548              "fullTitle": "Negative Integration Test setOffchainSchema \"before all\" hook",8549              "timedOut": false,8550              "duration": 0,8551              "state": null,8552              "speed": null,8553              "pass": false,8554              "fail": false,8555              "pending": false,8556              "context": null,8557              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n    validCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n});",8558              "err": {},8559              "uuid": "42ceb947-54d1-43bd-818f-e2e6579f5bf4",8560              "parentUUID": null,8561              "isHook": true,8562              "skipped": false8563            }8564          ],8565          "afterHooks": [],8566          "tests": [8567            {8568              "title": "fails on not existing collection id",8569              "fullTitle": "Negative Integration Test setOffchainSchema fails on not existing collection id",8570              "timedOut": false,8571              "duration": 0,8572              "state": null,8573              "speed": null,8574              "pass": false,8575              "fail": false,8576              "pending": false,8577              "context": null,8578              "code": "const nonExistingCollectionId = await substrate_api_1.default(helpers_1.findNotExistingCollection);\nawait helpers_1.setOffchainSchemaExpectFailure(alice, nonExistingCollectionId, DATA);",8579              "err": {},8580              "uuid": "57ef09b4-431d-44db-b422-f551119d8a58",8581              "parentUUID": null,8582              "isHook": false,8583              "skipped": true8584            },8585            {8586              "title": "fails on destroyed collection id",8587              "fullTitle": "Negative Integration Test setOffchainSchema fails on destroyed collection id",8588              "timedOut": false,8589              "duration": 0,8590              "state": null,8591              "speed": null,8592              "pass": false,8593              "fail": false,8594              "pending": false,8595              "context": null,8596              "code": "const destroyedCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nawait helpers_1.destroyCollectionExpectSuccess(destroyedCollectionId);\nawait helpers_1.setOffchainSchemaExpectFailure(alice, destroyedCollectionId, DATA);",8597              "err": {},8598              "uuid": "03fec951-9f04-44e6-bd91-b3db5006f811",8599              "parentUUID": null,8600              "isHook": false,8601              "skipped": true8602            },8603            {8604              "title": "fails on too long data",8605              "fullTitle": "Negative Integration Test setOffchainSchema fails on too long data",8606              "timedOut": false,8607              "duration": 0,8608              "state": null,8609              "speed": null,8610              "pass": false,8611              "fail": false,8612              "pending": false,8613              "context": null,8614              "code": "const tooLongData = new Array(4097).fill(0xff);\nawait helpers_1.setOffchainSchemaExpectFailure(alice, validCollectionId, tooLongData);",8615              "err": {},8616              "uuid": "0c79ca69-2103-4006-807b-ca84b88a4d3f",8617              "parentUUID": null,8618              "isHook": false,8619              "skipped": true8620            },8621            {8622              "title": "fails on execution by non-owner",8623              "fullTitle": "Negative Integration Test setOffchainSchema fails on execution by non-owner",8624              "timedOut": false,8625              "duration": 0,8626              "state": null,8627              "speed": null,8628              "pass": false,8629              "fail": false,8630              "pending": false,8631              "context": null,8632              "code": "await helpers_1.setOffchainSchemaExpectFailure(bob, validCollectionId, DATA);",8633              "err": {},8634              "uuid": "e24a2704-3e4b-4e16-9bbf-8469e1075273",8635              "parentUUID": null,8636              "isHook": false,8637              "skipped": true8638            }8639          ],8640          "suites": [],8641          "passes": [],8642          "failures": [],8643          "pending": [],8644          "skipped": [8645            "57ef09b4-431d-44db-b422-f551119d8a58",8646            "03fec951-9f04-44e6-bd91-b3db5006f811",8647            "0c79ca69-2103-4006-807b-ca84b88a4d3f",8648            "e24a2704-3e4b-4e16-9bbf-8469e1075273"8649          ],8650          "duration": 0,8651          "root": false,8652          "rootEmpty": false,8653          "_timeout": 99999998654        },8655        {8656          "uuid": "21cd6275-d772-43e4-8107-49172c63e008",8657          "title": "Integration Test setPublicAccessMode(): ",8658          "fullFile": "/nft_parachain/tests/src/setPublicAccessMode.test.ts",8659          "file": "/src/setPublicAccessMode.test.ts",8660          "beforeHooks": [8661            {8662              "title": "\"before all\" hook",8663              "fullTitle": "Integration Test setPublicAccessMode():  \"before all\" hook",8664              "timedOut": false,8665              "duration": 0,8666              "state": null,8667              "speed": null,8668              "pass": false,8669              "fail": false,8670              "pending": false,8671              "context": null,8672              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",8673              "err": {},8674              "uuid": "2c502666-f62e-4258-b153-af208488ecd1",8675              "parentUUID": null,8676              "isHook": true,8677              "skipped": false8678            }8679          ],8680          "afterHooks": [],8681          "tests": [8682            {8683              "title": "Run extrinsic with collection id parameters, set the whitelist mode for the collection",8684              "fullTitle": "Integration Test setPublicAccessMode():  Run extrinsic with collection id parameters, set the whitelist mode for the collection",8685              "timedOut": false,8686              "duration": 0,8687              "state": null,8688              "speed": null,8689              "pass": false,8690              "fail": false,8691              "pending": false,8692              "context": null,8693              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(Alice, collectionId);\n    await helpers_1.enablePublicMintingExpectSuccess(Alice, collectionId);\n    await helpers_1.addToWhiteListExpectSuccess(Alice, collectionId, Bob.address);\n    await helpers_1.createItemExpectSuccess(Bob, collectionId, 'NFT', Bob.address);\n});",8694              "err": {},8695              "uuid": "55b032ac-9618-4054-95ea-d81ba90b0c90",8696              "parentUUID": null,8697              "isHook": false,8698              "skipped": true8699            },8700            {8701              "title": "Whitelisted collection limits",8702              "fullTitle": "Integration Test setPublicAccessMode():  Whitelisted collection limits",8703              "timedOut": false,8704              "duration": 0,8705              "state": null,8706              "speed": null,8707              "pass": false,8708              "fail": false,8709              "pending": false,8710              "context": null,8711              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(Alice, collectionId);\n    await helpers_1.enablePublicMintingExpectSuccess(Alice, collectionId);\n    const tx = api.tx.nft.createItem(collectionId, helpers_1.normalizeAccountId(Bob.address), 'NFT');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Bob, tx)).to.be.rejected;\n});",8712              "err": {},8713              "uuid": "1a73aee5-8fbf-4c9e-8597-1fd85d8535b9",8714              "parentUUID": null,8715              "isHook": false,8716              "skipped": true8717            }8718          ],8719          "suites": [],8720          "passes": [],8721          "failures": [],8722          "pending": [],8723          "skipped": [8724            "55b032ac-9618-4054-95ea-d81ba90b0c90",8725            "1a73aee5-8fbf-4c9e-8597-1fd85d8535b9"8726          ],8727          "duration": 0,8728          "root": false,8729          "rootEmpty": false,8730          "_timeout": 99999998731        },8732        {8733          "uuid": "2b95666d-f34b-4ed3-acf5-fdd7ea14f453",8734          "title": "Negative Integration Test ext. setPublicAccessMode(): ",8735          "fullFile": "/nft_parachain/tests/src/setPublicAccessMode.test.ts",8736          "file": "/src/setPublicAccessMode.test.ts",8737          "beforeHooks": [],8738          "afterHooks": [],8739          "tests": [8740            {8741              "title": "Set a non-existent collection",8742              "fullTitle": "Negative Integration Test ext. setPublicAccessMode():  Set a non-existent collection",8743              "timedOut": false,8744              "duration": 0,8745              "state": null,8746              "speed": null,8747              "pass": false,8748              "fail": false,8749              "pending": false,8750              "context": null,8751              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: radix\n    const collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n    const tx = api.tx.nft.setPublicAccessMode(collectionId, 'WhiteList');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, tx)).to.be.rejected;\n});",8752              "err": {},8753              "uuid": "bf038639-2b3a-4e55-8fd8-87fc2dd2079f",8754              "parentUUID": null,8755              "isHook": false,8756              "skipped": true8757            },8758            {8759              "title": "Set the collection that has been deleted",8760              "fullTitle": "Negative Integration Test ext. setPublicAccessMode():  Set the collection that has been deleted",8761              "timedOut": false,8762              "duration": 0,8763              "state": null,8764              "speed": null,8765              "pass": false,8766              "fail": false,8767              "pending": false,8768              "context": null,8769              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n    const tx = api.tx.nft.setPublicAccessMode(collectionId, 'WhiteList');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, tx)).to.be.rejected;\n});",8770              "err": {},8771              "uuid": "0869df88-a579-4e57-82e3-ed0cec2df308",8772              "parentUUID": null,8773              "isHook": false,8774              "skipped": true8775            },8776            {8777              "title": "Re-set the list mode already set in quantity",8778              "fullTitle": "Negative Integration Test ext. setPublicAccessMode():  Re-set the list mode already set in quantity",8779              "timedOut": false,8780              "duration": 0,8781              "state": null,8782              "speed": null,8783              "pass": false,8784              "fail": false,8785              "pending": false,8786              "context": null,8787              "code": "await substrate_api_1.default(async () => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.enableWhiteListExpectSuccess(Alice, collectionId);\n    await helpers_1.enableWhiteListExpectSuccess(Alice, collectionId);\n});",8788              "err": {},8789              "uuid": "c15c0080-3c65-4afd-89e5-b6ac7c08880a",8790              "parentUUID": null,8791              "isHook": false,8792              "skipped": true8793            },8794            {8795              "title": "Execute method not on behalf of the collection owner",8796              "fullTitle": "Negative Integration Test ext. setPublicAccessMode():  Execute method not on behalf of the collection owner",8797              "timedOut": false,8798              "duration": 0,8799              "state": null,8800              "speed": null,8801              "pass": false,8802              "fail": false,8803              "pending": false,8804              "context": null,8805              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const tx = api.tx.nft.setPublicAccessMode(collectionId, 'WhiteList');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Bob, tx)).to.be.rejected;\n});",8806              "err": {},8807              "uuid": "65f44b07-e980-4937-a64e-966cc44cdfd0",8808              "parentUUID": null,8809              "isHook": false,8810              "skipped": true8811            }8812          ],8813          "suites": [],8814          "passes": [],8815          "failures": [],8816          "pending": [],8817          "skipped": [8818            "bf038639-2b3a-4e55-8fd8-87fc2dd2079f",8819            "0869df88-a579-4e57-82e3-ed0cec2df308",8820            "c15c0080-3c65-4afd-89e5-b6ac7c08880a",8821            "65f44b07-e980-4937-a64e-966cc44cdfd0"8822          ],8823          "duration": 0,8824          "root": false,8825          "rootEmpty": false,8826          "_timeout": 99999998827        },8828        {8829          "uuid": "fe633113-3571-4966-8ef2-f21169ed6919",8830          "title": "Negative Integration Test ext. collection admin setPublicAccessMode(): ",8831          "fullFile": "/nft_parachain/tests/src/setPublicAccessMode.test.ts",8832          "file": "/src/setPublicAccessMode.test.ts",8833          "beforeHooks": [8834            {8835              "title": "\"before all\" hook",8836              "fullTitle": "Negative Integration Test ext. collection admin setPublicAccessMode():  \"before all\" hook",8837              "timedOut": false,8838              "duration": 0,8839              "state": null,8840              "speed": null,8841              "pass": false,8842              "fail": false,8843              "pending": false,8844              "context": null,8845              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n});",8846              "err": {},8847              "uuid": "67f09b42-dea1-4c38-ae29-14ec5b16ac2f",8848              "parentUUID": null,8849              "isHook": true,8850              "skipped": false8851            }8852          ],8853          "afterHooks": [],8854          "tests": [8855            {8856              "title": "setPublicAccessMode by collection admin",8857              "fullTitle": "Negative Integration Test ext. collection admin setPublicAccessMode():  setPublicAccessMode by collection admin",8858              "timedOut": false,8859              "duration": 0,8860              "state": null,8861              "speed": null,8862              "pass": false,8863              "fail": false,8864              "pending": false,8865              "context": null,8866              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: no-bitwise\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\n    const tx = api.tx.nft.setPublicAccessMode(collectionId, 'WhiteList');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Bob, tx)).to.be.rejected;\n});",8867              "err": {},8868              "uuid": "f7f2e202-851a-4608-8011-59ed6f8cfd89",8869              "parentUUID": null,8870              "isHook": false,8871              "skipped": true8872            }8873          ],8874          "suites": [],8875          "passes": [],8876          "failures": [],8877          "pending": [],8878          "skipped": [8879            "f7f2e202-851a-4608-8011-59ed6f8cfd89"8880          ],8881          "duration": 0,8882          "root": false,8883          "rootEmpty": false,8884          "_timeout": 99999998885        },8886        {8887          "uuid": "95210d41-0381-4266-a470-6b1c1a8dd7d9",8888          "title": "hooks",8889          "fullFile": "/nft_parachain/tests/src/setSchemaVersion.test.ts",8890          "file": "/src/setSchemaVersion.test.ts",8891          "beforeHooks": [8892            {8893              "title": "\"before all\" hook",8894              "fullTitle": "hooks \"before all\" hook",8895              "timedOut": false,8896              "duration": 0,8897              "state": null,8898              "speed": null,8899              "pass": false,8900              "fail": false,8901              "pending": false,8902              "context": null,8903              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n});",8904              "err": {},8905              "uuid": "65514693-ecaf-402a-a914-8207dc6e0e64",8906              "parentUUID": null,8907              "isHook": true,8908              "skipped": false8909            }8910          ],8911          "afterHooks": [],8912          "tests": [8913            {8914              "title": "choose or create collection for testing",8915              "fullTitle": "hooks choose or create collection for testing",8916              "timedOut": false,8917              "duration": 0,8918              "state": null,8919              "speed": null,8920              "pass": false,8921              "fail": false,8922              "pending": false,8923              "context": null,8924              "code": "await substrate_api_1.default(async () => {\n    collectionIdForTesting = await helpers_1.createCollectionExpectSuccess({ name: 'A', description: 'B', tokenPrefix: 'C', mode: { type: 'NFT' } });\n});",8925              "err": {},8926              "uuid": "5dd8b15a-e1e3-432c-a2d1-c3f239c17777",8927              "parentUUID": null,8928              "isHook": false,8929              "skipped": true8930            }8931          ],8932          "suites": [],8933          "passes": [],8934          "failures": [],8935          "pending": [],8936          "skipped": [8937            "5dd8b15a-e1e3-432c-a2d1-c3f239c17777"8938          ],8939          "duration": 0,8940          "root": false,8941          "rootEmpty": false,8942          "_timeout": 99999998943        },8944        {8945          "uuid": "b29cdf70-5c2b-4f4f-b53e-72c1180da4f5",8946          "title": "setSchemaVersion positive",8947          "fullFile": "/nft_parachain/tests/src/setSchemaVersion.test.ts",8948          "file": "/src/setSchemaVersion.test.ts",8949          "beforeHooks": [8950            {8951              "title": "\"before all\" hook",8952              "fullTitle": "setSchemaVersion positive \"before all\" hook",8953              "timedOut": false,8954              "duration": 0,8955              "state": null,8956              "speed": null,8957              "pass": false,8958              "fail": false,8959              "pending": false,8960              "context": null,8961              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n});",8962              "err": {},8963              "uuid": "9013432b-5ba4-4bc8-a7a2-cde5e009de3e",8964              "parentUUID": null,8965              "isHook": true,8966              "skipped": false8967            }8968          ],8969          "afterHooks": [],8970          "tests": [8971            {8972              "title": "execute setSchemaVersion with image url and unique ",8973              "fullTitle": "setSchemaVersion positive execute setSchemaVersion with image url and unique ",8974              "timedOut": false,8975              "duration": 0,8976              "state": null,8977              "speed": null,8978              "pass": false,8979              "fail": false,8980              "pending": false,8981              "context": null,8982              "code": "await substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setSchemaVersion(collectionIdForTesting, 'Unique');\n    const events = await substrate_api_1.submitTransactionAsync(alice, tx);\n    const result = helpers_1.getCreateItemResult(events);\n    const collectionInfo = await helpers_1.getDetailedCollectionInfo(api, collectionIdForTesting);\n    // tslint:disable-next-line:no-unused-expression\n    expect(result.success).to.be.true;\n    // tslint:disable-next-line:no-unused-expression\n    expect(collectionInfo).to.be.exist;\n    // tslint:disable-next-line:no-unused-expression\n    expect(collectionInfo ? collectionInfo.SchemaVersion.toString() : '').to.be.equal('Unique');\n});",8983              "err": {},8984              "uuid": "b1f37795-e81d-406d-87f8-c5dadaa5624e",8985              "parentUUID": null,8986              "isHook": false,8987              "skipped": true8988            }8989          ],8990          "suites": [],8991          "passes": [],8992          "failures": [],8993          "pending": [],8994          "skipped": [8995            "b1f37795-e81d-406d-87f8-c5dadaa5624e"8996          ],8997          "duration": 0,8998          "root": false,8999          "rootEmpty": false,9000          "_timeout": 99999999001        },9002        {9003          "uuid": "6b9969df-88db-40ee-8830-8ae2d4577acb",9004          "title": "Collection admin setSchemaVersion positive",9005          "fullFile": "/nft_parachain/tests/src/setSchemaVersion.test.ts",9006          "file": "/src/setSchemaVersion.test.ts",9007          "beforeHooks": [9008            {9009              "title": "\"before all\" hook",9010              "fullTitle": "Collection admin setSchemaVersion positive \"before all\" hook",9011              "timedOut": false,9012              "duration": 0,9013              "state": null,9014              "speed": null,9015              "pass": false,9016              "fail": false,9017              "pending": false,9018              "context": null,9019              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    bob = keyring.addFromUri('//Bob');\n    await helpers_1.addCollectionAdminExpectSuccess(alice, collectionIdForTesting, bob);\n});",9020              "err": {},9021              "uuid": "499d6f5d-3966-4b81-b3a1-e140c0f46819",9022              "parentUUID": null,9023              "isHook": true,9024              "skipped": false9025            }9026          ],9027          "afterHooks": [],9028          "tests": [9029            {9030              "title": "execute setSchemaVersion with image url and unique ",9031              "fullTitle": "Collection admin setSchemaVersion positive execute setSchemaVersion with image url and unique ",9032              "timedOut": false,9033              "duration": 0,9034              "state": null,9035              "speed": null,9036              "pass": false,9037              "fail": false,9038              "pending": false,9039              "context": null,9040              "code": "await substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setSchemaVersion(collectionIdForTesting, 'Unique');\n    const events = await substrate_api_1.submitTransactionAsync(bob, tx);\n    const result = helpers_1.getCreateItemResult(events);\n    const collectionInfo = await helpers_1.getDetailedCollectionInfo(api, collectionIdForTesting);\n    // tslint:disable-next-line:no-unused-expression\n    expect(result.success).to.be.true;\n    // tslint:disable-next-line:no-unused-expression\n    expect(collectionInfo).to.be.exist;\n    // tslint:disable-next-line:no-unused-expression\n    expect(collectionInfo ? collectionInfo.SchemaVersion.toString() : '').to.be.equal('Unique');\n});",9041              "err": {},9042              "uuid": "01b1449a-50b5-4294-b820-94be9a867866",9043              "parentUUID": null,9044              "isHook": false,9045              "skipped": true9046            },9047            {9048              "title": "validate schema version with just entered data",9049              "fullTitle": "Collection admin setSchemaVersion positive validate schema version with just entered data",9050              "timedOut": false,9051              "duration": 0,9052              "state": null,9053              "speed": null,9054              "pass": false,9055              "fail": false,9056              "pending": false,9057              "context": null,9058              "code": "await substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setSchemaVersion(collectionIdForTesting, 'ImageURL');\n    const events = await substrate_api_1.submitTransactionAsync(bob, tx);\n    const result = helpers_1.getCreateItemResult(events);\n    const collectionInfo = await helpers_1.getDetailedCollectionInfo(api, collectionIdForTesting);\n    // tslint:disable-next-line:no-unused-expression\n    expect(result.success).to.be.true;\n    // tslint:disable-next-line:no-unused-expression\n    expect(collectionInfo).to.be.exist;\n    // tslint:disable-next-line:no-unused-expression\n    expect(collectionInfo ? collectionInfo.SchemaVersion.toString() : '').to.be.equal('ImageURL');\n});",9059              "err": {},9060              "uuid": "f3f49e1a-d105-4784-a94b-f19feafab72e",9061              "parentUUID": null,9062              "isHook": false,9063              "skipped": true9064            }9065          ],9066          "suites": [],9067          "passes": [],9068          "failures": [],9069          "pending": [],9070          "skipped": [9071            "01b1449a-50b5-4294-b820-94be9a867866",9072            "f3f49e1a-d105-4784-a94b-f19feafab72e"9073          ],9074          "duration": 0,9075          "root": false,9076          "rootEmpty": false,9077          "_timeout": 99999999078        },9079        {9080          "uuid": "cca36752-479c-4b26-9c41-9ab7c1f97063",9081          "title": "setSchemaVersion negative",9082          "fullFile": "/nft_parachain/tests/src/setSchemaVersion.test.ts",9083          "file": "/src/setSchemaVersion.test.ts",9084          "beforeHooks": [9085            {9086              "title": "\"before all\" hook",9087              "fullTitle": "setSchemaVersion negative \"before all\" hook",9088              "timedOut": false,9089              "duration": 0,9090              "state": null,9091              "speed": null,9092              "pass": false,9093              "fail": false,9094              "pending": false,9095              "context": null,9096              "code": "await substrate_api_1.default(async () => {\n    const keyring = new api_1.Keyring({ type: 'sr25519' });\n    alice = keyring.addFromUri('//Alice');\n    charlie = keyring.addFromUri('//Charlie');\n});",9097              "err": {},9098              "uuid": "b4dad0a8-e978-4a1f-9a29-5c2bc9f8b228",9099              "parentUUID": null,9100              "isHook": true,9101              "skipped": false9102            }9103          ],9104          "afterHooks": [],9105          "tests": [9106            {9107              "title": "execute setSchemaVersion for not exists collection",9108              "fullTitle": "setSchemaVersion negative execute setSchemaVersion for not exists collection",9109              "timedOut": false,9110              "duration": 0,9111              "state": null,9112              "speed": null,9113              "pass": false,9114              "fail": false,9115              "pending": false,9116              "context": null,9117              "code": "await substrate_api_1.default(async (api) => {\n    const collectionCount = await helpers_1.getCreatedCollectionCount(api);\n    const nonExistedCollectionId = collectionCount + 1;\n    tx = api.tx.nft.setSchemaVersion(nonExistedCollectionId, 'ImageURL');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, tx)).to.be.rejected;\n});",9118              "err": {},9119              "uuid": "711dd282-06df-4b27-ad74-4817c4199cbe",9120              "parentUUID": null,9121              "isHook": false,9122              "skipped": true9123            },9124            {9125              "title": "execute setSchemaVersion with not correct schema version",9126              "fullTitle": "setSchemaVersion negative execute setSchemaVersion with not correct schema version",9127              "timedOut": false,9128              "duration": 0,9129              "state": null,9130              "speed": null,9131              "pass": false,9132              "fail": false,9133              "pending": false,9134              "context": null,9135              "code": "await substrate_api_1.default(async (api) => {\n    const consoleError = console.error;\n    console.error = () => { };\n    try {\n        tx = api.tx.nft.setSchemaVersion(collectionIdForTesting, 'Test');\n        await substrate_api_1.submitTransactionAsync(alice, tx);\n    }\n    catch (e) {\n        // tslint:disable-next-line:no-unused-expression\n        expect(e).to.be.exist;\n    }\n    finally {\n        console.error = consoleError;\n    }\n});",9136              "err": {},9137              "uuid": "03934978-2e4a-416e-a7bd-322c1bf6998d",9138              "parentUUID": null,9139              "isHook": false,9140              "skipped": true9141            },9142            {9143              "title": "execute setSchemaVersion for deleted collection",9144              "fullTitle": "setSchemaVersion negative execute setSchemaVersion for deleted collection",9145              "timedOut": false,9146              "duration": 0,9147              "state": null,9148              "speed": null,9149              "pass": false,9150              "fail": false,9151              "pending": false,9152              "context": null,9153              "code": "await substrate_api_1.default(async (api) => {\n    await helpers_1.destroyCollectionExpectSuccess(collectionIdForTesting);\n    tx = api.tx.nft.setSchemaVersion(collectionIdForTesting, 'ImageURL');\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(alice, tx)).to.be.rejected;\n});",9154              "err": {},9155              "uuid": "0f71035a-7ee8-49d5-9108-8c3a8cb20746",9156              "parentUUID": null,9157              "isHook": false,9158              "skipped": true9159            },9160            {9161              "title": "Regular user can`t execute setSchemaVersion with image url and unique ",9162              "fullTitle": "setSchemaVersion negative Regular user can`t execute setSchemaVersion with image url and unique ",9163              "timedOut": false,9164              "duration": 0,9165              "state": null,9166              "speed": null,9167              "pass": false,9168              "fail": false,9169              "pending": false,9170              "context": null,9171              "code": "await substrate_api_1.default(async (api) => {\n    tx = api.tx.nft.setSchemaVersion(collectionIdForTesting, 'Unique');\n    await expect(substrate_api_1.submitTransactionAsync(charlie, tx)).to.be.rejected;\n});",9172              "err": {},9173              "uuid": "3340ff9a-6b05-4d6f-8008-742400241c25",9174              "parentUUID": null,9175              "isHook": false,9176              "skipped": true9177            }9178          ],9179          "suites": [],9180          "passes": [],9181          "failures": [],9182          "pending": [],9183          "skipped": [9184            "711dd282-06df-4b27-ad74-4817c4199cbe",9185            "03934978-2e4a-416e-a7bd-322c1bf6998d",9186            "0f71035a-7ee8-49d5-9108-8c3a8cb20746",9187            "3340ff9a-6b05-4d6f-8008-742400241c25"9188          ],9189          "duration": 0,9190          "root": false,9191          "rootEmpty": false,9192          "_timeout": 99999999193        },9194        {9195          "uuid": "0e1d8b18-361d-486f-b15e-c942702380ce",9196          "title": "Integration Test setVariableMetaData",9197          "fullFile": "/nft_parachain/tests/src/setVariableMetaData.test.ts",9198          "file": "/src/setVariableMetaData.test.ts",9199          "beforeHooks": [9200            {9201              "title": "\"before all\" hook",9202              "fullTitle": "Integration Test setVariableMetaData \"before all\" hook",9203              "timedOut": false,9204              "duration": 0,9205              "state": null,9206              "speed": null,9207              "pass": false,9208              "fail": false,9209              "pending": false,9210              "context": null,9211              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT');\n});",9212              "err": {},9213              "uuid": "fda3fb20-122c-4c58-a568-38d5df352f10",9214              "parentUUID": null,9215              "isHook": true,9216              "skipped": false9217            }9218          ],9219          "afterHooks": [],9220          "tests": [9221            {9222              "title": "execute setVariableMetaData",9223              "fullTitle": "Integration Test setVariableMetaData execute setVariableMetaData",9224              "timedOut": false,9225              "duration": 0,9226              "state": null,9227              "speed": null,9228              "pass": false,9229              "fail": false,9230              "pending": false,9231              "context": null,9232              "code": "await helpers_1.setVariableMetaDataExpectSuccess(alice, collectionId, tokenId, data);",9233              "err": {},9234              "uuid": "e6809f64-bb74-4063-af89-26ec8b8ccfa1",9235              "parentUUID": null,9236              "isHook": false,9237              "skipped": true9238            },9239            {9240              "title": "verify data was set",9241              "fullTitle": "Integration Test setVariableMetaData verify data was set",9242              "timedOut": false,9243              "duration": 0,9244              "state": null,9245              "speed": null,9246              "pass": false,9247              "fail": false,9248              "pending": false,9249              "context": null,9250              "code": "await substrate_api_1.default(async (api) => {\n    const item = (await api.query.nft.nftItemList(collectionId, tokenId)).unwrap();\n    expect(Array.from(item.VariableData)).to.deep.equal(Array.from(data));\n});",9251              "err": {},9252              "uuid": "41676afc-1825-4f06-91ba-7d86efc503d2",9253              "parentUUID": null,9254              "isHook": false,9255              "skipped": true9256            }9257          ],9258          "suites": [],9259          "passes": [],9260          "failures": [],9261          "pending": [],9262          "skipped": [9263            "e6809f64-bb74-4063-af89-26ec8b8ccfa1",9264            "41676afc-1825-4f06-91ba-7d86efc503d2"9265          ],9266          "duration": 0,9267          "root": false,9268          "rootEmpty": false,9269          "_timeout": 99999999270        },9271        {9272          "uuid": "5d5baf3a-85e8-457a-837c-aad3479ae0fa",9273          "title": "Integration Test collection admin setVariableMetaData",9274          "fullFile": "/nft_parachain/tests/src/setVariableMetaData.test.ts",9275          "file": "/src/setVariableMetaData.test.ts",9276          "beforeHooks": [9277            {9278              "title": "\"before all\" hook",9279              "fullTitle": "Integration Test collection admin setVariableMetaData \"before all\" hook",9280              "timedOut": false,9281              "duration": 0,9282              "state": null,9283              "speed": null,9284              "pass": false,9285              "fail": false,9286              "pending": false,9287              "context": null,9288              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n    collectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    tokenId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT');\n    await helpers_1.addCollectionAdminExpectSuccess(alice, collectionId, bob);\n});",9289              "err": {},9290              "uuid": "80e76546-37db-4019-a7d4-7c55efa8c3c7",9291              "parentUUID": null,9292              "isHook": true,9293              "skipped": false9294            }9295          ],9296          "afterHooks": [],9297          "tests": [9298            {9299              "title": "execute setVariableMetaData",9300              "fullTitle": "Integration Test collection admin setVariableMetaData execute setVariableMetaData",9301              "timedOut": false,9302              "duration": 0,9303              "state": null,9304              "speed": null,9305              "pass": false,9306              "fail": false,9307              "pending": false,9308              "context": null,9309              "code": "await helpers_1.setVariableMetaDataExpectSuccess(bob, collectionId, tokenId, data);",9310              "err": {},9311              "uuid": "a729be6d-0a5f-453a-b96c-0abe0920eb11",9312              "parentUUID": null,9313              "isHook": false,9314              "skipped": true9315            },9316            {9317              "title": "verify data was set",9318              "fullTitle": "Integration Test collection admin setVariableMetaData verify data was set",9319              "timedOut": false,9320              "duration": 0,9321              "state": null,9322              "speed": null,9323              "pass": false,9324              "fail": false,9325              "pending": false,9326              "context": null,9327              "code": "await substrate_api_1.default(async (api) => {\n    const item = (await api.query.nft.nftItemList(collectionId, tokenId)).unwrap();\n    expect(Array.from(item.VariableData)).to.deep.equal(Array.from(data));\n});",9328              "err": {},9329              "uuid": "5d706d87-49db-4147-9b21-896aafd8a741",9330              "parentUUID": null,9331              "isHook": false,9332              "skipped": true9333            }9334          ],9335          "suites": [],9336          "passes": [],9337          "failures": [],9338          "pending": [],9339          "skipped": [9340            "a729be6d-0a5f-453a-b96c-0abe0920eb11",9341            "5d706d87-49db-4147-9b21-896aafd8a741"9342          ],9343          "duration": 0,9344          "root": false,9345          "rootEmpty": false,9346          "_timeout": 99999999347        },9348        {9349          "uuid": "8c8b8314-a60a-46d6-9f74-eedbe192ba40",9350          "title": "Negative Integration Test setVariableMetaData",9351          "fullFile": "/nft_parachain/tests/src/setVariableMetaData.test.ts",9352          "file": "/src/setVariableMetaData.test.ts",9353          "beforeHooks": [9354            {9355              "title": "\"before all\" hook",9356              "fullTitle": "Negative Integration Test setVariableMetaData \"before all\" hook",9357              "timedOut": false,9358              "duration": 0,9359              "state": null,9360              "speed": null,9361              "pass": false,9362              "fail": false,9363              "pending": false,9364              "context": null,9365              "code": "await substrate_api_1.default(async () => {\n    alice = privateKey_1.default('//Alice');\n    bob = privateKey_1.default('//Bob');\n    validCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\n    validTokenId = await helpers_1.createItemExpectSuccess(alice, validCollectionId, 'NFT');\n});",9366              "err": {},9367              "uuid": "5f12f2fd-31df-495d-aea7-4b99d560b28c",9368              "parentUUID": null,9369              "isHook": true,9370              "skipped": false9371            }9372          ],9373          "afterHooks": [],9374          "tests": [9375            {9376              "title": "fails on not existing collection id",9377              "fullTitle": "Negative Integration Test setVariableMetaData fails on not existing collection id",9378              "timedOut": false,9379              "duration": 0,9380              "state": null,9381              "speed": null,9382              "pass": false,9383              "fail": false,9384              "pending": false,9385              "context": null,9386              "code": "await substrate_api_1.default(async (api) => {\n    const nonExistingCollectionId = await helpers_1.findNotExistingCollection(api);\n    await helpers_1.setVariableMetaDataExpectFailure(alice, nonExistingCollectionId, 1, data);\n});",9387              "err": {},9388              "uuid": "1520d86b-d0f4-4a03-93a4-c4d141613a26",9389              "parentUUID": null,9390              "isHook": false,9391              "skipped": true9392            },9393            {9394              "title": "fails on removed collection id",9395              "fullTitle": "Negative Integration Test setVariableMetaData fails on removed collection id",9396              "timedOut": false,9397              "duration": 0,9398              "state": null,9399              "speed": null,9400              "pass": false,9401              "fail": false,9402              "pending": false,9403              "context": null,9404              "code": "const removedCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nconst removedCollectionTokenId = await helpers_1.createItemExpectSuccess(alice, removedCollectionId, 'NFT');\nawait helpers_1.destroyCollectionExpectSuccess(removedCollectionId);\nawait helpers_1.setVariableMetaDataExpectFailure(alice, removedCollectionId, removedCollectionTokenId, data);",9405              "err": {},9406              "uuid": "44afa873-e07e-407c-bf4b-b79bb327ba52",9407              "parentUUID": null,9408              "isHook": false,9409              "skipped": true9410            },9411            {9412              "title": "fails on removed token",9413              "fullTitle": "Negative Integration Test setVariableMetaData fails on removed token",9414              "timedOut": false,9415              "duration": 0,9416              "state": null,9417              "speed": null,9418              "pass": false,9419              "fail": false,9420              "pending": false,9421              "context": null,9422              "code": "const removedTokenCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'NFT' } });\nconst removedTokenId = await helpers_1.createItemExpectSuccess(alice, removedTokenCollectionId, 'NFT');\nawait helpers_1.burnItemExpectSuccess(alice, removedTokenCollectionId, removedTokenId);\nawait helpers_1.setVariableMetaDataExpectFailure(alice, removedTokenCollectionId, removedTokenId, data);",9423              "err": {},9424              "uuid": "98e556c2-b933-484b-9d00-54f72c66bfb4",9425              "parentUUID": null,9426              "isHook": false,9427              "skipped": true9428            },9429            {9430              "title": "fails on not existing token",9431              "fullTitle": "Negative Integration Test setVariableMetaData fails on not existing token",9432              "timedOut": false,9433              "duration": 0,9434              "state": null,9435              "speed": null,9436              "pass": false,9437              "fail": false,9438              "pending": false,9439              "context": null,9440              "code": "const nonExistingTokenId = validTokenId + 1;\nawait helpers_1.setVariableMetaDataExpectFailure(alice, validCollectionId, nonExistingTokenId, data);",9441              "err": {},9442              "uuid": "00979659-a78e-45e7-a73d-18cb03a61c77",9443              "parentUUID": null,9444              "isHook": false,9445              "skipped": true9446            },9447            {9448              "title": "fails on too long data",9449              "fullTitle": "Negative Integration Test setVariableMetaData fails on too long data",9450              "timedOut": false,9451              "duration": 0,9452              "state": null,9453              "speed": null,9454              "pass": false,9455              "fail": false,9456              "pending": false,9457              "context": null,9458              "code": "const tooLongData = new Array(4097).fill(0xff);\nawait helpers_1.setVariableMetaDataExpectFailure(alice, validCollectionId, validTokenId, tooLongData);",9459              "err": {},9460              "uuid": "30efa555-6e64-4176-b43c-59aca9e238cf",9461              "parentUUID": null,9462              "isHook": false,9463              "skipped": true9464            },9465            {9466              "title": "fails on fungible token",9467              "fullTitle": "Negative Integration Test setVariableMetaData fails on fungible token",9468              "timedOut": false,9469              "duration": 0,9470              "state": null,9471              "speed": null,9472              "pass": false,9473              "fail": false,9474              "pending": false,9475              "context": null,9476              "code": "const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst fungibleTokenId = await helpers_1.createItemExpectSuccess(alice, fungibleCollectionId, 'Fungible');\nawait helpers_1.setVariableMetaDataExpectFailure(alice, fungibleCollectionId, fungibleTokenId, data);",9477              "err": {},9478              "uuid": "9487f809-f766-46d8-810c-db65c513e39d",9479              "parentUUID": null,9480              "isHook": false,9481              "skipped": true9482            },9483            {9484              "title": "fails on bad sender",9485              "fullTitle": "Negative Integration Test setVariableMetaData fails on bad sender",9486              "timedOut": false,9487              "duration": 0,9488              "state": null,9489              "speed": null,9490              "pass": false,9491              "fail": false,9492              "pending": false,9493              "context": null,9494              "code": "await helpers_1.setVariableMetaDataExpectFailure(bob, validCollectionId, validTokenId, data);",9495              "err": {},9496              "uuid": "303cec06-511c-4cb9-82d5-f8d2a651a289",9497              "parentUUID": null,9498              "isHook": false,9499              "skipped": true9500            }9501          ],9502          "suites": [],9503          "passes": [],9504          "failures": [],9505          "pending": [],9506          "skipped": [9507            "1520d86b-d0f4-4a03-93a4-c4d141613a26",9508            "44afa873-e07e-407c-bf4b-b79bb327ba52",9509            "98e556c2-b933-484b-9d00-54f72c66bfb4",9510            "00979659-a78e-45e7-a73d-18cb03a61c77",9511            "30efa555-6e64-4176-b43c-59aca9e238cf",9512            "9487f809-f766-46d8-810c-db65c513e39d",9513            "303cec06-511c-4cb9-82d5-f8d2a651a289"9514          ],9515          "duration": 0,9516          "root": false,9517          "rootEmpty": false,9518          "_timeout": 99999999519        },9520        {9521          "uuid": "1a362ae9-3751-4449-8623-b41905efddb4",9522          "title": "Integration Test setVariableMetadataSponsoringRateLimit",9523          "fullFile": "/nft_parachain/tests/src/setVariableMetadataSponsoringRateLimit.test.ts",9524          "file": "/src/setVariableMetadataSponsoringRateLimit.test.ts",9525          "beforeHooks": [9526            {9527              "title": "\"before all\" hook",9528              "fullTitle": "Integration Test setVariableMetadataSponsoringRateLimit \"before all\" hook",9529              "timedOut": false,9530              "duration": 0,9531              "state": null,9532              "speed": null,9533              "pass": false,9534              "fail": false,9535              "pending": false,9536              "context": null,9537              "code": "await substrate_api_1.default(async (api) => {\n    alice = privateKey_1.default('//Alice');\n    userWithNoBalance = await helpers_1.findUnusedAddress(api);\n});",9538              "err": {},9539              "uuid": "b007713b-7a18-47e7-b3a0-93019aa5eac5",9540              "parentUUID": null,9541              "isHook": true,9542              "skipped": false9543            }9544          ],9545          "afterHooks": [],9546          "tests": [9547            {9548              "title": "sponsored setVariableMetaData can be called twice with pause for free",9549              "fullTitle": "Integration Test setVariableMetadataSponsoringRateLimit sponsored setVariableMetaData can be called twice with pause for free",9550              "timedOut": false,9551              "duration": 0,9552              "state": null,9553              "speed": null,9554              "pass": false,9555              "fail": false,9556              "pending": false,9557              "context": null,9558              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, alice.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId);\nawait helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, {\n    SponsoredDataRateLimit: 0,\n});\nconst itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);\nawait helpers_1.setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);\nawait helpers_1.setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);",9559              "err": {},9560              "uuid": "a9c7a852-b054-41d0-9b46-81c6230b994e",9561              "parentUUID": null,9562              "isHook": false,9563              "skipped": true9564            },9565            {9566              "title": "sponsored setVariableMetaData can't be called twice without pause for free",9567              "fullTitle": "Integration Test setVariableMetadataSponsoringRateLimit sponsored setVariableMetaData can't be called twice without pause for free",9568              "timedOut": false,9569              "duration": 0,9570              "state": null,9571              "speed": null,9572              "pass": false,9573              "fail": false,9574              "pending": false,9575              "context": null,9576              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, alice.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId);\nawait helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, {\n    SponsoredDataRateLimit: 10,\n});\nconst itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);\nawait helpers_1.setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1, 2, 3]);\nawait helpers_1.setVariableMetaDataExpectFailure(userWithNoBalance, collectionId, itemId, [1, 2, 3]);",9577              "err": {},9578              "uuid": "f044ca9e-d444-4740-b72d-1be45413342f",9579              "parentUUID": null,9580              "isHook": false,9581              "skipped": true9582            },9583            {9584              "title": "sponsored setVariableMetaData can't be called for free with variable metadata above collection limits",9585              "fullTitle": "Integration Test setVariableMetadataSponsoringRateLimit sponsored setVariableMetaData can't be called for free with variable metadata above collection limits",9586              "timedOut": false,9587              "duration": 0,9588              "state": null,9589              "speed": null,9590              "pass": false,9591              "fail": false,9592              "pending": false,9593              "context": null,9594              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, alice.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId);\nawait helpers_1.setCollectionLimitsExpectSuccess(alice, collectionId, {\n    SponsoredDataRateLimit: 0,\n    SponsoredDataSize: 1,\n});\nconst itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);\nawait helpers_1.setVariableMetaDataExpectSuccess(userWithNoBalance, collectionId, itemId, [1]);\nawait helpers_1.setVariableMetaDataExpectFailure(userWithNoBalance, collectionId, itemId, [1, 2]);",9595              "err": {},9596              "uuid": "8441ac2e-8b88-415d-8be9-2064b1c0e265",9597              "parentUUID": null,9598              "isHook": false,9599              "skipped": true9600            },9601            {9602              "title": "Default value of rate limit does not sponsor setting variable metadata",9603              "fullTitle": "Integration Test setVariableMetadataSponsoringRateLimit Default value of rate limit does not sponsor setting variable metadata",9604              "timedOut": false,9605              "duration": 0,9606              "state": null,9607              "speed": null,9608              "pass": false,9609              "fail": false,9610              "pending": false,9611              "context": null,9612              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.setCollectionSponsorExpectSuccess(collectionId, alice.address);\nawait helpers_1.confirmSponsorshipExpectSuccess(collectionId);\nconst itemId = await helpers_1.createItemExpectSuccess(alice, collectionId, 'NFT', userWithNoBalance.address);\nawait helpers_1.setVariableMetaDataExpectFailure(userWithNoBalance, collectionId, itemId, [1]);",9613              "err": {},9614              "uuid": "5af868e4-77c9-4ddf-8715-0f4d88aa7632",9615              "parentUUID": null,9616              "isHook": false,9617              "skipped": true9618            }9619          ],9620          "suites": [],9621          "passes": [],9622          "failures": [],9623          "pending": [],9624          "skipped": [9625            "a9c7a852-b054-41d0-9b46-81c6230b994e",9626            "f044ca9e-d444-4740-b72d-1be45413342f",9627            "8441ac2e-8b88-415d-8be9-2064b1c0e265",9628            "5af868e4-77c9-4ddf-8715-0f4d88aa7632"9629          ],9630          "duration": 0,9631          "root": false,9632          "rootEmpty": false,9633          "_timeout": 99999999634        },9635        {9636          "uuid": "18086b2e-2832-425b-9558-bc1e65fafd91",9637          "title": "Integration Test ext. setVariableOnChainSchema()",9638          "fullFile": "/nft_parachain/tests/src/setVariableOnChainSchema.test.ts",9639          "file": "/src/setVariableOnChainSchema.test.ts",9640          "beforeHooks": [],9641          "afterHooks": [],9642          "tests": [9643            {9644              "title": "Run extrinsic with parameters of the collection id, set the scheme",9645              "fullTitle": "Integration Test ext. setVariableOnChainSchema() Run extrinsic with parameters of the collection id, set the scheme",9646              "timedOut": false,9647              "duration": 0,9648              "state": null,9649              "speed": null,9650              "pass": false,9651              "fail": false,9652              "pending": false,9653              "context": null,9654              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.eq(Alice.address);\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, Schema);\n    await substrate_api_1.submitTransactionAsync(Alice, setSchema);\n});",9655              "err": {},9656              "uuid": "3e84ac33-edf8-463b-a798-9bd566c1923a",9657              "parentUUID": null,9658              "isHook": false,9659              "skipped": true9660            },9661            {9662              "title": "Checking collection data using the setVariableOnChainSchema parameter",9663              "fullTitle": "Integration Test ext. setVariableOnChainSchema() Checking collection data using the setVariableOnChainSchema parameter",9664              "timedOut": false,9665              "duration": 0,9666              "state": null,9667              "speed": null,9668              "pass": false,9669              "fail": false,9670              "pending": false,9671              "context": null,9672              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, Schema);\n    await substrate_api_1.submitTransactionAsync(Alice, setSchema);\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.VariableOnChainSchema.toString()).to.be.eq(Schema);\n});",9673              "err": {},9674              "uuid": "dcff870a-5f53-4ad5-8be3-00122f9d3f97",9675              "parentUUID": null,9676              "isHook": false,9677              "skipped": true9678            }9679          ],9680          "suites": [],9681          "passes": [],9682          "failures": [],9683          "pending": [],9684          "skipped": [9685            "3e84ac33-edf8-463b-a798-9bd566c1923a",9686            "dcff870a-5f53-4ad5-8be3-00122f9d3f97"9687          ],9688          "duration": 0,9689          "root": false,9690          "rootEmpty": false,9691          "_timeout": 99999999692        },9693        {9694          "uuid": "5758eb2f-a731-428e-b6df-220ca5552865",9695          "title": "Integration Test ext. collection admin setVariableOnChainSchema()",9696          "fullFile": "/nft_parachain/tests/src/setVariableOnChainSchema.test.ts",9697          "file": "/src/setVariableOnChainSchema.test.ts",9698          "beforeHooks": [],9699          "afterHooks": [],9700          "tests": [9701            {9702              "title": "Run extrinsic with parameters of the collection id, set the scheme",9703              "fullTitle": "Integration Test ext. collection admin setVariableOnChainSchema() Run extrinsic with parameters of the collection id, set the scheme",9704              "timedOut": false,9705              "duration": 0,9706              "state": null,9707              "speed": null,9708              "pass": false,9709              "fail": false,9710              "pending": false,9711              "context": null,9712              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.eq(Alice.address);\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, Schema);\n    await substrate_api_1.submitTransactionAsync(Bob, setSchema);\n});",9713              "err": {},9714              "uuid": "c72d5119-bb01-455c-8ec7-9cbc3f68acf9",9715              "parentUUID": null,9716              "isHook": false,9717              "skipped": true9718            },9719            {9720              "title": "Checking collection data using the setVariableOnChainSchema parameter",9721              "fullTitle": "Integration Test ext. collection admin setVariableOnChainSchema() Checking collection data using the setVariableOnChainSchema parameter",9722              "timedOut": false,9723              "duration": 0,9724              "state": null,9725              "speed": null,9726              "pass": false,9727              "fail": false,9728              "pending": false,9729              "context": null,9730              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, collectionId, Bob);\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, Schema);\n    await substrate_api_1.submitTransactionAsync(Bob, setSchema);\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.VariableOnChainSchema.toString()).to.be.eq(Schema);\n});",9731              "err": {},9732              "uuid": "ab94900d-3da5-4bf8-96b9-f765ea577a32",9733              "parentUUID": null,9734              "isHook": false,9735              "skipped": true9736            }9737          ],9738          "suites": [],9739          "passes": [],9740          "failures": [],9741          "pending": [],9742          "skipped": [9743            "c72d5119-bb01-455c-8ec7-9cbc3f68acf9",9744            "ab94900d-3da5-4bf8-96b9-f765ea577a32"9745          ],9746          "duration": 0,9747          "root": false,9748          "rootEmpty": false,9749          "_timeout": 99999999750        },9751        {9752          "uuid": "159c6c9c-e143-4ec8-b00c-9a6065bb7444",9753          "title": "Negative Integration Test ext. setVariableOnChainSchema()",9754          "fullFile": "/nft_parachain/tests/src/setVariableOnChainSchema.test.ts",9755          "file": "/src/setVariableOnChainSchema.test.ts",9756          "beforeHooks": [],9757          "afterHooks": [],9758          "tests": [9759            {9760              "title": "Set a non-existent collection",9761              "fullTitle": "Negative Integration Test ext. setVariableOnChainSchema() Set a non-existent collection",9762              "timedOut": false,9763              "duration": 0,9764              "state": null,9765              "speed": null,9766              "pass": false,9767              "fail": false,9768              "pending": false,9769              "context": null,9770              "code": "await substrate_api_1.default(async (api) => {\n    // tslint:disable-next-line: radix\n    const collectionId = parseInt((await api.query.nft.createdCollectionCount()).toString()) + 1;\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, Schema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, setSchema)).to.be.rejected;\n});",9771              "err": {},9772              "uuid": "bc86c05c-a512-4230-9b61-d1f6c76a4501",9773              "parentUUID": null,9774              "isHook": false,9775              "skipped": true9776            },9777            {9778              "title": "Set a previously deleted collection",9779              "fullTitle": "Negative Integration Test ext. setVariableOnChainSchema() Set a previously deleted collection",9780              "timedOut": false,9781              "duration": 0,9782              "state": null,9783              "speed": null,9784              "pass": false,9785              "fail": false,9786              "pending": false,9787              "context": null,9788              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.destroyCollectionExpectSuccess(collectionId);\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, Schema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, setSchema)).to.be.rejected;\n});",9789              "err": {},9790              "uuid": "f082d5ab-8d6f-43cd-a23d-f89109a56116",9791              "parentUUID": null,9792              "isHook": false,9793              "skipped": true9794            },9795            {9796              "title": "Set invalid data in schema (size too large:> 1024b)",9797              "fullTitle": "Negative Integration Test ext. setVariableOnChainSchema() Set invalid data in schema (size too large:> 1024b)",9798              "timedOut": false,9799              "duration": 0,9800              "state": null,9801              "speed": null,9802              "pass": false,9803              "fail": false,9804              "pending": false,9805              "context": null,9806              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, largeSchema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Alice, setSchema)).to.be.rejected;\n});",9807              "err": {},9808              "uuid": "8cc68f97-6041-4842-b0fd-04dad9d20a74",9809              "parentUUID": null,9810              "isHook": false,9811              "skipped": true9812            },9813            {9814              "title": "Execute method not on behalf of the collection owner",9815              "fullTitle": "Negative Integration Test ext. setVariableOnChainSchema() Execute method not on behalf of the collection owner",9816              "timedOut": false,9817              "duration": 0,9818              "state": null,9819              "speed": null,9820              "pass": false,9821              "fail": false,9822              "pending": false,9823              "context": null,9824              "code": "await substrate_api_1.default(async (api) => {\n    const collectionId = await helpers_1.createCollectionExpectSuccess();\n    const collection = (await api.query.nft.collectionById(collectionId)).toJSON();\n    expect(collection.Owner).to.be.eq(Alice.address);\n    const setSchema = api.tx.nft.setVariableOnChainSchema(collectionId, Schema);\n    await expect(substrate_api_1.submitTransactionExpectFailAsync(Bob, setSchema)).to.be.rejected;\n});",9825              "err": {},9826              "uuid": "721fe6f1-7388-4602-b44f-b306e4a80dc9",9827              "parentUUID": null,9828              "isHook": false,9829              "skipped": true9830            }9831          ],9832          "suites": [],9833          "passes": [],9834          "failures": [],9835          "pending": [],9836          "skipped": [9837            "bc86c05c-a512-4230-9b61-d1f6c76a4501",9838            "f082d5ab-8d6f-43cd-a23d-f89109a56116",9839            "8cc68f97-6041-4842-b0fd-04dad9d20a74",9840            "721fe6f1-7388-4602-b44f-b306e4a80dc9"9841          ],9842          "duration": 0,9843          "root": false,9844          "rootEmpty": false,9845          "_timeout": 99999999846        },9847        {9848          "uuid": "5a1340ed-9a0e-4ec0-af62-ee259c4f8d77",9849          "title": "Integration Test toggleContractWhiteList",9850          "fullFile": "/nft_parachain/tests/src/toggleContractWhiteList.test.ts",9851          "file": "/src/toggleContractWhiteList.test.ts",9852          "beforeHooks": [],9853          "afterHooks": [],9854          "tests": [9855            {9856              "title": "Enable white list contract mode",9857              "fullTitle": "Integration Test toggleContractWhiteList Enable white list contract mode",9858              "timedOut": false,9859              "duration": 0,9860              "state": null,9861              "speed": null,9862              "pass": false,9863              "fail": false,9864              "pending": true,9865              "context": null,9866              "code": "",9867              "err": {},9868              "uuid": "3b1ce9c7-2447-420c-b474-ac3ca85fc507",9869              "parentUUID": null,9870              "isHook": false,9871              "skipped": false9872            },9873            {9874              "title": "Only whitelisted account can call contract",9875              "fullTitle": "Integration Test toggleContractWhiteList Only whitelisted account can call contract",9876              "timedOut": false,9877              "duration": 0,9878              "state": null,9879              "speed": null,9880              "pass": false,9881              "fail": false,9882              "pending": true,9883              "context": null,9884              "code": "",9885              "err": {},9886              "uuid": "4b092e32-c2e5-4bc7-81d9-8efadf917431",9887              "parentUUID": null,9888              "isHook": false,9889              "skipped": false9890            },9891            {9892              "title": "Enabling white list repeatedly should not produce errors",9893              "fullTitle": "Integration Test toggleContractWhiteList Enabling white list repeatedly should not produce errors",9894              "timedOut": false,9895              "duration": 0,9896              "state": null,9897              "speed": null,9898              "pass": false,9899              "fail": false,9900              "pending": true,9901              "context": null,9902              "code": "",9903              "err": {},9904              "uuid": "30f63030-adec-4500-b814-5da7eacddec7",9905              "parentUUID": null,9906              "isHook": false,9907              "skipped": false9908            }9909          ],9910          "suites": [],9911          "passes": [],9912          "failures": [],9913          "pending": [9914            "3b1ce9c7-2447-420c-b474-ac3ca85fc507",9915            "4b092e32-c2e5-4bc7-81d9-8efadf917431",9916            "30f63030-adec-4500-b814-5da7eacddec7"9917          ],9918          "skipped": [],9919          "duration": 0,9920          "root": false,9921          "rootEmpty": false,9922          "_timeout": 99999999923        },9924        {9925          "uuid": "3f130c5f-721a-473d-b977-74ca9fdab991",9926          "title": "Negative Integration Test toggleContractWhiteList",9927          "fullFile": "/nft_parachain/tests/src/toggleContractWhiteList.test.ts",9928          "file": "/src/toggleContractWhiteList.test.ts",9929          "beforeHooks": [],9930          "afterHooks": [],9931          "tests": [9932            {9933              "title": "Enable white list for a non-contract",9934              "fullTitle": "Negative Integration Test toggleContractWhiteList Enable white list for a non-contract",9935              "timedOut": false,9936              "duration": 0,9937              "state": null,9938              "speed": null,9939              "pass": false,9940              "fail": false,9941              "pending": true,9942              "context": null,9943              "code": "",9944              "err": {},9945              "uuid": "dda7fd05-b1e8-4974-a8df-a32680f561ac",9946              "parentUUID": null,9947              "isHook": false,9948              "skipped": false9949            },9950            {9951              "title": "Enable white list using a non-owner address",9952              "fullTitle": "Negative Integration Test toggleContractWhiteList Enable white list using a non-owner address",9953              "timedOut": false,9954              "duration": 0,9955              "state": null,9956              "speed": null,9957              "pass": false,9958              "fail": false,9959              "pending": true,9960              "context": null,9961              "code": "",9962              "err": {},9963              "uuid": "cf1a94b5-348b-4963-9504-b79dbdc57f5b",9964              "parentUUID": null,9965              "isHook": false,9966              "skipped": false9967            }9968          ],9969          "suites": [],9970          "passes": [],9971          "failures": [],9972          "pending": [9973            "dda7fd05-b1e8-4974-a8df-a32680f561ac",9974            "cf1a94b5-348b-4963-9504-b79dbdc57f5b"9975          ],9976          "skipped": [],9977          "duration": 0,9978          "root": false,9979          "rootEmpty": false,9980          "_timeout": 99999999981        },9982        {9983          "uuid": "9c8d5c0f-ed60-46ea-8dc8-d02454d960a4",9984          "title": "Integration Test Transfer(recipient, collection_id, item_id, value)",9985          "fullFile": "/nft_parachain/tests/src/transfer.test.ts",9986          "file": "/src/transfer.test.ts",9987          "beforeHooks": [],9988          "afterHooks": [],9989          "tests": [9990            {9991              "title": "Balance transfers and check balance",9992              "fullTitle": "Integration Test Transfer(recipient, collection_id, item_id, value) Balance transfers and check balance",9993              "timedOut": false,9994              "duration": 0,9995              "state": null,9996              "speed": null,9997              "pass": false,9998              "fail": false,9999              "pending": false,10000              "context": null,10001              "code": "await substrate_api_1.default(async (api) => {\n    const [alicesBalanceBefore, bobsBalanceBefore] = await get_balance_1.default(api, [accounts_1.alicesPublicKey, accounts_1.bobsPublicKey]);\n    const alicePrivateKey = privateKey_1.default('//Alice');\n    const transfer = api.tx.balances.transfer(accounts_1.bobsPublicKey, 1n);\n    const events = await substrate_api_1.submitTransactionAsync(alicePrivateKey, transfer);\n    const result = helpers_1.getCreateItemResult(events);\n    // tslint:disable-next-line:no-unused-expression\n    chai_1.expect(result.success).to.be.true;\n    const [alicesBalanceAfter, bobsBalanceAfter] = await get_balance_1.default(api, [accounts_1.alicesPublicKey, accounts_1.bobsPublicKey]);\n    // tslint:disable-next-line:no-unused-expression\n    chai_1.expect(alicesBalanceAfter < alicesBalanceBefore).to.be.true;\n    // tslint:disable-next-line:no-unused-expression\n    chai_1.expect(bobsBalanceAfter > bobsBalanceBefore).to.be.true;\n});",10002              "err": {},10003              "uuid": "ff5f089a-e6f0-4da1-9411-b0d0808e8007",10004              "parentUUID": null,10005              "isHook": false,10006              "skipped": true10007            },10008            {10009              "title": "Inability to pay fees error message is correct",10010              "fullTitle": "Integration Test Transfer(recipient, collection_id, item_id, value) Inability to pay fees error message is correct",10011              "timedOut": false,10012              "duration": 0,10013              "state": null,10014              "speed": null,10015              "pass": false,10016              "fail": false,10017              "pending": false,10018              "context": null,10019              "code": "await substrate_api_1.default(async (api) => {\n    // Find unused address\n    const pk = await helpers_1.findUnusedAddress(api);\n    const badTransfer = api.tx.balances.transfer(accounts_1.bobsPublicKey, 1n);\n    // const events = await submitTransactionAsync(pk, badTransfer);\n    const badTransaction = async () => {\n        const events = await substrate_api_1.submitTransactionAsync(pk, badTransfer);\n        const result = helpers_1.getCreateCollectionResult(events);\n        // tslint:disable-next-line:no-unused-expression\n        chai_1.expect(result.success).to.be.false;\n    };\n    chai_1.expect(badTransaction()).to.be.rejectedWith('Inability to pay some fees , e.g. account balance too low');\n});",10020              "err": {},10021              "uuid": "c05ffbdf-f157-4424-8a79-abaf1629a4b9",10022              "parentUUID": null,10023              "isHook": false,10024              "skipped": true10025            },10026            {10027              "title": "User can transfer owned token",10028              "fullTitle": "Integration Test Transfer(recipient, collection_id, item_id, value) User can transfer owned token",10029              "timedOut": false,10030              "duration": 0,10031              "state": null,10032              "speed": null,10033              "pass": false,10034              "fail": false,10035              "pending": false,10036              "context": null,10037              "code": "await substrate_api_1.default(async () => {\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    await helpers_1.transferExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob, 1, 'NFT');\n    // fungible\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\n    await helpers_1.transferExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 1, 'Fungible');\n    // reFungible\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\n    await helpers_1.transferExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 100, 'ReFungible');\n});",10038              "err": {},10039              "uuid": "fe4480f5-d2ee-460a-a77f-d93a648df0a7",10040              "parentUUID": null,10041              "isHook": false,10042              "skipped": true10043            },10044            {10045              "title": "Collection admin can transfer owned token",10046              "fullTitle": "Integration Test Transfer(recipient, collection_id, item_id, value) Collection admin can transfer owned token",10047              "timedOut": false,10048              "duration": 0,10049              "state": null,10050              "speed": null,10051              "pass": false,10052              "fail": false,10053              "pending": false,10054              "context": null,10055              "code": "await substrate_api_1.default(async () => {\n    const Alice = privateKey_1.default('//Alice');\n    const Bob = privateKey_1.default('//Bob');\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, nftCollectionId, Bob);\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Bob, nftCollectionId, 'NFT', Bob.address);\n    await helpers_1.transferExpectSuccess(nftCollectionId, newNftTokenId, Bob, Alice, 1, 'NFT');\n    // fungible\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, fungibleCollectionId, Bob);\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible', Bob.address);\n    await helpers_1.transferExpectSuccess(fungibleCollectionId, newFungibleTokenId, Bob, Alice, 1, 'Fungible');\n    // reFungible\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    await helpers_1.addCollectionAdminExpectSuccess(Alice, reFungibleCollectionId, Bob);\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Bob, reFungibleCollectionId, 'ReFungible', Bob.address);\n    await helpers_1.transferExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice, 100, 'ReFungible');\n});",10056              "err": {},10057              "uuid": "fd485e0b-791b-41be-b8f6-67d6d90a2832",10058              "parentUUID": null,10059              "isHook": false,10060              "skipped": true10061            }10062          ],10063          "suites": [],10064          "passes": [],10065          "failures": [],10066          "pending": [],10067          "skipped": [10068            "ff5f089a-e6f0-4da1-9411-b0d0808e8007",10069            "c05ffbdf-f157-4424-8a79-abaf1629a4b9",10070            "fe4480f5-d2ee-460a-a77f-d93a648df0a7",10071            "fd485e0b-791b-41be-b8f6-67d6d90a2832"10072          ],10073          "duration": 0,10074          "root": false,10075          "rootEmpty": false,10076          "_timeout": 999999910077        },10078        {10079          "uuid": "6a098daf-9cfd-4d12-a0d0-dce0047c4b5a",10080          "title": "Negative Integration Test Transfer(recipient, collection_id, item_id, value)",10081          "fullFile": "/nft_parachain/tests/src/transfer.test.ts",10082          "file": "/src/transfer.test.ts",10083          "beforeHooks": [10084            {10085              "title": "\"before all\" hook",10086              "fullTitle": "Negative Integration Test Transfer(recipient, collection_id, item_id, value) \"before all\" hook",10087              "timedOut": false,10088              "duration": 0,10089              "state": null,10090              "speed": null,10091              "pass": false,10092              "fail": false,10093              "pending": false,10094              "context": null,10095              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Charlie = privateKey_1.default('//Charlie');\n});",10096              "err": {},10097              "uuid": "f1154bc2-86d1-41f5-a635-80a9ea654c9c",10098              "parentUUID": null,10099              "isHook": true,10100              "skipped": false10101            }10102          ],10103          "afterHooks": [],10104          "tests": [10105            {10106              "title": "Transfer with not existed collection_id",10107              "fullTitle": "Negative Integration Test Transfer(recipient, collection_id, item_id, value) Transfer with not existed collection_id",10108              "timedOut": false,10109              "duration": 0,10110              "state": null,10111              "speed": null,10112              "pass": false,10113              "fail": false,10114              "pending": false,10115              "context": null,10116              "code": "await substrate_api_1.default(async (api) => {\n    // nft\n    const nftCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.transferExpectFailure(nftCollectionCount + 1, 1, Alice, Bob, 1);\n    // fungible\n    const fungibleCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.transferExpectFailure(fungibleCollectionCount + 1, 1, Alice, Bob, 1);\n    // reFungible\n    const reFungibleCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.transferExpectFailure(reFungibleCollectionCount + 1, 1, Alice, Bob, 1);\n});",10117              "err": {},10118              "uuid": "c33a248a-96db-4899-a133-4b0b38537e2f",10119              "parentUUID": null,10120              "isHook": false,10121              "skipped": true10122            },10123            {10124              "title": "Transfer with deleted collection_id",10125              "fullTitle": "Negative Integration Test Transfer(recipient, collection_id, item_id, value) Transfer with deleted collection_id",10126              "timedOut": false,10127              "duration": 0,10128              "state": null,10129              "speed": null,10130              "pass": false,10131              "fail": false,10132              "pending": false,10133              "context": null,10134              "code": "// nft\nconst nftCollectionId = await helpers_1.createCollectionExpectSuccess();\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\nawait helpers_1.destroyCollectionExpectSuccess(nftCollectionId);\nawait helpers_1.transferExpectFailure(nftCollectionId, newNftTokenId, Alice, Bob, 1);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\nawait helpers_1.destroyCollectionExpectSuccess(fungibleCollectionId);\nawait helpers_1.transferExpectFailure(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 1);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nconst newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\nawait helpers_1.destroyCollectionExpectSuccess(reFungibleCollectionId);\nawait helpers_1.transferExpectFailure(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 1);",10135              "err": {},10136              "uuid": "287947b2-8b40-4497-a405-e5912ca3021c",10137              "parentUUID": null,10138              "isHook": false,10139              "skipped": true10140            },10141            {10142              "title": "Transfer with not existed item_id",10143              "fullTitle": "Negative Integration Test Transfer(recipient, collection_id, item_id, value) Transfer with not existed item_id",10144              "timedOut": false,10145              "duration": 0,10146              "state": null,10147              "speed": null,10148              "pass": false,10149              "fail": false,10150              "pending": false,10151              "context": null,10152              "code": "// nft\nconst nftCollectionId = await helpers_1.createCollectionExpectSuccess();\nawait helpers_1.transferExpectFailure(nftCollectionId, 2, Alice, Bob, 1);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nawait helpers_1.transferExpectFailure(fungibleCollectionId, 2, Alice, Bob, 1);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nawait helpers_1.transferExpectFailure(reFungibleCollectionId, 2, Alice, Bob, 1);",10153              "err": {},10154              "uuid": "29c0307e-a6ae-4634-9f53-df09beed96ea",10155              "parentUUID": null,10156              "isHook": false,10157              "skipped": true10158            },10159            {10160              "title": "Transfer with deleted item_id",10161              "fullTitle": "Negative Integration Test Transfer(recipient, collection_id, item_id, value) Transfer with deleted item_id",10162              "timedOut": false,10163              "duration": 0,10164              "state": null,10165              "speed": null,10166              "pass": false,10167              "fail": false,10168              "pending": false,10169              "context": null,10170              "code": "// nft\nconst nftCollectionId = await helpers_1.createCollectionExpectSuccess();\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\nawait helpers_1.burnItemExpectSuccess(Alice, nftCollectionId, newNftTokenId, 1);\nawait helpers_1.transferExpectFailure(nftCollectionId, newNftTokenId, Alice, Bob, 1);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\nawait helpers_1.burnItemExpectSuccess(Alice, fungibleCollectionId, newFungibleTokenId, 10);\nawait helpers_1.transferExpectFailure(fungibleCollectionId, newFungibleTokenId, Alice, Bob, 1);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nconst newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\nawait helpers_1.burnItemExpectSuccess(Alice, reFungibleCollectionId, newReFungibleTokenId, 1);\nawait helpers_1.transferExpectFailure(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 1);",10171              "err": {},10172              "uuid": "1cf9d8b1-7447-465a-9660-fd7c2ed5bf99",10173              "parentUUID": null,10174              "isHook": false,10175              "skipped": true10176            },10177            {10178              "title": "Transfer with recipient that is not owner",10179              "fullTitle": "Negative Integration Test Transfer(recipient, collection_id, item_id, value) Transfer with recipient that is not owner",10180              "timedOut": false,10181              "duration": 0,10182              "state": null,10183              "speed": null,10184              "pass": false,10185              "fail": false,10186              "pending": false,10187              "context": null,10188              "code": "// nft\nconst nftCollectionId = await helpers_1.createCollectionExpectSuccess();\nconst newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\nawait helpers_1.transferExpectFailure(nftCollectionId, newNftTokenId, Charlie, Bob, 1);\n// fungible\nconst fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\nconst newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\nawait helpers_1.transferExpectFailure(fungibleCollectionId, newFungibleTokenId, Charlie, Bob, 1);\n// reFungible\nconst reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\nconst newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\nawait helpers_1.transferExpectFailure(reFungibleCollectionId, newReFungibleTokenId, Charlie, Bob, 1);",10189              "err": {},10190              "uuid": "0e1fedb7-69b8-4481-b42b-8cc79765c4c2",10191              "parentUUID": null,10192              "isHook": false,10193              "skipped": true10194            }10195          ],10196          "suites": [],10197          "passes": [],10198          "failures": [],10199          "pending": [],10200          "skipped": [10201            "c33a248a-96db-4899-a133-4b0b38537e2f",10202            "287947b2-8b40-4497-a405-e5912ca3021c",10203            "29c0307e-a6ae-4634-9f53-df09beed96ea",10204            "1cf9d8b1-7447-465a-9660-fd7c2ed5bf99",10205            "0e1fedb7-69b8-4481-b42b-8cc79765c4c2"10206          ],10207          "duration": 0,10208          "root": false,10209          "rootEmpty": false,10210          "_timeout": 999999910211        },10212        {10213          "uuid": "0410e3f4-f36a-43d0-8d60-8b2e0be7c8d1",10214          "title": "Integration Test transferFrom(from, recipient, collection_id, item_id, value):",10215          "fullFile": "/nft_parachain/tests/src/transferFrom.test.ts",10216          "file": "/src/transferFrom.test.ts",10217          "beforeHooks": [10218            {10219              "title": "\"before all\" hook",10220              "fullTitle": "Integration Test transferFrom(from, recipient, collection_id, item_id, value): \"before all\" hook",10221              "timedOut": false,10222              "duration": 0,10223              "state": null,10224              "speed": null,10225              "pass": false,10226              "fail": false,10227              "pending": false,10228              "context": null,10229              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Charlie = privateKey_1.default('//Charlie');\n});",10230              "err": {},10231              "uuid": "a7536c7c-5474-4888-afc7-521bef185f82",10232              "parentUUID": null,10233              "isHook": true,10234              "skipped": false10235            }10236          ],10237          "afterHooks": [],10238          "tests": [10239            {10240              "title": "Execute the extrinsic and check nftItemList - owner of token",10241              "fullTitle": "Integration Test transferFrom(from, recipient, collection_id, item_id, value): Execute the extrinsic and check nftItemList - owner of token",10242              "timedOut": false,10243              "duration": 0,10244              "state": null,10245              "speed": null,10246              "pass": false,10247              "fail": false,10248              "pending": false,10249              "context": null,10250              "code": "await substrate_api_1.default(async () => {\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    await helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectSuccess(nftCollectionId, newNftTokenId, Bob, Alice, Charlie, 1, 'NFT');\n    // fungible\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\n    await helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectSuccess(fungibleCollectionId, newFungibleTokenId, Bob, Alice, Charlie, 1, 'Fungible');\n    // reFungible\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\n    await helpers_1.approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob, 100);\n    await helpers_1.transferFromExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice, Charlie, 100, 'ReFungible');\n});",10251              "err": {},10252              "uuid": "404522b7-6b2c-4cab-a92f-51701c8d5e56",10253              "parentUUID": null,10254              "isHook": false,10255              "skipped": true10256            },10257            {10258              "title": "Should reduce allowance if value is big",10259              "fullTitle": "Integration Test transferFrom(from, recipient, collection_id, item_id, value): Should reduce allowance if value is big",10260              "timedOut": false,10261              "duration": 0,10262              "state": null,10263              "speed": null,10264              "pass": false,10265              "fail": false,10266              "pending": false,10267              "context": null,10268              "code": "await substrate_api_1.default(async () => {\n    const alice = privateKey_1.default('//Alice');\n    const bob = privateKey_1.default('//Bob');\n    const charlie = privateKey_1.default('//Charlie');\n    // fungible\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createFungibleItemExpectSuccess(alice, fungibleCollectionId, { Value: 500000n });\n    await helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, alice, bob, 500000n);\n    await helpers_1.transferFromExpectSuccess(fungibleCollectionId, newFungibleTokenId, bob, alice, charlie, 500000n, 'Fungible');\n    expect((await helpers_1.getAllowance(fungibleCollectionId, newFungibleTokenId, alice.address, bob.address)).toString()).to.equal('0');\n});",10269              "err": {},10270              "uuid": "67cc81b1-6b4d-4368-a5a8-4f53f3ed0401",10271              "parentUUID": null,10272              "isHook": false,10273              "skipped": true10274            },10275            {10276              "title": "can be called by collection owner on non-owned item when OwnerCanTransfer == true",10277              "fullTitle": "Integration Test transferFrom(from, recipient, collection_id, item_id, value): can be called by collection owner on non-owned item when OwnerCanTransfer == true",10278              "timedOut": false,10279              "duration": 0,10280              "state": null,10281              "speed": null,10282              "pass": false,10283              "fail": false,10284              "pending": false,10285              "context": null,10286              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nconst itemId = await helpers_1.createItemExpectSuccess(Alice, collectionId, 'NFT', Bob.address);\nawait helpers_1.transferFromExpectSuccess(collectionId, itemId, Alice, Bob, Charlie);",10287              "err": {},10288              "uuid": "f796b3fb-c283-49e4-af9d-a0d155adb5b9",10289              "parentUUID": null,10290              "isHook": false,10291              "skipped": true10292            }10293          ],10294          "suites": [],10295          "passes": [],10296          "failures": [],10297          "pending": [],10298          "skipped": [10299            "404522b7-6b2c-4cab-a92f-51701c8d5e56",10300            "67cc81b1-6b4d-4368-a5a8-4f53f3ed0401",10301            "f796b3fb-c283-49e4-af9d-a0d155adb5b9"10302          ],10303          "duration": 0,10304          "root": false,10305          "rootEmpty": false,10306          "_timeout": 999999910307        },10308        {10309          "uuid": "da6c9c5d-e934-43c6-b4f5-d81ee5822d3d",10310          "title": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value):",10311          "fullFile": "/nft_parachain/tests/src/transferFrom.test.ts",10312          "file": "/src/transferFrom.test.ts",10313          "beforeHooks": [10314            {10315              "title": "\"before all\" hook",10316              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): \"before all\" hook",10317              "timedOut": false,10318              "duration": 0,10319              "state": null,10320              "speed": null,10321              "pass": false,10322              "fail": false,10323              "pending": false,10324              "context": null,10325              "code": "await substrate_api_1.default(async () => {\n    Alice = privateKey_1.default('//Alice');\n    Bob = privateKey_1.default('//Bob');\n    Charlie = privateKey_1.default('//Charlie');\n});",10326              "err": {},10327              "uuid": "16c7cbf7-e6c2-4528-9716-20bce579c2c0",10328              "parentUUID": null,10329              "isHook": true,10330              "skipped": false10331            }10332          ],10333          "afterHooks": [],10334          "tests": [10335            {10336              "title": "transferFrom for a collection that does not exist",10337              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom for a collection that does not exist",10338              "timedOut": false,10339              "duration": 0,10340              "state": null,10341              "speed": null,10342              "pass": false,10343              "fail": false,10344              "pending": false,10345              "context": null,10346              "code": "await substrate_api_1.default(async (api) => {\n    // nft\n    const nftCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.approveExpectFail(nftCollectionCount + 1, 1, Alice, Bob);\n    await helpers_1.transferFromExpectFail(nftCollectionCount + 1, 1, Bob, Alice, Charlie, 1);\n    // fungible\n    const fungibleCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.approveExpectFail(fungibleCollectionCount + 1, 1, Alice, Bob);\n    await helpers_1.transferFromExpectFail(fungibleCollectionCount + 1, 1, Bob, Alice, Charlie, 1);\n    // reFungible\n    const reFungibleCollectionCount = await api.query.nft.createdCollectionCount();\n    await helpers_1.approveExpectFail(reFungibleCollectionCount + 1, 1, Alice, Bob);\n    await helpers_1.transferFromExpectFail(reFungibleCollectionCount + 1, 1, Bob, Alice, Charlie, 1);\n});",10347              "err": {},10348              "uuid": "a5d44056-808b-4e47-ade8-bd1895df0d4a",10349              "parentUUID": null,10350              "isHook": false,10351              "skipped": true10352            },10353            {10354              "title": "transferFrom for not approved address",10355              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom for not approved address",10356              "timedOut": false,10357              "duration": 0,10358              "state": null,10359              "speed": null,10360              "pass": false,10361              "fail": false,10362              "pending": false,10363              "context": null,10364              "code": "await substrate_api_1.default(async () => {\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    await helpers_1.transferFromExpectFail(nftCollectionId, newNftTokenId, Bob, Alice, Charlie, 1);\n    // fungible\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\n    await helpers_1.transferFromExpectFail(fungibleCollectionId, newFungibleTokenId, Bob, Alice, Charlie, 1);\n    // reFungible\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\n    await helpers_1.transferFromExpectFail(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice, Charlie, 1);\n});",10365              "err": {},10366              "uuid": "4b7c8080-6427-4e7e-afa5-0bf79d02c87b",10367              "parentUUID": null,10368              "isHook": false,10369              "skipped": true10370            },10371            {10372              "title": "transferFrom incorrect token count",10373              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom incorrect token count",10374              "timedOut": false,10375              "duration": 0,10376              "state": null,10377              "speed": null,10378              "pass": false,10379              "fail": false,10380              "pending": false,10381              "context": null,10382              "code": "await substrate_api_1.default(async () => {\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    await helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectFail(nftCollectionId, newNftTokenId, Bob, Alice, Charlie, 2);\n    // fungible\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\n    await helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectFail(fungibleCollectionId, newFungibleTokenId, Bob, Alice, Charlie, 2);\n    // reFungible\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\n    await helpers_1.approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectFail(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice, Charlie, 2);\n});",10383              "err": {},10384              "uuid": "ec426f3f-098a-4625-81db-114d31d1a074",10385              "parentUUID": null,10386              "isHook": false,10387              "skipped": true10388            },10389            {10390              "title": "execute transferFrom from account that is not owner of collection",10391              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): execute transferFrom from account that is not owner of collection",10392              "timedOut": false,10393              "duration": 0,10394              "state": null,10395              "speed": null,10396              "pass": false,10397              "fail": false,10398              "pending": false,10399              "context": null,10400              "code": "await substrate_api_1.default(async () => {\n    const Dave = privateKey_1.default('//Dave');\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    try {\n        await helpers_1.approveExpectFail(nftCollectionId, newNftTokenId, Dave, Bob);\n        await helpers_1.transferFromExpectFail(nftCollectionId, newNftTokenId, Dave, Alice, Charlie, 1);\n    }\n    catch (e) {\n        // tslint:disable-next-line:no-unused-expression\n        expect(e).to.be.exist;\n    }\n    // await transferFromExpectFail(nftCollectionId, newNftTokenId, Dave, Alice, Charlie, 1);\n    // fungible\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\n    try {\n        await helpers_1.approveExpectFail(fungibleCollectionId, newFungibleTokenId, Dave, Bob);\n        await helpers_1.transferFromExpectFail(fungibleCollectionId, newFungibleTokenId, Dave, Alice, Charlie, 1);\n    }\n    catch (e) {\n        // tslint:disable-next-line:no-unused-expression\n        expect(e).to.be.exist;\n    }\n    // reFungible\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\n    try {\n        await helpers_1.approveExpectFail(reFungibleCollectionId, newReFungibleTokenId, Dave, Bob);\n        await helpers_1.transferFromExpectFail(reFungibleCollectionId, newReFungibleTokenId, Dave, Alice, Charlie, 1);\n    }\n    catch (e) {\n        // tslint:disable-next-line:no-unused-expression\n        expect(e).to.be.exist;\n    }\n});",10401              "err": {},10402              "uuid": "3f42770c-0612-4bda-9549-e6fd8f5ddc02",10403              "parentUUID": null,10404              "isHook": false,10405              "skipped": true10406            },10407            {10408              "title": "transferFrom burnt token before approve NFT",10409              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom burnt token before approve NFT",10410              "timedOut": false,10411              "duration": 0,10412              "state": null,10413              "speed": null,10414              "pass": false,10415              "fail": false,10416              "pending": false,10417              "context": null,10418              "code": "await substrate_api_1.default(async () => {\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    await helpers_1.burnItemExpectSuccess(Alice, nftCollectionId, newNftTokenId, 1);\n    await helpers_1.approveExpectFail(nftCollectionId, newNftTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectFail(nftCollectionId, newNftTokenId, Bob, Alice, Charlie, 1);\n});",10419              "err": {},10420              "uuid": "f2ba3a52-2534-41d8-9030-8cb7882140ef",10421              "parentUUID": null,10422              "isHook": false,10423              "skipped": true10424            },10425            {10426              "title": "transferFrom burnt token before approve Fungible",10427              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom burnt token before approve Fungible",10428              "timedOut": false,10429              "duration": 0,10430              "state": null,10431              "speed": null,10432              "pass": false,10433              "fail": false,10434              "pending": false,10435              "context": null,10436              "code": "await substrate_api_1.default(async () => {\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\n    await helpers_1.burnItemExpectSuccess(Alice, fungibleCollectionId, 1, 10);\n    await helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectFail(fungibleCollectionId, newFungibleTokenId, Bob, Alice, Charlie, 1);\n});",10437              "err": {},10438              "uuid": "d50d2028-3c93-4588-a866-c4f15bddb4ca",10439              "parentUUID": null,10440              "isHook": false,10441              "skipped": true10442            },10443            {10444              "title": "transferFrom burnt token before approve ReFungible",10445              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom burnt token before approve ReFungible",10446              "timedOut": false,10447              "duration": 0,10448              "state": null,10449              "speed": null,10450              "pass": false,10451              "fail": false,10452              "pending": false,10453              "context": null,10454              "code": "await substrate_api_1.default(async () => {\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\n    await helpers_1.burnItemExpectSuccess(Alice, reFungibleCollectionId, newReFungibleTokenId, 1);\n    await helpers_1.approveExpectFail(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);\n    await helpers_1.transferFromExpectFail(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice, Charlie, 1);\n});",10455              "err": {},10456              "uuid": "1b9fb2ec-9327-436e-b5aa-2331c5e7af30",10457              "parentUUID": null,10458              "isHook": false,10459              "skipped": true10460            },10461            {10462              "title": "transferFrom burnt token after approve NFT",10463              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom burnt token after approve NFT",10464              "timedOut": false,10465              "duration": 0,10466              "state": null,10467              "speed": null,10468              "pass": false,10469              "fail": false,10470              "pending": false,10471              "context": null,10472              "code": "await substrate_api_1.default(async () => {\n    // nft\n    const nftCollectionId = await helpers_1.createCollectionExpectSuccess();\n    const newNftTokenId = await helpers_1.createItemExpectSuccess(Alice, nftCollectionId, 'NFT');\n    await helpers_1.approveExpectSuccess(nftCollectionId, newNftTokenId, Alice, Bob);\n    await helpers_1.burnItemExpectSuccess(Alice, nftCollectionId, newNftTokenId, 1);\n    await helpers_1.transferFromExpectFail(nftCollectionId, newNftTokenId, Bob, Alice, Charlie, 1);\n});",10473              "err": {},10474              "uuid": "7321a1d8-58d6-40f8-a8f6-64a521b2b004",10475              "parentUUID": null,10476              "isHook": false,10477              "skipped": true10478            },10479            {10480              "title": "transferFrom burnt token after approve Fungible",10481              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom burnt token after approve Fungible",10482              "timedOut": false,10483              "duration": 0,10484              "state": null,10485              "speed": null,10486              "pass": false,10487              "fail": false,10488              "pending": false,10489              "context": null,10490              "code": "await substrate_api_1.default(async () => {\n    const fungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'Fungible', decimalPoints: 0 } });\n    const newFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, fungibleCollectionId, 'Fungible');\n    await helpers_1.approveExpectSuccess(fungibleCollectionId, newFungibleTokenId, Alice, Bob);\n    await helpers_1.burnItemExpectSuccess(Alice, fungibleCollectionId, 1, 10);\n    await helpers_1.transferFromExpectFail(fungibleCollectionId, newFungibleTokenId, Bob, Alice, Charlie, 1);\n});",10491              "err": {},10492              "uuid": "9e0127f4-4609-415d-8aed-07f00745e523",10493              "parentUUID": null,10494              "isHook": false,10495              "skipped": true10496            },10497            {10498              "title": "transferFrom burnt token after approve ReFungible",10499              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): transferFrom burnt token after approve ReFungible",10500              "timedOut": false,10501              "duration": 0,10502              "state": null,10503              "speed": null,10504              "pass": false,10505              "fail": false,10506              "pending": false,10507              "context": null,10508              "code": "await substrate_api_1.default(async () => {\n    const reFungibleCollectionId = await helpers_1.createCollectionExpectSuccess({ mode: { type: 'ReFungible' } });\n    const newReFungibleTokenId = await helpers_1.createItemExpectSuccess(Alice, reFungibleCollectionId, 'ReFungible');\n    await helpers_1.approveExpectSuccess(reFungibleCollectionId, newReFungibleTokenId, Alice, Bob);\n    await helpers_1.burnItemExpectSuccess(Alice, reFungibleCollectionId, newReFungibleTokenId, 1);\n    await helpers_1.transferFromExpectFail(reFungibleCollectionId, newReFungibleTokenId, Bob, Alice, Charlie, 1);\n});",10509              "err": {},10510              "uuid": "245c015f-866e-4a94-947f-24831361053c",10511              "parentUUID": null,10512              "isHook": false,10513              "skipped": true10514            },10515            {10516              "title": "fails when called by collection owner on non-owned item when OwnerCanTransfer == false",10517              "fullTitle": "Negative Integration Test transferFrom(from, recipient, collection_id, item_id, value): fails when called by collection owner on non-owned item when OwnerCanTransfer == false",10518              "timedOut": false,10519              "duration": 0,10520              "state": null,10521              "speed": null,10522              "pass": false,10523              "fail": false,10524              "pending": false,10525              "context": null,10526              "code": "const collectionId = await helpers_1.createCollectionExpectSuccess();\nconst itemId = await helpers_1.createItemExpectSuccess(Alice, collectionId, 'NFT', Bob.address);\nawait helpers_1.setCollectionLimitsExpectSuccess(Alice, collectionId, { OwnerCanTransfer: false });\nawait helpers_1.transferFromExpectFail(collectionId, itemId, Alice, Bob, Charlie);",10527              "err": {},10528              "uuid": "1ce5816b-f248-446a-80e8-a5cf15efd54f",10529              "parentUUID": null,10530              "isHook": false,10531              "skipped": true10532            }10533          ],10534          "suites": [],10535          "passes": [],10536          "failures": [],10537          "pending": [],10538          "skipped": [10539            "a5d44056-808b-4e47-ade8-bd1895df0d4a",10540            "4b7c8080-6427-4e7e-afa5-0bf79d02c87b",10541            "ec426f3f-098a-4625-81db-114d31d1a074",10542            "3f42770c-0612-4bda-9549-e6fd8f5ddc02",10543            "f2ba3a52-2534-41d8-9030-8cb7882140ef",10544            "d50d2028-3c93-4588-a866-c4f15bddb4ca",10545            "1b9fb2ec-9327-436e-b5aa-2331c5e7af30",10546            "7321a1d8-58d6-40f8-a8f6-64a521b2b004",10547            "9e0127f4-4609-415d-8aed-07f00745e523",10548            "245c015f-866e-4a94-947f-24831361053c",10549            "1ce5816b-f248-446a-80e8-a5cf15efd54f"10550          ],10551          "duration": 0,10552          "root": false,10553          "rootEmpty": false,10554          "_timeout": 999999910555        }10556      ],10557      "passes": [],10558      "failures": [],10559      "pending": [],10560      "skipped": [],10561      "duration": 0,10562      "root": true,10563      "rootEmpty": true,10564      "_timeout": 999999910565    }10566  ],10567  "meta": {10568    "mocha": {10569      "version": "8.4.0"10570    },10571    "mochawesome": {10572      "options": {10573        "quiet": false,10574        "reportFilename": "mochawesome",10575        "saveHtml": true,10576        "saveJson": true,10577        "consoleReporter": "spec",10578        "useInlineDiffs": false,10579        "code": true10580      },10581      "version": "6.2.2"10582    },10583    "marge": {10584      "options": null,10585      "version": "5.2.0"10586    }10587  }10588}