1234567891011121314151617import {itSub, usingPlaygrounds, expect} from './util';181920const requiredPallets = [21 'balances',22 'common',23 'randomnesscollectiveflip',24 'timestamp',25 'transactionpayment',26 'treasury',27 'structure',28 'system',29 'vesting',30 'parachainsystem',31 'parachaininfo',32 'evm',33 'evmcodersubstrate',34 'evmcontracthelpers',35 'evmmigration',36 'evmtransactionpayment',37 'ethereum',38 'fungible',39 'xcmpqueue',40 'polkadotxcm',41 'cumulusxcm',42 'dmpqueue',43 'inflation',44 'unique',45 'nonfungible',46 'charging',47 'configuration',48 'tokens',49 'xtokens',50];5152const testPallets = [53 'testutils',54];555657const consensusPallets = [58 'sudo',59 'aura',60 'auraext',61];6263describe('Pallet presence', () => {64 before(async () => {65 await usingPlaygrounds(async helper => {66 const chain = await helper.callRpc('api.rpc.system.chain', []);6768 const refungible = 'refungible';69 70 const foreignAssets = 'foreignassets';71 const rmrkPallets = ['rmrkcore', 'rmrkequip'];72 const appPromotion = 'apppromotion';7374 if (chain.eq('OPAL by UNIQUE')) {75 requiredPallets.push(76 refungible,77 78 foreignAssets,79 appPromotion,80 ...rmrkPallets,81 );82 } else if (chain.eq('QUARTZ by UNIQUE')) {83 requiredPallets.push(refungible);84 } else if (chain.eq('UNIQUE')) {85 86 }87 });88 });8990 itSub('Required pallets are present', async ({helper}) => {91 expect(helper.fetchAllPalletNames()).to.contain.members([...requiredPallets]);92 });9394 itSub('Test pallets are present', async ({helper}) => {95 expect(helper.fetchAllPalletNames()).to.contain.members([...testPallets]);96 });9798 itSub('Governance and consensus pallets are present', async ({helper}) => {99 expect(helper.fetchAllPalletNames()).to.contain.members([...consensusPallets]);100 });101102 itSub('No extra pallets are included', async ({helper}) => {103 expect(helper.fetchAllPalletNames().sort()).to.be.deep.equal([...requiredPallets, ...consensusPallets].sort());104 });105});