X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Fln%2Freorg_tests.rs;h=616feb1eea1f6a14dddc7f876246976f49eaea01;hb=b08387055403b287b448cc5867f8aaa650fae1e7;hp=2f97864b10ec7c5a0fa7cf961547ff517406d11d;hpb=7016c2f20203d804f843ab6fa04720af62f85621;p=rust-lightning diff --git a/lightning/src/ln/reorg_tests.rs b/lightning/src/ln/reorg_tests.rs index 2f97864b..616feb1e 100644 --- a/lightning/src/ln/reorg_tests.rs +++ b/lightning/src/ln/reorg_tests.rs @@ -209,6 +209,10 @@ fn do_test_unconf_chan(reload_node: bool, reorg_after_reload: bool, use_funding_ let relevant_txids = nodes[0].node.get_relevant_txids(); assert_eq!(&relevant_txids[..], &[chan.3.txid()]); nodes[0].node.transaction_unconfirmed(&relevant_txids[0]); + } else if connect_style == ConnectStyle::FullBlockViaListen { + disconnect_blocks(&nodes[0], CHAN_CONFIRM_DEPTH - 1); + assert_eq!(nodes[0].node.list_usable_channels().len(), 1); + disconnect_blocks(&nodes[0], 1); } else { disconnect_all_blocks(&nodes[0]); } @@ -273,6 +277,10 @@ fn do_test_unconf_chan(reload_node: bool, reorg_after_reload: bool, use_funding_ let relevant_txids = nodes[0].node.get_relevant_txids(); assert_eq!(&relevant_txids[..], &[chan.3.txid()]); nodes[0].node.transaction_unconfirmed(&relevant_txids[0]); + } else if connect_style == ConnectStyle::FullBlockViaListen { + disconnect_blocks(&nodes[0], CHAN_CONFIRM_DEPTH - 1); + assert_eq!(nodes[0].node.list_channels().len(), 1); + disconnect_blocks(&nodes[0], 1); } else { disconnect_all_blocks(&nodes[0]); } @@ -306,6 +314,11 @@ fn test_unconf_chan() { do_test_unconf_chan(false, true, false, ConnectStyle::BestBlockFirstSkippingBlocks); do_test_unconf_chan(true, false, false, ConnectStyle::BestBlockFirstSkippingBlocks); do_test_unconf_chan(false, false, false, ConnectStyle::BestBlockFirstSkippingBlocks); + + do_test_unconf_chan(true, true, false, ConnectStyle::BestBlockFirstReorgsOnlyTip); + do_test_unconf_chan(false, true, false, ConnectStyle::BestBlockFirstReorgsOnlyTip); + do_test_unconf_chan(true, false, false, ConnectStyle::BestBlockFirstReorgsOnlyTip); + do_test_unconf_chan(false, false, false, ConnectStyle::BestBlockFirstReorgsOnlyTip); } #[test] @@ -323,6 +336,11 @@ fn test_unconf_chan_via_funding_unconfirmed() { do_test_unconf_chan(true, false, true, ConnectStyle::BestBlockFirstSkippingBlocks); do_test_unconf_chan(false, false, true, ConnectStyle::BestBlockFirstSkippingBlocks); + do_test_unconf_chan(true, true, true, ConnectStyle::BestBlockFirstReorgsOnlyTip); + do_test_unconf_chan(false, true, true, ConnectStyle::BestBlockFirstReorgsOnlyTip); + do_test_unconf_chan(true, false, true, ConnectStyle::BestBlockFirstReorgsOnlyTip); + do_test_unconf_chan(false, false, true, ConnectStyle::BestBlockFirstReorgsOnlyTip); + do_test_unconf_chan(true, true, true, ConnectStyle::FullBlockViaListen); do_test_unconf_chan(false, true, true, ConnectStyle::FullBlockViaListen); do_test_unconf_chan(true, false, true, ConnectStyle::FullBlockViaListen); @@ -531,7 +549,9 @@ fn do_test_to_remote_after_local_detection(style: ConnectStyle) { fn test_to_remote_after_local_detection() { do_test_to_remote_after_local_detection(ConnectStyle::BestBlockFirst); do_test_to_remote_after_local_detection(ConnectStyle::BestBlockFirstSkippingBlocks); + do_test_to_remote_after_local_detection(ConnectStyle::BestBlockFirstReorgsOnlyTip); do_test_to_remote_after_local_detection(ConnectStyle::TransactionsFirst); do_test_to_remote_after_local_detection(ConnectStyle::TransactionsFirstSkippingBlocks); + do_test_to_remote_after_local_detection(ConnectStyle::TransactionsFirstReorgsOnlyTip); do_test_to_remote_after_local_detection(ConnectStyle::FullBlockViaListen); }