From 35cd1a8f88edd2518b347aafea7d6072df236191 Mon Sep 17 00:00:00 2001 From: Florian Schmaus Date: Thu, 18 Mar 2021 21:30:43 +0100 Subject: [PATCH] [sinttest] Do not lazily create fromMarkers If we do not create the fromMarkers initialized with 'false' at the start, then it may appear like all messages are received, because we only check for false markers. But if there is not even the fromMarkers array, then we do not see those 'false' markers. --- .../smack/XmppConnectionStressTest.java | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/smack-integration-test/src/main/java/org/igniterealtime/smack/XmppConnectionStressTest.java b/smack-integration-test/src/main/java/org/igniterealtime/smack/XmppConnectionStressTest.java index adc0a5be9..8f07f98cf 100644 --- a/smack-integration-test/src/main/java/org/igniterealtime/smack/XmppConnectionStressTest.java +++ b/smack-integration-test/src/main/java/org/igniterealtime/smack/XmppConnectionStressTest.java @@ -136,6 +136,10 @@ public class XmppConnectionStressTest { for (XMPPConnection connection : connections) { final Map myReceiveMarkers = new HashMap<>(connections.size()); receiveMarkers.put(connection, myReceiveMarkers); + for (XMPPConnection otherConnection : connections) { + boolean[] fromMarkers = new boolean[configuration.messagesPerConnection]; + myReceiveMarkers.put(otherConnection.getUser(), fromMarkers); + } connection.addSyncStanzaListener(new StanzaListener() { @Override @@ -149,10 +153,6 @@ public class XmppConnectionStressTest { Integer messageNumber = (Integer) extension.getProperty(MESSAGE_NUMBER_PROPERTY); boolean[] fromMarkers = myReceiveMarkers.get(from); - if (fromMarkers == null) { - fromMarkers = new boolean[configuration.messagesPerConnection]; - myReceiveMarkers.put(from, fromMarkers); - } // Sanity check: All markers before must be true, all markers including the messageNumber marker must be false. for (int i = 0; i < fromMarkers.length; i++) { @@ -191,10 +191,6 @@ public class XmppConnectionStressTest { fromMarkers[messageNumber] = true; - if (myReceiveMarkers.size() != connections.size()) { - return; - } - for (boolean[] markers : myReceiveMarkers.values()) { if (BooleansUtils.contains(markers, false)) { return;