async Task <(RpcGetRawTransaction result, bool allTheSame, Exception error)> ExecuteGetRawTransaction(string txId, RpcGetRawTransaction node0Response, RpcGetRawTransaction node1Response) { rpcClientFactoryMock.SetUpPredefinedResponse( ("umockNode0:getrawtransaction", node0Response), ("umockNode1:getrawtransaction", node1Response)); var c = new RpcMultiClient(new MockNodes(2), rpcClientFactoryMock, NullLogger <RpcMultiClient> .Instance); return(await c.GetRawTransactionAsync(txId)); }
void ExecuteAndCheckSendTransactions(string[] txsHex, RpcSendTransactions expected, RpcSendTransactions node0Response, RpcSendTransactions node1Response) { rpcClientFactoryMock.SetUpPredefinedResponse( ("umockNode0:sendrawtransactions", node0Response), ("umockNode1:sendrawtransactions", node1Response)); var c = new RpcMultiClient(new MockNodes(2), rpcClientFactoryMock, NullLogger <RpcMultiClient> .Instance); var r = c.SendRawTransactionsAsync( txsHex.Select(x => (HelperTools.HexStringToByteArray(x), true, true)).ToArray()).Result; Assert.AreEqual(JsonSerializer.Serialize(expected), JsonSerializer.Serialize(r)); }
public async Task GetBlockChainInfoShouldReturnOldestBLock() { var responses = rpcClientFactoryMock.PredefinedResponse; responses.TryAdd("umockNode0:getblockchaininfo", new RpcGetBlockchainInfo { BestBlockHash = "oldest", Blocks = 100 } ); responses.TryAdd("umockNode1:getblockchaininfo", new RpcGetBlockchainInfo { BestBlockHash = "younger", Blocks = 101 } ); var c = new RpcMultiClient(new MockNodes(2), rpcClientFactoryMock, NullLogger <RpcMultiClient> .Instance); Assert.AreEqual("oldest", (await c.GetWorstBlockchainInfoAsync()).BestBlockHash); }