@@ -33,6 +33,10 @@ fn channel_full_cycle() {
3333 assert_eq ! ( node_a. onchain_balance( ) . unwrap( ) . get_spendable( ) , premine_amount_sat) ;
3434 assert_eq ! ( node_b. onchain_balance( ) . unwrap( ) . get_spendable( ) , premine_amount_sat) ;
3535
36+ // Check we haven't got any events yet
37+ assert_eq ! ( node_a. next_event( ) , None ) ;
38+ assert_eq ! ( node_b. next_event( ) , None ) ;
39+
3640 println ! ( "\n A -- connect_open_channel -> B" ) ;
3741 let funding_amount_sat = 80_000 ;
3842 let push_msat = ( funding_amount_sat / 2 ) * 1000 ; // balance the channel
@@ -49,9 +53,10 @@ fn channel_full_cycle() {
4953 assert_eq ! ( node_a. list_peers( ) . first( ) . unwrap( ) . node_id, node_b. node_id( ) ) ;
5054 expect_event ! ( node_a, ChannelPending ) ;
5155
52- let funding_txo = match node_b. next_event ( ) {
56+ let funding_txo = match node_b. wait_next_event ( ) {
5357 ref e @ Event :: ChannelPending { funding_txo, .. } => {
5458 println ! ( "{} got event {:?}" , std:: stringify!( node_b) , e) ;
59+ assert_eq ! ( node_b. next_event( ) . as_ref( ) , Some ( e) ) ;
5560 node_b. event_handled ( ) ;
5661 funding_txo
5762 }
@@ -77,7 +82,7 @@ fn channel_full_cycle() {
7782
7883 expect_event ! ( node_a, ChannelReady ) ;
7984
80- let ev = node_b. next_event ( ) ;
85+ let ev = node_b. wait_next_event ( ) ;
8186 let channel_id = match ev {
8287 ref e @ Event :: ChannelReady { ref channel_id, .. } => {
8388 println ! ( "{} got event {:?}" , std:: stringify!( node_b) , e) ;
@@ -138,7 +143,7 @@ fn channel_full_cycle() {
138143 let overpaid_amount_msat = invoice_amount_2_msat + 100 ;
139144 let payment_hash = node_a. send_payment_using_amount ( & invoice, overpaid_amount_msat) . unwrap ( ) ;
140145 expect_event ! ( node_a, PaymentSuccessful ) ;
141- let received_amount = match node_b. next_event ( ) {
146+ let received_amount = match node_b. wait_next_event ( ) {
142147 ref e @ Event :: PaymentReceived { amount_msat, .. } => {
143148 println ! ( "{} got event {:?}" , std:: stringify!( node_b) , e) ;
144149 node_b. event_handled ( ) ;
@@ -164,7 +169,7 @@ fn channel_full_cycle() {
164169 node_a. send_payment_using_amount ( & variable_amount_invoice, determined_amount_msat) . unwrap ( ) ;
165170
166171 expect_event ! ( node_a, PaymentSuccessful ) ;
167- let received_amount = match node_b. next_event ( ) {
172+ let received_amount = match node_b. wait_next_event ( ) {
168173 ref e @ Event :: PaymentReceived { amount_msat, .. } => {
169174 println ! ( "{} got event {:?}" , std:: stringify!( node_b) , e) ;
170175 node_b. event_handled ( ) ;
@@ -202,6 +207,10 @@ fn channel_full_cycle() {
202207 let expected_final_amount_node_b_sat = premine_amount_sat + sum_of_all_payments_sat;
203208 assert_eq ! ( node_b. onchain_balance( ) . unwrap( ) . get_spendable( ) , expected_final_amount_node_b_sat) ;
204209
210+ // Check we handled all events
211+ assert_eq ! ( node_a. next_event( ) , None ) ;
212+ assert_eq ! ( node_b. next_event( ) , None ) ;
213+
205214 node_a. stop ( ) . unwrap ( ) ;
206215 println ! ( "\n A stopped" ) ;
207216 node_b. stop ( ) . unwrap ( ) ;
0 commit comments