[Java] Update tests to latest upstream API
[ldk-java] / src / test / java / org / ldk / ManualMsgHandlingPeerTest.java
index 010b40754a32aceec5818347bf6eb585f518aedc..786d7427dc9471b0855b29424825a90d272042b3 100644 (file)
@@ -2,109 +2,117 @@ 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
-            public void handle_open_channel(long their_node_id, long their_features, long msg) {
+            public void handle_open_channel(byte[] their_node_id, long their_features, long msg) {
 
             }
 
             @Override
-            public void handle_accept_channel(long their_node_id, long their_features, long msg) {
+            public void handle_accept_channel(byte[] their_node_id, long their_features, long msg) {
 
             }
 
             @Override
-            public void handle_funding_created(long their_node_id, long msg) {
+            public void handle_funding_created(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_funding_signed(long their_node_id, long msg) {
+            public void handle_funding_signed(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_funding_locked(long their_node_id, long msg) {
+            public void handle_funding_locked(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_shutdown(long their_node_id, long msg) {
+            public void handle_shutdown(byte[] their_node_id, long their_features, long msg) {
 
             }
 
             @Override
-            public void handle_closing_signed(long their_node_id, long msg) {
+            public void handle_closing_signed(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_update_add_htlc(long their_node_id, long msg) {
+            public void handle_update_add_htlc(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_update_fulfill_htlc(long their_node_id, long msg) {
+            public void handle_update_fulfill_htlc(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_update_fail_htlc(long their_node_id, long msg) {
+            public void handle_update_fail_htlc(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_update_fail_malformed_htlc(long their_node_id, long msg) {
+            public void handle_update_fail_malformed_htlc(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_commitment_signed(long their_node_id, long msg) {
+            public void handle_commitment_signed(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_revoke_and_ack(long their_node_id, long msg) {
+            public void handle_revoke_and_ack(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_update_fee(long their_node_id, long msg) {
+            public void handle_update_fee(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_announcement_signatures(long their_node_id, long msg) {
+            public void handle_announcement_signatures(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void peer_disconnected(long their_node_id, boolean no_connection_possible) {
+            public void peer_disconnected(byte[] their_node_id, boolean no_connection_possible) {
 
             }
 
             @Override
-            public void peer_connected(long their_node_id, long msg) {
+            public void peer_connected(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_channel_reestablish(long their_node_id, long msg) {
+            public void handle_channel_reestablish(byte[] their_node_id, long msg) {
 
             }
 
             @Override
-            public void handle_error(long their_node_id, long msg) {
+            public void handle_channel_update(byte[] their_node_id, long msg) {
 
             }
-        }, () -> 0);
+
+            @Override
+            public void handle_error(byte[] their_node_id, long msg) {
+
+            }
+        }, () -> new long[0]);
         long route_handler = bindings.LDKRoutingMessageHandler_new(new bindings.LDKRoutingMessageHandler() {
             @Override public long handle_node_announcement(long msg) {
                 return 0;
@@ -115,25 +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(long 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(long 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 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));
 
-        long peer_manager = bindings.PeerManager_new(message_handler, our_node_secret, random_data, logger);
+        // Test Level_max() since its the only place we create a java object from a Rust-returned enum.
+        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);