@@ -47,10 +47,10 @@ fn create_nodes(num_messengers: u8) -> Vec<MessengerNode> {
47
47
res
48
48
}
49
49
50
- fn pass_along_path ( mut path : Vec < MessengerNode > , expected_path_id : Option < [ u8 ; 32 ] > ) {
51
- let mut prev_node = path. remove ( 0 ) ;
50
+ fn pass_along_path ( path : & Vec < MessengerNode > , expected_path_id : Option < [ u8 ; 32 ] > ) {
51
+ let mut prev_node = & path[ 0 ] ;
52
52
let num_nodes = path. len ( ) ;
53
- for ( idx, node) in path. into_iter ( ) . enumerate ( ) {
53
+ for ( idx, node) in path. into_iter ( ) . skip ( 1 ) . enumerate ( ) {
54
54
let events = prev_node. messenger . release_pending_msgs ( ) ;
55
55
assert_eq ! ( events. len( ) , 1 ) ;
56
56
let onion_msg = {
@@ -73,15 +73,15 @@ fn one_hop() {
73
73
let nodes = create_nodes ( 2 ) ;
74
74
75
75
nodes[ 0 ] . messenger . send_onion_message ( & [ ] , Destination :: Node ( nodes[ 1 ] . get_node_pk ( ) ) ) . unwrap ( ) ;
76
- pass_along_path ( nodes, None ) ;
76
+ pass_along_path ( & nodes, None ) ;
77
77
}
78
78
79
79
#[ test]
80
80
fn two_unblinded_hops ( ) {
81
81
let nodes = create_nodes ( 3 ) ;
82
82
83
83
nodes[ 0 ] . messenger . send_onion_message ( & [ nodes[ 1 ] . get_node_pk ( ) ] , Destination :: Node ( nodes[ 2 ] . get_node_pk ( ) ) ) . unwrap ( ) ;
84
- pass_along_path ( nodes, None ) ;
84
+ pass_along_path ( & nodes, None ) ;
85
85
}
86
86
87
87
#[ test]
@@ -92,7 +92,7 @@ fn two_unblinded_two_blinded() {
92
92
let blinded_route = BlindedRoute :: new :: < EnforcingSigner , _ , _ > ( & [ nodes[ 3 ] . get_node_pk ( ) , nodes[ 4 ] . get_node_pk ( ) ] , & * nodes[ 4 ] . keys_manager , & secp_ctx) . unwrap ( ) ;
93
93
94
94
nodes[ 0 ] . messenger . send_onion_message ( & [ nodes[ 1 ] . get_node_pk ( ) , nodes[ 2 ] . get_node_pk ( ) ] , Destination :: BlindedRoute ( blinded_route) ) . unwrap ( ) ;
95
- pass_along_path ( nodes, None ) ;
95
+ pass_along_path ( & nodes, None ) ;
96
96
}
97
97
98
98
#[ test]
@@ -103,7 +103,7 @@ fn three_blinded_hops() {
103
103
let blinded_route = BlindedRoute :: new :: < EnforcingSigner , _ , _ > ( & [ nodes[ 1 ] . get_node_pk ( ) , nodes[ 2 ] . get_node_pk ( ) , nodes[ 3 ] . get_node_pk ( ) ] , & * nodes[ 3 ] . keys_manager , & secp_ctx) . unwrap ( ) ;
104
104
105
105
nodes[ 0 ] . messenger . send_onion_message ( & [ ] , Destination :: BlindedRoute ( blinded_route) ) . unwrap ( ) ;
106
- pass_along_path ( nodes, None ) ;
106
+ pass_along_path ( & nodes, None ) ;
107
107
}
108
108
109
109
#[ test]
@@ -124,19 +124,18 @@ fn too_big_packet_error() {
124
124
fn invalid_blinded_route_error ( ) {
125
125
// Make sure we error as expected if a provided blinded route has 0 or 1 hops.
126
126
let mut nodes = create_nodes ( 3 ) ;
127
- let ( node1, node2, node3) = ( nodes. remove ( 0 ) , nodes. remove ( 0 ) , nodes. remove ( 0 ) ) ;
128
127
129
128
// 0 hops
130
129
let secp_ctx = Secp256k1 :: new ( ) ;
131
- let mut blinded_route = BlindedRoute :: new :: < EnforcingSigner , _ , _ > ( & [ node2 . get_node_pk ( ) , node3 . get_node_pk ( ) ] , & * node3 . keys_manager , & secp_ctx) . unwrap ( ) ;
130
+ let mut blinded_route = BlindedRoute :: new :: < EnforcingSigner , _ , _ > ( & [ nodes [ 1 ] . get_node_pk ( ) , nodes [ 2 ] . get_node_pk ( ) ] , & * nodes [ 2 ] . keys_manager , & secp_ctx) . unwrap ( ) ;
132
131
blinded_route. blinded_hops . clear ( ) ;
133
- let err = node1 . messenger . send_onion_message ( & [ ] , Destination :: BlindedRoute ( blinded_route) ) . unwrap_err ( ) ;
132
+ let err = nodes [ 0 ] . messenger . send_onion_message ( & [ ] , Destination :: BlindedRoute ( blinded_route) ) . unwrap_err ( ) ;
134
133
assert_eq ! ( err, SendError :: TooFewBlindedHops ) ;
135
134
136
135
// 1 hop
137
- let mut blinded_route = BlindedRoute :: new :: < EnforcingSigner , _ , _ > ( & [ node2 . get_node_pk ( ) , node3 . get_node_pk ( ) ] , & * node3 . keys_manager , & secp_ctx) . unwrap ( ) ;
136
+ let mut blinded_route = BlindedRoute :: new :: < EnforcingSigner , _ , _ > ( & [ nodes [ 1 ] . get_node_pk ( ) , nodes [ 2 ] . get_node_pk ( ) ] , & * nodes [ 2 ] . keys_manager , & secp_ctx) . unwrap ( ) ;
138
137
blinded_route. blinded_hops . remove ( 0 ) ;
139
138
assert_eq ! ( blinded_route. blinded_hops. len( ) , 1 ) ;
140
- let err = node1 . messenger . send_onion_message ( & [ ] , Destination :: BlindedRoute ( blinded_route) ) . unwrap_err ( ) ;
139
+ let err = nodes [ 0 ] . messenger . send_onion_message ( & [ ] , Destination :: BlindedRoute ( blinded_route) ) . unwrap_err ( ) ;
141
140
assert_eq ! ( err, SendError :: TooFewBlindedHops ) ;
142
141
}
0 commit comments