【发布时间】:2022-07-21 02:17:20
【问题描述】:
我遇到了这个 AssertionError。我正在使用从安全帽网络生成的公钥。它保存为 const const recipient = "0x8626f6940e2eb28930efb4cef49b2d1f2c9c1199";
正如您在下面的错误中看到的,收件人的值正在发生变化(大写字母与小写字母)。知道为什么以及如何发生这种情况吗?
应该使用 ERC2981 版税:
AssertionError: expected '0x8626f6940E2eb28930eFb4CeF49B2d1F2C9…' to equal '0x8626f6940e2eb28930efb4cef49b2d1f2c9…'
+ expected - actual
-0x8626f6940E2eb28930eFb4CeF49B2d1F2C9C1199
+0x8626f6940e2eb28930efb4cef49b2d1f2c9c1199
这是实际测试:
it("should work with ERC2981 royalties", async function () {
const Token = await ethers.getContractFactory("Token");
const token = await Token.deploy();
await token.deployed();
await token.setRoyalties(0, recipient, 1000);
let getRoyalties = await token.getRaribleV2Royalties(0);
assert.equal(getRoyalties[0].value, "1000");
assert.equal(getRoyalties[0].account, recipient);
let royalties = await token.royaltyInfo(0, 100000);
assert.equal(royalties.royaltyAmount.toString(), "10000");
assert.equal(royalties.receiver, recipient);
});
【问题讨论】:
标签: blockchain solidity chai web3js hardhat