mirror of
https://github.com/bitcoinj/bitcoinj.git
synced 2025-03-10 09:20:04 +01:00
TestWithNetworkConnections: pick random TCP bind ports for each test instance
This will hopefully reduce spurious test failures due to already bound ports.
This commit is contained in:
parent
d25c77cf24
commit
006c00ac35
2 changed files with 5 additions and 2 deletions
|
@ -54,6 +54,7 @@ import java.net.InetAddress;
|
|||
import java.net.InetSocketAddress;
|
||||
import java.net.SocketAddress;
|
||||
import java.time.Duration;
|
||||
import java.util.Random;
|
||||
import java.util.concurrent.BlockingQueue;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import java.util.concurrent.LinkedBlockingQueue;
|
||||
|
@ -66,7 +67,9 @@ import static com.google.common.base.Preconditions.checkState;
|
|||
* Utility class that makes it easy to work with mock NetworkConnections.
|
||||
*/
|
||||
public class TestWithNetworkConnections {
|
||||
protected static final int TCP_PORT_BASE = 10000 + new Random().nextInt(40000);
|
||||
public static final int PEER_SERVERS = 5;
|
||||
|
||||
protected static final NetworkParameters UNITTEST = UnitTestParams.get();
|
||||
protected static final NetworkParameters TESTNET = TestNet3Params.get();
|
||||
protected BlockStore blockStore;
|
||||
|
@ -145,7 +148,7 @@ public class TestWithNetworkConnections {
|
|||
}
|
||||
};
|
||||
}
|
||||
}, new InetSocketAddress(InetAddress.getLoopbackAddress(), 2000 + i));
|
||||
}, new InetSocketAddress(InetAddress.getLoopbackAddress(), TCP_PORT_BASE + i));
|
||||
peerServers[i].startAsync();
|
||||
peerServers[i].awaitRunning();
|
||||
}
|
||||
|
|
|
@ -134,7 +134,7 @@ public class TestWithPeerGroup extends TestWithNetworkConnections {
|
|||
|
||||
protected InboundMessageQueuer connectPeerWithoutVersionExchange(int id) throws Exception {
|
||||
Preconditions.checkArgument(id < PEER_SERVERS);
|
||||
InetSocketAddress remoteAddress = new InetSocketAddress(InetAddress.getLoopbackAddress(), 2000 + id);
|
||||
InetSocketAddress remoteAddress = new InetSocketAddress(InetAddress.getLoopbackAddress(), TCP_PORT_BASE + id);
|
||||
Peer peer = peerGroup.connectTo(remoteAddress).getConnectionOpenFuture().get();
|
||||
InboundMessageQueuer writeTarget = newPeerWriteTargetQueue.take();
|
||||
writeTarget.peer = peer;
|
||||
|
|
Loading…
Add table
Reference in a new issue