--- a/Cargo.lock +++ b/Cargo.lock @@ -6711,24 +6711,6 @@ ] [[package]] -name = "pallet-unique-scheduler-v2" -version = "0.1.0" -dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", - "log", - "pallet-preimage", - "parity-scale-codec 3.2.1", - "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "substrate-test-utils", -] - -[[package]] name = "pallet-utility" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.29#cc370aa61e15c18d23a2f686b812fd576a630afe" --- a/tests/src/eth/base.test.ts +++ b/tests/src/eth/base.test.ts @@ -14,8 +14,6 @@ // You should have received a copy of the GNU General Public License // along with Unique Network. If not, see . -import {Contract} from 'web3-eth-contract'; - import {IKeyringPair} from '@polkadot/types/types'; import {EthUniqueHelper, itEth, usingEthPlaygrounds, expect} from './util'; @@ -44,7 +42,7 @@ from: userA, to: userB, value: '1000000', - gas: helper.eth.DEFAULT_GAS + gas: helper.eth.DEFAULT_GAS, })); const balanceB = await helper.balance.getEthereum(userB); expect(cost - balanceB < BigInt(0.2 * Number(helper.balance.getOneTokenNominal()))).to.be.true; @@ -93,7 +91,7 @@ const donor = await privateKey({filename: __filename}); const [alice] = await helper.arrange.createAccounts([10n], donor); ({collectionId: simpleNftCollectionId} = await helper.nft.mintCollection(alice, {name: 'test', description: 'test', tokenPrefix: 'test'})); - minter = helper.eth.createAccount(); + minter = await helper.eth.createAccountWithBalance(donor); ({collectionId: erc721MetadataCompatibleNftCollectionId} = await helper.eth.createERC721MetadataCompatibleNFTCollection(minter, 'n', 'd', 'p', BASE_URI)); }); }); --- a/tests/src/eth/collectionProperties.test.ts +++ b/tests/src/eth/collectionProperties.test.ts @@ -18,7 +18,6 @@ import {Pallets} from '../util'; import {IProperty, ITokenPropertyPermission} from '../util/playgrounds/types'; import {IKeyringPair} from '@polkadot/types/types'; -import {Contract} from 'web3-eth-contract'; describe('EVM collection properties', () => { let donor: IKeyringPair; @@ -87,20 +86,20 @@ const caller = await helper.eth.createAccountWithBalance(donor); const bruh = await helper.eth.createAccountWithBalance(donor); - const BASE_URI = 'base/' - const SUFFIX = 'suffix1' - const URI = 'uri1' + const BASE_URI = 'base/'; + const SUFFIX = 'suffix1'; + const URI = 'uri1'; const collectionHelpers = helper.ethNativeContract.collectionHelpers(caller); - const creatorMethod = mode === 'rft' ? 'createRFTCollection' : 'createNFTCollection' + const creatorMethod = mode === 'rft' ? 'createRFTCollection' : 'createNFTCollection'; - const {collectionId, collectionAddress} = await helper.eth[creatorMethod](caller, 'n', 'd', 'p') + const {collectionId, collectionAddress} = await helper.eth[creatorMethod](caller, 'n', 'd', 'p'); const contract = helper.ethNativeContract.collectionById(collectionId, mode, caller); await contract.methods.addCollectionAdmin(bruh).send(); // to check that admin will work too - const collection1 = await helper.nft.getCollectionObject(collectionId); - const data1 = await collection1.getData() + const collection1 = helper.nft.getCollectionObject(collectionId); + const data1 = await collection1.getData(); expect(data1?.raw.flags.erc721metadata).to.be.false; expect(await contract.methods.supportsInterface('0x5b5e139f').call()).to.be.false; @@ -109,37 +108,37 @@ expect(await contract.methods.supportsInterface('0x5b5e139f').call()).to.be.true; - const collection2 = await helper.nft.getCollectionObject(collectionId); - const data2 = await collection2.getData() + const collection2 = helper.nft.getCollectionObject(collectionId); + const data2 = await collection2.getData(); expect(data2?.raw.flags.erc721metadata).to.be.true; - const TPPs = data2?.raw.tokenPropertyPermissions - expect(TPPs?.length).to.equal(2); + const propertyPermissions = data2?.raw.tokenPropertyPermissions; + expect(propertyPermissions?.length).to.equal(2); - expect(TPPs.find((tpp: ITokenPropertyPermission) => { - return tpp.key === "URI" && tpp.permission.mutable && tpp.permission.collectionAdmin && !tpp.permission.tokenOwner - })).to.be.not.null + expect(propertyPermissions.find((tpp: ITokenPropertyPermission) => { + return tpp.key === 'URI' && tpp.permission.mutable && tpp.permission.collectionAdmin && !tpp.permission.tokenOwner; + })).to.be.not.null; - expect(TPPs.find((tpp: ITokenPropertyPermission) => { - return tpp.key === "URISuffix" && tpp.permission.mutable && tpp.permission.collectionAdmin && !tpp.permission.tokenOwner - })).to.be.not.null + expect(propertyPermissions.find((tpp: ITokenPropertyPermission) => { + return tpp.key === 'URISuffix' && tpp.permission.mutable && tpp.permission.collectionAdmin && !tpp.permission.tokenOwner; + })).to.be.not.null; expect(data2?.raw.properties?.find((property: IProperty) => { - return property.key === "baseURI" && property.value === BASE_URI - })).to.be.not.null + return property.key === 'baseURI' && property.value === BASE_URI; + })).to.be.not.null; const token1Result = await contract.methods.mint(bruh).send(); const tokenId1 = token1Result.events.Transfer.returnValues.tokenId; expect(await contract.methods.tokenURI(tokenId1).call()).to.equal(BASE_URI); - await contract.methods.setProperty(tokenId1, "URISuffix", Buffer.from(SUFFIX)).send(); + await contract.methods.setProperty(tokenId1, 'URISuffix', Buffer.from(SUFFIX)).send(); expect(await contract.methods.tokenURI(tokenId1).call()).to.equal(BASE_URI + SUFFIX); - await contract.methods.setProperty(tokenId1, "URI", Buffer.from(URI)).send(); + await contract.methods.setProperty(tokenId1, 'URI', Buffer.from(URI)).send(); expect(await contract.methods.tokenURI(tokenId1).call()).to.equal(URI); - await contract.methods.deleteProperty(tokenId1, "URI").send(); + await contract.methods.deleteProperty(tokenId1, 'URI').send(); expect(await contract.methods.tokenURI(tokenId1).call()).to.equal(BASE_URI + SUFFIX); const token2Result = await contract.methods.mintWithTokenURI(bruh, URI).send(); @@ -147,12 +146,12 @@ expect(await contract.methods.tokenURI(tokenId2).call()).to.equal(URI); - await contract.methods.deleteProperty(tokenId2, "URI").send(); + await contract.methods.deleteProperty(tokenId2, 'URI').send(); expect(await contract.methods.tokenURI(tokenId2).call()).to.equal(BASE_URI); - await contract.methods.setProperty(tokenId2, "URISuffix", Buffer.from(SUFFIX)).send(); + await contract.methods.setProperty(tokenId2, 'URISuffix', Buffer.from(SUFFIX)).send(); expect(await contract.methods.tokenURI(tokenId2).call()).to.equal(BASE_URI + SUFFIX); - } + }; itEth('ERC721Metadata property can be set for NFT collection', async({helper}) => { await checkERC721Metadata(helper, 'nft'); --- a/tests/src/eth/collectionSponsoring.test.ts +++ b/tests/src/eth/collectionSponsoring.test.ts @@ -247,7 +247,7 @@ const userCollectionEvm = helper.ethNativeContract.collection(collectionAddress, 'nft', user); - let result = await userCollectionEvm.methods.mintWithTokenURI(user, 'Test URI',).send(); + const result = await userCollectionEvm.methods.mintWithTokenURI(user, 'Test URI').send(); const tokenId = result.events.Transfer.returnValues.tokenId; const events = helper.eth.normalizeEvents(result.events); --- a/tests/src/eth/proxy/nonFungibleProxy.test.ts +++ b/tests/src/eth/proxy/nonFungibleProxy.test.ts @@ -111,7 +111,7 @@ await collectionEvmOwned.methods.addCollectionAdmin(contract.options.address).send(); { - const nextTokenId = await contract.methods.nextTokenId().call() + const nextTokenId = await contract.methods.nextTokenId().call(); const result = await contract.methods.mintWithTokenURI(receiver, nextTokenId, 'Test URI').send({from: caller}); const tokenId = result.events.Transfer.returnValues.tokenId; expect(tokenId).to.be.equal('1'); --- a/tests/src/eth/util/index.ts +++ b/tests/src/eth/util/index.ts @@ -14,7 +14,7 @@ import chai from 'chai'; import chaiAsPromised from 'chai-as-promised'; import chaiLike from 'chai-like'; -import {getTestSeed, requirePalletsOrSkip} from '../../util'; +import {getTestSeed, MINIMUM_DONOR_FUND, requirePalletsOrSkip} from '../../util'; chai.use(chaiAsPromised); chai.use(chaiLike); @@ -43,7 +43,7 @@ else { const actualSeed = getTestSeed(seed.filename); let account = helper.util.fromSeed(actualSeed, ss58Format); - if (await helper.balance.getSubstrate(account.address) == 0n) { + if (await helper.balance.getSubstrate(account.address) < MINIMUM_DONOR_FUND) { console.warn(`${path.basename(seed.filename)}: Not enough funds present on the filename account. Using the default one as the donor instead.`); account = helper.util.fromSeed('//Alice', ss58Format); } --- a/tests/src/eth/util/playgrounds/unique.dev.ts +++ b/tests/src/eth/util/playgrounds/unique.dev.ts @@ -189,7 +189,7 @@ async createERC721MetadataCompatibleNFTCollection(signer: string, name: string, description: string, tokenPrefix: string, baseUri: string): Promise<{collectionId: number, collectionAddress: string}> { const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer); - const {collectionId, collectionAddress} = await this.createNFTCollection(signer, name, description, tokenPrefix) + const {collectionId, collectionAddress} = await this.createNFTCollection(signer, name, description, tokenPrefix); await collectionHelper.methods.makeCollectionERC721MetadataCompatible(collectionAddress, baseUri).send(); @@ -211,7 +211,7 @@ async createERC721MetadataCompatibleRFTCollection(signer: string, name: string, description: string, tokenPrefix: string, baseUri: string): Promise<{collectionId: number, collectionAddress: string}> { const collectionHelper = this.helper.ethNativeContract.collectionHelpers(signer); - const {collectionId, collectionAddress} = await this.createRFTCollection(signer, name, description, tokenPrefix) + const {collectionId, collectionAddress} = await this.createRFTCollection(signer, name, description, tokenPrefix); await collectionHelper.methods.makeCollectionERC721MetadataCompatible(collectionAddress, baseUri).send(); --- a/tests/src/pallet-presence.test.ts +++ b/tests/src/pallet-presence.test.ts @@ -62,7 +62,7 @@ const chain = await helper.callRpc('api.rpc.system.chain', []); const refungible = 'refungible'; - const scheduler = 'scheduler'; + // const scheduler = 'scheduler'; const foreignAssets = 'foreignassets'; const rmrkPallets = ['rmrkcore', 'rmrkequip']; const appPromotion = 'apppromotion'; @@ -70,7 +70,7 @@ if (chain.eq('OPAL by UNIQUE')) { requiredPallets.push( refungible, - scheduler, + // scheduler, foreignAssets, appPromotion, ...rmrkPallets,