X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Forg%2Fldk%2FManualMsgHandlingPeerTest.java;h=786d7427dc9471b0855b29424825a90d272042b3;hb=16eb386ba053e6901da5edd024dd0613c1700084;hp=82f0ade1464030543cce8236488f7e5a6211b92f;hpb=9e1ceb0850f7c6f42a15e20c25925fd1961a8476;p=ldk-java diff --git a/src/test/java/org/ldk/ManualMsgHandlingPeerTest.java b/src/test/java/org/ldk/ManualMsgHandlingPeerTest.java index 82f0ade1..786d7427 100644 --- a/src/test/java/org/ldk/ManualMsgHandlingPeerTest.java +++ b/src/test/java/org/ldk/ManualMsgHandlingPeerTest.java @@ -3,12 +3,14 @@ package org.ldk; import org.junit.jupiter.api.Test; import org.ldk.impl.bindings; import org.ldk.enums.*; +import org.ldk.structs.Record; public class ManualMsgHandlingPeerTest { @Test void test_message_handler() { - long logger = bindings.LDKLogger_new((String arg)->{ - System.out.println(arg); + long logger = bindings.LDKLogger_new((long arg)->{ + System.out.println(bindings.Record_get_args(arg)); + bindings.Record_free(arg); }); long chan_handler = bindings.LDKChannelMessageHandler_new(new bindings.LDKChannelMessageHandler() { @Override @@ -37,7 +39,7 @@ public class ManualMsgHandlingPeerTest { } @Override - public void handle_shutdown(byte[] their_node_id, long msg) { + public void handle_shutdown(byte[] their_node_id, long their_features, long msg) { } @@ -101,11 +103,16 @@ public class ManualMsgHandlingPeerTest { } + @Override + public void handle_channel_update(byte[] their_node_id, long msg) { + + } + @Override public void handle_error(byte[] their_node_id, long msg) { } - }, () -> 0); + }, () -> new long[0]); long route_handler = bindings.LDKRoutingMessageHandler_new(new bindings.LDKRoutingMessageHandler() { @Override public long handle_node_announcement(long msg) { return 0; @@ -116,28 +123,46 @@ public class ManualMsgHandlingPeerTest { @Override public long handle_channel_update(long msg) { return 0; } - @Override public void handle_htlc_fail_channel_update(long update) { + @Override public long[] get_next_channel_announcements(long starting_point, byte batch_amount) { + return new long[0]; + } + @Override public long[] get_next_node_announcements(byte[] starting_point, byte batch_amount) { + return new long[0]; + } + + @Override public void peer_connected(byte[] their_node_id, long init) { } + @Override + public long handle_reply_channel_range(byte[] their_node_id, long msg) { + return 0; } - @Override public long get_next_channel_announcements(long starting_point, byte batch_amount) { + + @Override + public long handle_reply_short_channel_ids_end(byte[] their_node_id, long msg) { return 0; } - @Override public long get_next_node_announcements(byte[] starting_point, byte batch_amount) { + + @Override + public long handle_query_channel_range(byte[] their_node_id, long msg) { return 0; } - @Override public boolean should_request_full_sync(byte[] node_id) { - return false; + + @Override + public long handle_query_short_channel_ids(byte[] their_node_id, long msg) { + return 0; } - }); + }, () -> new long[0]); long message_handler = bindings.MessageHandler_new(chan_handler, route_handler); - long our_node_secret = bindings.LDKSecretKey_new(); //TODO: Need LDKSecretKey constructor + byte[] our_node_secret = new byte[32]; byte[] random_data = new byte[32]; - for (byte i = 0; i < 32; i++) { random_data[i] = i; } + for (byte i = 0; i < 32; i++) { random_data[i] = i; our_node_secret[i] = (byte) (i ^ 0xff); } - long peer_manager = bindings.PeerManager_new(message_handler, our_node_secret, random_data, logger); + long ignoring_message_handler = bindings.IgnoringMessageHandler_new(); + long peer_manager = bindings.PeerManager_new(message_handler, our_node_secret, random_data, logger, + bindings.IgnoringMessageHandler_as_CustomMessageHandler(ignoring_message_handler)); // Test Level_max() since its the only place we create a java object from a Rust-returned enum. - assert bindings.Level_max() == LDKLevel.LDKLevel_Trace; + assert bindings.Level_max() == Level.LDKLevel_Gossip; // Note that we can't rely on finalizer order, so don't bother trying to rely on it here bindings.Logger_free(logger);