File tree Expand file tree Collapse file tree 1 file changed +6
-11
lines changed
Expand file tree Collapse file tree 1 file changed +6
-11
lines changed Original file line number Diff line number Diff line change @@ -215,22 +215,17 @@ pub(crate) fn random_storage_path() -> PathBuf {
215215 temp_path
216216}
217217
218- pub ( crate ) fn random_port ( ) -> u16 {
219- let mut rng = rng ( ) ;
220- rng. random_range ( 5000 ..32768 )
221- }
222-
223218pub ( crate ) fn random_listening_addresses ( ) -> Vec < SocketAddress > {
224219 let num_addresses = 2 ;
225- let mut listening_addresses = Vec :: with_capacity ( num_addresses ) ;
220+ let mut listening_addresses = HashSet :: new ( ) ;
226221
227- for _ in 0 .. num_addresses {
228- let rand_port = random_port ( ) ;
229- let address: SocketAddress = format ! ( "127.0.0.1:{}" , rand_port ) . parse ( ) . unwrap ( ) ;
230- listening_addresses. push ( address) ;
222+ while listening_addresses . len ( ) < num_addresses {
223+ let socket = std :: net :: TcpListener :: bind ( "127.0.0.1:0" ) . unwrap ( ) ;
224+ let address: SocketAddress = socket . local_addr ( ) . unwrap ( ) . into ( ) ;
225+ listening_addresses. insert ( address) ;
231226 }
232227
233- listening_addresses
228+ listening_addresses. into_iter ( ) . collect ( )
234229}
235230
236231pub ( crate ) fn random_node_alias ( ) -> Option < NodeAlias > {
You can’t perform that action at this time.
0 commit comments