getData 函式獲取存盤的資料:
function getData(string memory _idNumber)
public
view
returns (
string memory,
string memory,
uint256
)
{
return (
idNumberToName[_idNumber],
idNumberToEmail[_idNumber],
idNumberToAmount[_idNumber]
);
}
我的目標是測驗 getData 函式以驗證映射沒有資料,到目前為止還沒有運氣。這是我如何測驗 getData 函式的想法:
it("The mappings should be empty", async function () {
const idNumber = ""
const currentIdNumberToName = await dataStorage.getData(idNumber)
const currentIdNumberToEmail = await dataStorage.getData(idNumber)
const currentIdNumberToAmount = await dataStorage.getData(idNumber)
const expectedIdNumberToName = ""
const expectedIdNumberToEmail = ""
const expectedIdNumberToAmount = "0"
assert.equal(expectedIdNumberToName, currentIdNumberToName)
assert.equal(expectedIdNumberToEmail, currentIdNumberToEmail)
assert.equal(
expectedIdNumberToAmount,
currentIdNumberToAmount.toString()
)
})
uj5u.com熱心網友回復:
它回傳三個引數,所以嘗試一下
it("The mappings should be empty", async function () {
const idNumber = ""
const currentIdNumberToName = (await dataStorage.getData(idNumber))[0]
const currentIdNumberToEmail = (await dataStorage.getData(idNumber))[1]
const currentIdNumberToAmount = (await dataStorage.getData(idNumber))[2]
// or
const [currentIdNumberToName,currentIdNumberToEmail,currentIdNumberToAmount] =
await dataStorage.getData(idNumber)
const expectedIdNumberToName = ""
const expectedIdNumberToEmail = ""
const expectedIdNumberToAmount = "0"
assert.equal(expectedIdNumberToName, currentIdNumberToName)
assert.equal(expectedIdNumberToEmail, currentIdNumberToEmail)
assert.equal(
expectedIdNumberToAmount,
currentIdNumberToAmount.toString()
)
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/504748.html
下一篇:子模塊中的Rust單元測驗組織
