X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;ds=inline;f=src%2Ftest%2Fjava%2Forg%2Fldk%2FHumanObjectPeerTest.java;h=aa79ca6bec459c6ee3f34ab6e52ec870b2c90831;hb=346c8b8664a67c94842635b5d000a50406844691;hp=807b33074b138b8e47adbe099615c2d5c9b7f6c6;hpb=f08de1c11de2cca22d2caadc368d3ef1e000e39a;p=ldk-java diff --git a/src/test/java/org/ldk/HumanObjectPeerTest.java b/src/test/java/org/ldk/HumanObjectPeerTest.java index 807b3307..aa79ca6b 100644 --- a/src/test/java/org/ldk/HumanObjectPeerTest.java +++ b/src/test/java/org/ldk/HumanObjectPeerTest.java @@ -113,7 +113,7 @@ class HumanObjectPeerTestInstance { } @Override - public Result_ChanKeySignerDecodeErrorZ read_chan_signer(byte[] reader) { + public Result_ChannelKeysDecodeErrorZ read_chan_signer(byte[] reader) { return underlying_if.read_chan_signer(reader); } }); @@ -333,6 +333,20 @@ class HumanObjectPeerTestInstance { return null; } + Event[] get_monitor_events() { + if (chain_monitor != null) { + return chain_monitor.as_EventsProvider().get_and_clear_pending_events(); + } else { + synchronized (monitors) { + assert monitors.size() == 1; + for (ChannelMonitor mon : monitors.values()) { + return mon.get_and_clear_pending_events(); + } + return null; + } + } + } + Route get_route(byte[] dest_node, ChannelDetails[] our_chans) { try (LockedNetworkGraph netgraph = this.router.read_locked_graph()) { NetworkGraph graph = netgraph.graph(); @@ -517,6 +531,18 @@ class HumanObjectPeerTestInstance { assert payment_res instanceof Result_NonePaymentSendFailureZ.Result_NonePaymentSendFailureZ_OK; wait_events_processed(peer1, peer2); + RouteHop[][] hops = new RouteHop[1][1]; + byte[] hop_pubkey = new byte[33]; + hop_pubkey[0] = 3; + hop_pubkey[1] = 42; + hops[0][0] = RouteHop.constructor_new(hop_pubkey, NodeFeatures.constructor_known(), 42, ChannelFeatures.constructor_known(), 100, 0); + Route r2 = Route.constructor_new(hops); + payment_res = peer1.chan_manager.send_payment(r2, payment_hash, new byte[32]); + assert payment_res instanceof Result_NonePaymentSendFailureZ.Result_NonePaymentSendFailureZ_Err; + + assert peer1.get_monitor_events().length == 0; + assert peer2.get_monitor_events().length == 0; + if (reload_peers) { if (use_nio_peer_handler) { peer1.nio_peer_handler.interrupt(); @@ -617,6 +643,9 @@ class HumanObjectPeerTestInstance { state.peer1.nio_peer_handler.interrupt(); state.peer2.nio_peer_handler.interrupt(); } + + assert state.peer1.get_monitor_events().length == 0; + assert state.peer2.get_monitor_events().length == 0; } java.util.LinkedList> must_free_objs = new java.util.LinkedList();