public async Task <FaucetResponse> TryRequestEthAsync(Address address, UInt256 value) { if (_faucetPeer is null) { if (_logger.IsWarn) { _logger.Warn("ETH request to NDM faucet will not be send (no peer)."); } return(FaucetResponse.FaucetNotSet); } if (address is null || address == Address.Zero || value == 0) { return(FaucetResponse.InvalidNodeAddress); } if (_logger.IsInfo) { _logger.Info($"Sending ETH request to NDM faucet, address: {address}, value {value} wei"); } var response = await _faucetPeer.SendRequestEthAsync(address, value); if (_logger.IsInfo) { _logger.Info($"Received response to ETH request from NDM faucet (address: {address}, value {value} wei) -> status: {response.Status}."); } return(response); }
public async Task request_eth_should_succeed_for_valid_address_and_non_zero_value() { var address = Address.FromNumber(1); UInt256 value = 1; _ethRequestService.UpdateFaucet(_faucetPeer); _faucetPeer.SendRequestEthAsync(address, value) .Returns(FaucetResponse.RequestCompleted(FaucetRequestDetails.Empty)); var ethRequested = await _ethRequestService.TryRequestEthAsync(Address.FromNumber(1), 1); ethRequested.Should().Be(FaucetResponse.RequestCompleted(FaucetRequestDetails.Empty)); }