mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-07-26 08:25:23 -04:00
Repeat TomP2PTests tests using @Repeat vs. loops
This commit is contained in:
parent
1a92b05bf4
commit
640a736ec3
1 changed files with 110 additions and 154 deletions
|
@ -19,6 +19,7 @@ package io.bitsquare.msg;
|
|||
|
||||
import io.bitsquare.network.BootstrapNode;
|
||||
import io.bitsquare.network.Node;
|
||||
import io.bitsquare.util.Repeat;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
|
@ -100,8 +101,8 @@ public class TomP2PTests {
|
|||
// Need to observe if it can have some side effects.
|
||||
private static final boolean CACHE_CLIENTS = true;
|
||||
|
||||
// Use that to stress test with repeated run of the test method body
|
||||
private static final int STRESS_TEST_LOOP_COUNT = 1;
|
||||
// Use to stress tests by repeating them
|
||||
private static final int STRESS_TEST_COUNT = 1;
|
||||
|
||||
// need to be static to keep them during tests
|
||||
private final static Map<String, Peer> cachedPeers = new HashMap<>();
|
||||
|
@ -113,13 +114,13 @@ public class TomP2PTests {
|
|||
private ConnectionType resolvedConnectionType;
|
||||
|
||||
@Before
|
||||
public void configure() {
|
||||
public void setUp() {
|
||||
client1Port = getNewRandomPort();
|
||||
client2Port = getNewRandomPort();
|
||||
}
|
||||
|
||||
@After
|
||||
public void shutdown() {
|
||||
public void tearDown() {
|
||||
if (!CACHE_CLIENTS) {
|
||||
if (peer1DHT != null)
|
||||
peer1DHT.shutdown().awaitUninterruptibly();
|
||||
|
@ -129,68 +130,46 @@ public class TomP2PTests {
|
|||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void bootstrapInUnknownMode() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
if (FORCED_CONNECTION_TYPE == ConnectionType.UNKNOWN)
|
||||
assertNotNull(bootstrapInUnknownMode("node_1", client1Port));
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testBootstrapDirectConnection() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
if (FORCED_CONNECTION_TYPE == ConnectionType.DIRECT)
|
||||
assertNotNull(bootstrapDirectConnection("node_1", client1Port));
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testBootstrapWithPortForwarding() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
if (FORCED_CONNECTION_TYPE == ConnectionType.NAT)
|
||||
assertNotNull(bootstrapWithPortForwarding("node_1", client1Port));
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testBootstrapInRelayMode() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
if (FORCED_CONNECTION_TYPE == ConnectionType.RELAY)
|
||||
assertNotNull(bootstrapInRelayMode("node_1", client1Port));
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testPut() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
|
||||
peer1DHT = getDHTPeer("node_1", client1Port);
|
||||
FuturePut futurePut = peer1DHT.put(Number160.createHash("key")).data(new Data("hallo")).start();
|
||||
futurePut.awaitUninterruptibly();
|
||||
if (shouldEvaluateSuccess())
|
||||
assertTrue(futurePut.isSuccess());
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testPutGet() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
peer1DHT = getDHTPeer("node_1", client1Port);
|
||||
FuturePut futurePut = peer1DHT.put(Number160.createHash("key")).data(new Data("hallo")).start();
|
||||
futurePut.awaitUninterruptibly();
|
||||
|
@ -204,15 +183,11 @@ public class TomP2PTests {
|
|||
if (shouldEvaluateSuccess())
|
||||
assertTrue(futureGet.isSuccess());
|
||||
assertEquals("hallo", futureGet.data().object());
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testAdd() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
peer1DHT = getDHTPeer("node_1", client1Port);
|
||||
FuturePut futurePut1 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo1")).start();
|
||||
futurePut1.awaitUninterruptibly();
|
||||
|
@ -223,15 +198,11 @@ public class TomP2PTests {
|
|||
futurePut2.awaitUninterruptibly();
|
||||
if (shouldEvaluateSuccess())
|
||||
assertTrue(futurePut2.isSuccess());
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testAddGet() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
peer1DHT = getDHTPeer("node_1", client1Port);
|
||||
FuturePut futurePut1 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo1")).start();
|
||||
futurePut1.awaitUninterruptibly();
|
||||
|
@ -253,15 +224,11 @@ public class TomP2PTests {
|
|||
assertTrue(futureGet.dataMap().values().contains(new Data("hallo1")));
|
||||
assertTrue(futureGet.dataMap().values().contains(new Data("hallo2")));
|
||||
assertTrue(futureGet.dataMap().values().size() == 2);
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testAddRemove() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
peer1DHT = getDHTPeer("node_1", client1Port);
|
||||
FuturePut futurePut1 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo1")).start();
|
||||
futurePut1.awaitUninterruptibly();
|
||||
|
@ -291,9 +258,6 @@ public class TomP2PTests {
|
|||
|
||||
assertTrue(futureGet.dataMap().values().contains(new Data("hallo2")));
|
||||
assertTrue(futureGet.dataMap().values().size() == 1);
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -301,9 +265,8 @@ public class TomP2PTests {
|
|||
// So if both clients are behind NAT they cannot send direct message to each other.
|
||||
// That will probably be fixed in a future version of TomP2P
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testSendDirectBetweenLocalPeers() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
if (FORCED_CONNECTION_TYPE != ConnectionType.NAT && resolvedConnectionType != ConnectionType.NAT) {
|
||||
peer1DHT = getDHTPeer("node_1", client1Port);
|
||||
peer2DHT = getDHTPeer("node_2", client2Port);
|
||||
|
@ -331,17 +294,13 @@ public class TomP2PTests {
|
|||
log.debug(futureDirect.object().toString());
|
||||
assertEquals("pong", futureDirect.object());
|
||||
}
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
// That test should always succeed as we use the server seed node as receiver.
|
||||
// A node can send a message to another peer which is not in the same LAN.
|
||||
@Test
|
||||
@Repeat(STRESS_TEST_COUNT)
|
||||
public void testSendDirectToSeedNode() throws Exception {
|
||||
for (int i = 0; i < STRESS_TEST_LOOP_COUNT; i++) {
|
||||
configure();
|
||||
peer1DHT = getDHTPeer("node_1", client1Port);
|
||||
|
||||
FuturePeerConnection futurePeerConnection =
|
||||
|
@ -350,9 +309,6 @@ public class TomP2PTests {
|
|||
futureDirect.awaitUninterruptibly();
|
||||
assertTrue(futureDirect.isSuccess());
|
||||
assertEquals("pong", futureDirect.object());
|
||||
|
||||
shutdown();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue