@@ -352,10 +352,13 @@ TwoTuple<byte[], TwoTuple<Integer, TxOut>[]>[] connect_block(Block b, int height
352
352
txn = new TwoTuple []{txp };
353
353
} else
354
354
txn = new TwoTuple [0 ];
355
- chan_manager .as_Listen ().block_connected (b .bitcoinSerialize (), height );
356
355
if (chain_monitor != null ) {
356
+ chan_manager .as_Listen ().block_connected (b .bitcoinSerialize (), height );
357
357
chain_monitor .block_connected (header , txn , height );
358
358
} else {
359
+ chan_manager .transactions_confirmed (header , height , txn );
360
+ chan_manager .update_best_block (header , height );
361
+ // Connect manually if we aren't using a ChainMonitor and are implementing Watch ourselves
359
362
synchronized (monitors ) {
360
363
assert monitors .size () == 1 ;
361
364
for (ChannelMonitor mon : monitors .values ()) {
@@ -529,13 +532,12 @@ TestState do_test_message_handler() throws InterruptedException {
529
532
funding .getInputs ().get (0 ).setWitness (new TransactionWitness (2 )); // Make sure we don't complain about lack of witness
530
533
funding .getInput (0 ).getWitness ().setPush (0 , new byte []{0x1 });
531
534
funding .addOutput (Coin .SATOSHI .multiply (10000 ), new Script (funding_spk ));
532
- peer1 .chan_manager .funding_transaction_generated (chan_id , OutPoint . constructor_new ( funding .getTxId (). getReversedBytes () , (short ) 0 ) );
535
+ peer1 .chan_manager .funding_transaction_generated (chan_id , funding .bitcoinSerialize () , (short ) 0 );
533
536
wait_events_processed (peer1 , peer2 );
534
537
535
- events = peer1 .chan_manager_events .get_and_clear_pending_events ();
536
- assert events .length == 1 ;
537
- assert events [0 ] instanceof Event .FundingBroadcastSafe ;
538
- assert ((Event .FundingBroadcastSafe ) events [0 ]).user_channel_id == 42 ;
538
+ assert peer1 .broadcast_set .size () == 1 ;
539
+ assert Arrays .equals (peer1 .broadcast_set .get (0 ), funding .bitcoinSerialize ());
540
+ peer1 .broadcast_set .clear ();
539
541
540
542
Block b = new Block (bitcoinj_net , 2 , Sha256Hash .ZERO_HASH , Sha256Hash .ZERO_HASH , 42 , 0 , 0 , Arrays .asList (new Transaction []{funding }));
541
543
peer1 .connect_block (b , 1 , 0 );
@@ -651,7 +653,7 @@ void do_test_message_handler_b(TestState state) {
651
653
wait_events_processed (state .peer1 , state .peer2 );
652
654
653
655
assert state .peer1 .broadcast_set .size () == 1 ;
654
- assert state .peer2 .broadcast_set .size () == 0 ;
656
+ assert state .peer2 .broadcast_set .size () == 1 ;
655
657
656
658
NetworkParameters bitcoinj_net = NetworkParameters .fromID (NetworkParameters .ID_MAINNET );
657
659
Transaction tx = new Transaction (bitcoinj_net , state .peer1 .broadcast_set .getFirst ());
0 commit comments