我正在尝试测试正在创建的联系人是否溢出,
实体代码变量desiredDecimals
中的值为uint8
JS测试:
当我在.js中传递2 ^ 8
it("fail test overflow desiredDecimals uint8 contract creating", async function() {
let desiredDecimals = 2**8
let token = await Token.new("Test token", desiredDecimals);
})
没有错误,联系人已创建,desiredDecimals = 0
固溶度测试:
对Solidity进行相同的测试,
function desiredDecimalsOverflow() public {
uint8 desiredDecimals = 2**8;
new Token("Test token", desiredDecimals);
}
未创建联系人,并且测试失败,这是正确的。
我想js和Solidity之间的数据类型会发生一些问题, 但我无法透露确切的问题。