@@ -50,11 +50,7 @@ pub fn get_ibc_packets(
5050) -> Vec < IbcSequence > {
5151 let mut legacy_extracted_id_tx_ids =
5252 txs. iter ( ) . flat_map ( |( wrapper_tx, inner_txs) | {
53- let mut inner_txs_it = inner_txs. iter ( ) ;
54-
55- std:: iter:: from_fn ( move || {
56- let inner_tx = inner_txs_it. next ( ) ?;
57-
53+ inner_txs. iter ( ) . filter_map ( |inner_tx| {
5854 // Extract successful ibc transactions from each batch
5955 if inner_tx. is_sent_ibc ( ) && inner_tx. was_successful ( wrapper_tx)
6056 {
@@ -361,7 +357,7 @@ mod tests {
361357 total_signatures : 0 ,
362358 size : 0 ,
363359 } ;
364- let inner = InnerTransaction {
360+ let inner1 = InnerTransaction {
365361 tx_id : Id :: Hash ( "deadbeef" . to_string ( ) ) ,
366362 wrapper_id : Id :: Hash ( "eatshit" . to_string ( ) ) ,
367363 index : 0 ,
@@ -379,8 +375,19 @@ mod tests {
379375 notes : 0 ,
380376 exit_code : TransactionExitStatus :: Applied ,
381377 } ;
378+ let inner2 = InnerTransaction {
379+ kind : TransactionKind :: IbcRecvTrasparentTransfer ( (
380+ Token :: Native ( Id :: Hash ( "aabbcc" . to_string ( ) ) ) ,
381+ TransferData {
382+ sources : AccountsMap ( Default :: default ( ) ) ,
383+ targets : AccountsMap ( Default :: default ( ) ) ,
384+ shielded_section_hash : None ,
385+ } ,
386+ ) ) ,
387+ ..inner1. clone ( )
388+ } ;
382389 assert_eq ! (
383- get_ibc_packets( & block_result, & [ ( wrapper, vec![ inner ] ) ] ) ,
390+ get_ibc_packets( & block_result, & [ ( wrapper, vec![ inner1 , inner2 ] ) ] ) ,
384391 vec![ expected_seq( Id :: Hash ( "deadbeef" . to_string( ) ) ) ] ,
385392 ) ;
386393 }
0 commit comments