Получение ошибки при выполнении теста кода надежности - PullRequest
1 голос
/ 29 мая 2020

Это код надежности, простой код, предоставленный в учебном курсе linkedin -

// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.5.0 <0.7.0;

contract ApprovalContract{
    address public sender;
    address payable public receiver;
    address public constant approver = 0x9BE32C0CB7910d71CA2c2a7D6B46ebd273dA01eC;
    function deposit(address payable _receiver) external payable{
        require(msg.value>0,"message smaller than 0");
        sender = msg.sender;
        receiver = _receiver;
    }

    function viewApprover() external pure returns(address){
        return(approver);
    }

    function approve() external{
        require(msg.sender == approver,"message is approved");
        receiver.transfer(address(this).balance);
    }
}

, и это тестовый код -

const ApprovalContract = artifacts.require('../contracts/ApprovalContract');

contract("ApprovalContract",function (accounts) {
    it('initiates contract',async function(){
        const contract = await ApprovalContract.deployed();
        const approver = await contract.approver.call();
        assert.equal(approver,0x9BE32C0CB7910d71CA2c2a7D6B46ebd273dA01eC,"approvers don't match");
    });
    it('takes a deposit',async function(accounts){
        const contract = await ApprovalContract.deployed();
        await contract.deposit(accounts[0],{value:1e+10,from:accounts[1]});
        assert.equal(web3.eth.getBalance(contract.address),1e+10,"account did not match");
    });
});

Продолжайте получать ошибку при каждом запуске код теста с использованием трюфельного теста -

Error: invalid address (arg="_receiver", coderType="address", value=undefined)
Error: invalid address (arg="_receiver", coderType="address", value=undefined)
C:\Users\tanis\AppData\Roaming\npm\node_modules\truffle\node_modules\mocha\lib\runner.js:726
  err.uncaught = true;
               ^

TypeError: Cannot create property 'uncaught' on string 'abort(Error: invalid address (arg="_receiver", coderType="address", value=undefined)). Build with -s ASSERTIONS=1 for more info.'
...