Как написать фиктивный метод получения эфирного баланса с помощью Web3j Api.Я пытаюсь смоделировать Web3j и вызвать метод EthGetBalance, но я получаю Null - PullRequest
0 голосов
/ 25 ноября 2018

Этот метод извлекает эфир, используя web3j Api.

public static BigInteger OriginalMethod(){

// connect to node
Web3j web3 = Web3j.build(new HttpService());  // defaults to 
http://localhost:8545/

// send asynchronous requests to get balance
EthGetBalance ethGetBalance = web3
.ethGetBalance("0xAccountAddress", DefaultBlockParameterName.LATEST)
.sendAsync()
.get();

BigInteger wei = ethGetBalance.getBalance();
}

Приведенный ниже метод является ложным методом получения эфира.

public static BigInteger MockOriginalMethod(){
        web3j=Mockito.mock(Web3j.class);//Mock web3j class
        BigInteger bigValue=Mockito.mock(BigInteger.class);
        Mockito.when(web3j.ethGetBalance(address, DefaultBlockParameterName.LATEST).sendAsync()
                .get().getBalance()).thenReturn(bigValue);
       return bigValue.valueOf(11);
}
...