Test current state of things, which actually doesn't crash!
[ldk-java] / src / test / java / org / ldk / PeerTest.java
1 package org.ldk;
2
3 import org.junit.jupiter.api.Test;
4 import org.ldk.impl.bindings;
5
6 public class PeerTest {
7     @Test
8     void test_message_handler() {
9         long logger = bindings.LDKLogger_new((String arg)->{
10             System.out.println(arg);
11         });
12         long chan_handler = bindings.LDKChannelMessageHandler_new(new bindings.LDKChannelMessageHandler() {
13             @Override
14             public void handle_open_channel(long their_node_id, long their_features, long msg) {
15
16             }
17
18             @Override
19             public void handle_accept_channel(long their_node_id, long their_features, long msg) {
20
21             }
22
23             @Override
24             public void handle_funding_created(long their_node_id, long msg) {
25
26             }
27
28             @Override
29             public void handle_funding_signed(long their_node_id, long msg) {
30
31             }
32
33             @Override
34             public void handle_funding_locked(long their_node_id, long msg) {
35
36             }
37
38             @Override
39             public void handle_shutdown(long their_node_id, long msg) {
40
41             }
42
43             @Override
44             public void handle_closing_signed(long their_node_id, long msg) {
45
46             }
47
48             @Override
49             public void handle_update_add_htlc(long their_node_id, long msg) {
50
51             }
52
53             @Override
54             public void handle_update_fulfill_htlc(long their_node_id, long msg) {
55
56             }
57
58             @Override
59             public void handle_update_fail_htlc(long their_node_id, long msg) {
60
61             }
62
63             @Override
64             public void handle_update_fail_malformed_htlc(long their_node_id, long msg) {
65
66             }
67
68             @Override
69             public void handle_commitment_signed(long their_node_id, long msg) {
70
71             }
72
73             @Override
74             public void handle_revoke_and_ack(long their_node_id, long msg) {
75
76             }
77
78             @Override
79             public void handle_update_fee(long their_node_id, long msg) {
80
81             }
82
83             @Override
84             public void handle_announcement_signatures(long their_node_id, long msg) {
85
86             }
87
88             @Override
89             public void peer_disconnected(long their_node_id, boolean no_connection_possible) {
90
91             }
92
93             @Override
94             public void peer_connected(long their_node_id, long msg) {
95
96             }
97
98             @Override
99             public void handle_channel_reestablish(long their_node_id, long msg) {
100
101             }
102
103             @Override
104             public void handle_error(long their_node_id, long msg) {
105
106             }
107         }, () -> 0);
108         long route_handler = bindings.LDKRoutingMessageHandler_new(new bindings.LDKRoutingMessageHandler() {
109             @Override public long handle_node_announcement(long msg) {
110                 return 0;
111             }
112             @Override public long handle_channel_announcement(long msg) {
113                 return 0;
114             }
115             @Override public long handle_channel_update(long msg) {
116                 return 0;
117             }
118             @Override public void handle_htlc_fail_channel_update(long update) {
119
120             }
121             @Override public long get_next_channel_announcements(long starting_point, byte batch_amount) {
122                 return 0;
123             }
124             @Override public long get_next_node_announcements(long starting_point, byte batch_amount) {
125                 return 0;
126             }
127             @Override public boolean should_request_full_sync(long node_id) {
128                 return false;
129             }
130         });
131         long message_handler = bindings.MessageHandler_new(chan_handler, route_handler);
132         long our_node_secret = bindings.LDKSecretKey_new(); //TODO: Need LDKSecretKey constructor
133         byte[] random_data = new byte[32];
134         for (byte i = 0; i < 32; i++) { random_data[i] = i; }
135
136         long peer_manager = bindings.PeerManager_new(message_handler, our_node_secret, random_data, logger);
137
138         // Note that we can't rely on finalizer order, so don't bother trying to rely on it here
139         bindings.Logger_free(logger);
140         bindings.ChannelMessageHandler_free(chan_handler);
141         bindings.RoutingMessageHandler_free(route_handler);
142         //bindings.MessageHandler_free(message_handler);
143         bindings.PeerManager_free(peer_manager);
144     }
145 }