提交 340dc8d1 编写于 作者: M Matteo Merli 提交者: GitHub

Fix #91 - Intermittent test failure on...

Fix #91 - Intermittent test failure on SimpleProducerConsumerTest.testSharedConsumerAckDifferentConsumer (#92)
上级 551d42d8
......@@ -20,8 +20,8 @@ import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotEquals;
import static org.testng.Assert.assertFalse;
import static org.testng.Assert.assertNotEquals;
import static org.testng.Assert.assertTrue;
import static org.testng.Assert.fail;
......@@ -871,12 +871,12 @@ public class SimpleProducerConsumerTest extends ProducerConsumerBase {
*
* @throws Exception
*/
@Test
@Test(timeOut = 30000)
public void testSharedConsumerAckDifferentConsumer() throws Exception {
log.info("-- Starting {} test --", methodName);
ConsumerConfiguration conf = new ConsumerConfiguration();
conf.setReceiverQueueSize(5);
conf.setReceiverQueueSize(1);
conf.setSubscriptionType(SubscriptionType.Shared);
Consumer consumer1 = pulsarClient.subscribe("persistent://my-property/use/my-ns/my-topic1", "my-subscriber-name",
conf);
......@@ -895,15 +895,13 @@ public class SimpleProducerConsumerTest extends ProducerConsumerBase {
Set<Message> consumerMsgSet1 = Sets.newHashSet();
Set<Message> consumerMsgSet2 = Sets.newHashSet();
for (int i = 0; i < 5; i++) {
msg = consumer1.receive(1, TimeUnit.SECONDS);
msg = consumer1.receive();
consumerMsgSet1.add(msg);
}
for (int i = 0; i < 5; i++) {
msg = consumer2.receive(1, TimeUnit.SECONDS);
msg = consumer2.receive();
consumerMsgSet2.add(msg);
}
consumerMsgSet1.stream().forEach(m -> {
try {
consumer2.acknowledge(m);
......@@ -923,7 +921,8 @@ public class SimpleProducerConsumerTest extends ProducerConsumerBase {
consumer2.redeliverUnacknowledgedMessages();
try {
if (consumer1.receive(1, TimeUnit.SECONDS) != null || consumer2.receive(1, TimeUnit.SECONDS) != null) {
if (consumer1.receive(100, TimeUnit.MILLISECONDS) != null
|| consumer2.receive(100, TimeUnit.MILLISECONDS) != null) {
fail();
}
} finally {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册