This is an automated email from the ASF dual-hosted git repository. robbie pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-jms.git
The following commit(s) were added to refs/heads/master by this push: new 86127dc NO-JIRA: update mock provider/peer usage in some tests to prevent a spurious failure seen in CI 86127dc is described below commit 86127dcb9de8c38d8e4c91edb538fb15882ca442 Author: Robbie Gemmell <rob...@apache.org> AuthorDate: Thu Jul 23 10:48:51 2020 +0100 NO-JIRA: update mock provider/peer usage in some tests to prevent a spurious failure seen in CI --- .../qpid/jms/producer/JmsMessageProducerTest.java | 50 ++++++++-------------- .../jms/provider/mock/MockProviderFactory.java | 2 +- .../qpid/jms/provider/mock/MockRemotePeer.java | 6 +-- 3 files changed, 22 insertions(+), 36 deletions(-) diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java index 32e59b7..2927c98 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java @@ -449,8 +449,6 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { public void testInOrderSendAcksCompletionsReturnInOrder() throws Exception { final int MESSAGE_COUNT = 3; - final MockRemotePeer remotePoor = MockRemotePeer.INSTANCE; - JmsConnectionFactory factory = new JmsConnectionFactory( "mock://localhost?mock.delayCompletionCalls=true"); @@ -467,11 +465,11 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { @Override public boolean isSatisfied() throws Exception { - return remotePoor.getPendingCompletions(destination).size() == MESSAGE_COUNT; + return remotePeer.getPendingCompletions(destination).size() == MESSAGE_COUNT; } })); - remotePoor.completeAllPendingSends(destination); + remotePeer.completeAllPendingSends(destination); assertTrue("Not all completions triggered", Wait.waitFor(new Wait.Condition() { @@ -490,8 +488,6 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { public void testReversedOrderSendAcksCompletionsReturnInOrder() throws Exception { final int MESSAGE_COUNT = 3; - final MockRemotePeer remotePoor = MockRemotePeer.INSTANCE; - JmsConnectionFactory factory = new JmsConnectionFactory( "mock://localhost?mock.delayCompletionCalls=true"); @@ -508,17 +504,17 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { @Override public boolean isSatisfied() throws Exception { - return remotePoor.getPendingCompletions(destination).size() == MESSAGE_COUNT; + return remotePeer.getPendingCompletions(destination).size() == MESSAGE_COUNT; } })); - List<JmsOutboundMessageDispatch> pending = remotePoor.getPendingCompletions(destination); + List<JmsOutboundMessageDispatch> pending = remotePeer.getPendingCompletions(destination); assertEquals(MESSAGE_COUNT, pending.size()); Collections.reverse(pending); for (JmsOutboundMessageDispatch envelope : pending) { LOG.info("Trigger completion of message: {}", envelope.getMessage().getJMSMessageID()); - remotePoor.completePendingSend(envelope); + remotePeer.completePendingSend(envelope); } assertTrue("Not all completions triggered", Wait.waitFor(new Wait.Condition() { @@ -538,8 +534,6 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { public void testInOrderSendFailuresCompletionsReturnInOrder() throws Exception { final int MESSAGE_COUNT = 3; - final MockRemotePeer remotePoor = MockRemotePeer.INSTANCE; - JmsConnectionFactory factory = new JmsConnectionFactory( "mock://localhost?mock.delayCompletionCalls=true"); @@ -555,10 +549,10 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { @Override public boolean isSatisfied() throws Exception { - return remotePoor.getPendingCompletions(destination).size() == MESSAGE_COUNT; + return remotePeer.getPendingCompletions(destination).size() == MESSAGE_COUNT; } })); - remotePoor.failAllPendingSends(destination, new ProviderException("Could not send message")); + remotePeer.failAllPendingSends(destination, new ProviderException("Could not send message")); assertTrue("Not all completions triggered", Wait.waitFor(new Wait.Condition() { @@ -577,8 +571,6 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { public void testReversedOrderSendAcksFailuresReturnInOrder() throws Exception { final int MESSAGE_COUNT = 3; - final MockRemotePeer remotePoor = MockRemotePeer.INSTANCE; - JmsConnectionFactory factory = new JmsConnectionFactory( "mock://localhost?mock.delayCompletionCalls=true"); @@ -595,17 +587,17 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { @Override public boolean isSatisfied() throws Exception { - return remotePoor.getPendingCompletions(destination).size() == MESSAGE_COUNT; + return remotePeer.getPendingCompletions(destination).size() == MESSAGE_COUNT; } })); - List<JmsOutboundMessageDispatch> pending = remotePoor.getPendingCompletions(destination); + List<JmsOutboundMessageDispatch> pending = remotePeer.getPendingCompletions(destination); assertEquals(MESSAGE_COUNT, pending.size()); Collections.reverse(pending); for (JmsOutboundMessageDispatch envelope : pending) { LOG.info("Trigger failure of message: {}", envelope.getMessage().getJMSMessageID()); - remotePoor.failPendingSend(envelope, new ProviderException("Failed to send message")); + remotePeer.failPendingSend(envelope, new ProviderException("Failed to send message")); } assertTrue("Not all failures triggered", Wait.waitFor(new Wait.Condition() { @@ -625,8 +617,6 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { public void testInterleavedCompletionsReturnedInOrder() throws Exception { final int MESSAGE_COUNT = 3; - final MockRemotePeer remotePoor = MockRemotePeer.INSTANCE; - JmsConnectionFactory factory = new JmsConnectionFactory( "mock://localhost?mock.delayCompletionCalls=true"); @@ -643,11 +633,11 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { @Override public boolean isSatisfied() throws Exception { - return remotePoor.getPendingCompletions(destination).size() == MESSAGE_COUNT; + return remotePeer.getPendingCompletions(destination).size() == MESSAGE_COUNT; } })); - List<JmsOutboundMessageDispatch> pending = remotePoor.getPendingCompletions(destination); + List<JmsOutboundMessageDispatch> pending = remotePeer.getPendingCompletions(destination); assertEquals(MESSAGE_COUNT, pending.size()); Collections.reverse(pending); @@ -655,10 +645,10 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { int sequence = envelope.getMessage().getIntProperty("sequence"); if (sequence % 2 == 0) { LOG.info("Trigger completion of message: {}", envelope.getMessage().getJMSMessageID()); - remotePoor.completePendingSend(envelope); + remotePeer.completePendingSend(envelope); } else { LOG.info("Trigger failure of message: {}", envelope.getMessage().getJMSMessageID()); - remotePoor.failPendingSend(envelope, new ProviderException("Failed to send message")); + remotePeer.failPendingSend(envelope, new ProviderException("Failed to send message")); } } @@ -679,8 +669,6 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { public void testCompletionListenerOnCompleteCallsProducerCloseThrowsISE() throws Exception { final int MESSAGE_COUNT = 1; - final MockRemotePeer remotePoor = MockRemotePeer.INSTANCE; - JmsConnectionFactory factory = new JmsConnectionFactory( "mock://localhost?mock.delayCompletionCalls=true"); @@ -715,11 +703,11 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { @Override public boolean isSatisfied() throws Exception { - return remotePoor.getPendingCompletions(destination).size() == MESSAGE_COUNT; + return remotePeer.getPendingCompletions(destination).size() == MESSAGE_COUNT; } })); - remotePoor.completeAllPendingSends(destination); + remotePeer.completeAllPendingSends(destination); assertTrue("Completion never got expected ISE", done.await(10, TimeUnit.SECONDS)); @@ -730,8 +718,6 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { public void testCompletionListenerOnExceptionCallsProducerCloseThrowsISE() throws Exception { final int MESSAGE_COUNT = 1; - final MockRemotePeer remotePoor = MockRemotePeer.INSTANCE; - JmsConnectionFactory factory = new JmsConnectionFactory( "mock://localhost?mock.delayCompletionCalls=true"); @@ -765,11 +751,11 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport { @Override public boolean isSatisfied() throws Exception { - return remotePoor.getPendingCompletions(destination).size() == MESSAGE_COUNT; + return remotePeer.getPendingCompletions(destination).size() == MESSAGE_COUNT; } })); - remotePoor.failAllPendingSends(destination, new ProviderException("Could not send message")); + remotePeer.failAllPendingSends(destination, new ProviderException("Could not send message")); assertTrue("Completion never got expected ISE", done.await(10, TimeUnit.SECONDS)); diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockProviderFactory.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockProviderFactory.java index 410a5c7..597f8e8 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockProviderFactory.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockProviderFactory.java @@ -56,7 +56,7 @@ public class MockProviderFactory extends ProviderFactory { } MockProviderConfiguration configuration = new MockProviderConfiguration(); - MockRemotePeer remote = MockRemotePeer.INSTANCE; + MockRemotePeer remote = MockRemotePeer.LAST_STARTED_INSTANCE; if (remote != null) { remote.getContextStats().recordProviderCreated(); } diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockRemotePeer.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockRemotePeer.java index 552cee1..ce65240 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockRemotePeer.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/mock/MockRemotePeer.java @@ -36,7 +36,7 @@ import org.apache.qpid.jms.provider.ProviderException; */ public class MockRemotePeer { - public static MockRemotePeer INSTANCE; + static volatile MockRemotePeer LAST_STARTED_INSTANCE; private final Map<String, MockProvider> activeProviders = new ConcurrentHashMap<String, MockProvider>(); private final MockProviderStats contextStats = new MockProviderStats(); @@ -101,13 +101,13 @@ public class MockRemotePeer { lastRegistered = null; offline = false; - MockRemotePeer.INSTANCE = this; + MockRemotePeer.LAST_STARTED_INSTANCE = this; } public void terminate() { shutdown(); - MockRemotePeer.INSTANCE = null; + MockRemotePeer.LAST_STARTED_INSTANCE = null; } public void shutdown() { --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org