Ich teste Smart Contract, wenn ich versuche, Token mit https://remix.ethereum.org zu übertragen . Das funktionierte gut. Aber jetzt möchte ich seinen Testfall schreiben, aber das funktioniert nicht gut und überträgt die Token nicht. Code:
it('should properly [transfer] token', async function() {
let recipient = "0xe0f5206bbd039e7b0592d8918820024e2a7437b9";
let tokenWei = 1000000;
let status = await contract.methods.transfer(recipient, tokenWei).call();
console.log(status);
let ownerBalance = await contract.methods.balanceOf(owner).call();
let recipientBalance = await contract.methods.balanceOf("0xe0f5206bbd039e7b0592d8918820024e2a7437b9").call();
console.log("Balance:"+ownerBalance +'----'+recipientBalance);
});
Ausgabe ist so.
status = true
Balance:1705243055----100000000
Diese Salden sind genau die gleichen wie zuvor, dh keine Abzüge vom Eigentümerkonto und keine Hinzufügung auf dem Empfängerkonto.
Jede Anleitung / Hilfe wird geschätzt.
Danke
Sie müssen send statt call verwenden, da Sie den Status ändern.
contract.methods.transfer(recipient, tokenWei).send({from: '0x123...'})
Wladimir Gallardt
Lauri Peltonen