X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Forg%2Fldk%2FPeerTest.java;h=17d68b72d3d80afa7211196c40226dcb739561ea;hb=e5e14abada451cff0aa62e31942da61623f39826;hp=b24164425af679838cd2d6fc43265b145b8aff13;hpb=323d540882dfdae8247d4e7f2477b39c82380491;p=ldk-java diff --git a/src/test/java/org/ldk/PeerTest.java b/src/test/java/org/ldk/PeerTest.java index b2416442..17d68b72 100644 --- a/src/test/java/org/ldk/PeerTest.java +++ b/src/test/java/org/ldk/PeerTest.java @@ -6,128 +6,77 @@ import org.ldk.impl.bindings; public class PeerTest { @Test void test_message_handler() { - long logger = bindings.LDKLogger_new((String arg)->{ - System.out.println(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) { - - } - - @Override - public void handle_accept_channel(long their_node_id, long their_features, long msg) { - - } - - @Override - public void handle_funding_created(long their_node_id, long msg) { - - } - - @Override - public void handle_funding_signed(long their_node_id, long msg) { - - } - - @Override - public void handle_funding_locked(long their_node_id, long msg) { - - } - - @Override - public void handle_shutdown(long their_node_id, long msg) { - - } - - @Override - public void handle_closing_signed(long their_node_id, long msg) { - - } - - @Override - public void handle_update_add_htlc(long their_node_id, long msg) { - - } + long logger = bindings.LDKLogger_new((String arg)-> System.out.println(arg)); + long fee_estimator = bindings.LDKFeeEstimator_new(new bindings.LDKFeeEstimator() { @Override - public void handle_update_fulfill_htlc(long their_node_id, long msg) { - - } - - @Override - public void handle_update_fail_htlc(long their_node_id, long msg) { - + public int get_est_sat_per_1000_weight(bindings.LDKConfirmationTarget confirmation_target) { + return 0; } - + }); + long tx_broadcaster = bindings.LDKBroadcasterInterface_new(new bindings.LDKBroadcasterInterface() { @Override - public void handle_update_fail_malformed_htlc(long their_node_id, long msg) { - + public void broadcast_transaction(long tx) { + // We should broadcast } - + }); + long chain_monitor = bindings.LDKManyChannelMonitor_new(new bindings.LDKManyChannelMonitor() { @Override - public void handle_commitment_signed(long their_node_id, long msg) { - + public long add_monitor(long funding_txo, long monitor) { + return 0; } @Override - public void handle_revoke_and_ack(long their_node_id, long msg) { - + public long update_monitor(long funding_txo, long monitor) { + return 0; } @Override - public void handle_update_fee(long their_node_id, long msg) { - + public long get_and_clear_pending_monitor_events() { + return 0; } + }); + byte[] key_seed = new byte[32]; + for (byte i = 0; i < 32; i++) { key_seed[i] = i; } + long keys = bindings.KeysManager_new(key_seed, bindings.LDKNetwork.LDKNetwork_Bitcoin, System.currentTimeMillis() / 1000, (int)(System.currentTimeMillis() * 1000) & 0xffffffff); + long keys_interface = bindings.KeysManager_as_KeysInterface(keys); + long config = bindings.UserConfig_default(); + long chan_manager = bindings.ChannelManager_new(bindings.LDKNetwork.LDKNetwork_Bitcoin, fee_estimator, chain_monitor, tx_broadcaster, logger, keys_interface, config, 1); + long chan_handler = bindings.ChannelManager_as_ChannelMessageHandler(chan_manager); + long chain_watch = bindings.LDKChainWatchInterface_new(new bindings.LDKChainWatchInterface() { @Override - public void handle_announcement_signatures(long their_node_id, long msg) { + public void install_watch_tx(byte[] txid, long script_pub_key) { } @Override - public void peer_disconnected(long their_node_id, boolean no_connection_possible) { + public void install_watch_outpoint(long outpoint, long out_script) { } @Override - public void peer_connected(long their_node_id, long msg) { + public void watch_all_txn() { } @Override - public void handle_channel_reestablish(long their_node_id, long msg) { - + public long get_chain_utxo(long genesis_hash, long unspent_tx_output_identifier) { + return 0; } @Override - public void handle_error(long their_node_id, long msg) { - - } - }, () -> 0); - long route_handler = bindings.LDKRoutingMessageHandler_new(new bindings.LDKRoutingMessageHandler() { - @Override public long handle_node_announcement(long msg) { - return 0; - } - @Override public long handle_channel_announcement(long msg) { + public long filter_block(long block) { return 0; } - @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 0; - } - @Override public long get_next_node_announcements(long starting_point, byte batch_amount) { + @Override + public long reentered() { return 0; } - @Override public boolean should_request_full_sync(long node_id) { - return false; - } }); + long router = bindings.NetGraphMsgHandler_new(chain_watch, logger); + long route_handler = bindings.NetGraphMsgHandler_as_RoutingMessageHandler(router); long message_handler = bindings.MessageHandler_new(chan_handler, route_handler); long our_node_secret = bindings.LDKSecretKey_new(); //TODO: Need LDKSecretKey constructor byte[] random_data = new byte[32]; @@ -137,7 +86,15 @@ public class PeerTest { // Note that we can't rely on finalizer order, so don't bother trying to rely on it here bindings.Logger_free(logger); + bindings.FeeEstimator_free(fee_estimator); + bindings.BroadcasterInterface_free(tx_broadcaster); + bindings.ManyChannelMonitor_free(chain_monitor); + bindings.KeysManager_free(keys); + bindings.KeysInterface_free(keys_interface); + bindings.ChannelManager_free(chan_manager); bindings.ChannelMessageHandler_free(chan_handler); + bindings.ChainWatchInterface_free(chain_watch); + bindings.NetGraphMsgHandler_free(router); bindings.RoutingMessageHandler_free(route_handler); //bindings.MessageHandler_free(message_handler); bindings.PeerManager_free(peer_manager);