Skip to content

Commit 8e78a93

Browse files
thachlpggivo
andauthored
Fix flaky test JedisPoolTest.testCloseConnectionOnMakeObject (#4138)
* Fix flaky test * Using await as recommend * Update ACLJedisPoolTest * Missing perform request for connection --------- Co-authored-by: ggivo <[email protected]>
1 parent 582df92 commit 8e78a93

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

src/test/java/redis/clients/jedis/ACLJedisPoolTest.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
package redis.clients.jedis;
22

3+
import static java.util.concurrent.TimeUnit.MILLISECONDS;
4+
import static org.awaitility.Awaitility.await;
35
import static org.junit.Assert.assertEquals;
46
import static org.junit.Assert.assertNull;
57
import static org.junit.Assert.assertTrue;
68
import static org.junit.Assert.fail;
79

810
import java.net.URI;
911
import java.net.URISyntaxException;
12+
import java.time.Duration;
1013

1114
import io.redis.test.annotations.SinceRedisVersion;
1215
import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
@@ -268,6 +271,8 @@ public void testCloseConnectionOnMakeObject() {
268271
pool.getResource();
269272
fail("Should throw exception as password is incorrect.");
270273
} catch (Exception e) {
274+
await().pollDelay(Duration.ofMillis(10)).atMost(50, MILLISECONDS)
275+
.until(() -> getClientCount(jedis.clientList()) == currentClientCount);
271276
assertEquals(currentClientCount, getClientCount(jedis.clientList()));
272277
}
273278
}

src/test/java/redis/clients/jedis/JedisPoolTest.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package redis.clients.jedis;
22

3+
import static java.util.concurrent.TimeUnit.MILLISECONDS;
4+
import static org.awaitility.Awaitility.await;
35
import static org.junit.Assert.assertEquals;
46
import static org.junit.Assert.assertNull;
57
import static org.junit.Assert.assertSame;
@@ -8,6 +10,7 @@
810

911
import java.net.URI;
1012
import java.net.URISyntaxException;
13+
import java.time.Duration;
1114
import java.util.concurrent.atomic.AtomicInteger;
1215
import org.apache.commons.pool2.PooledObject;
1316
import org.apache.commons.pool2.PooledObjectFactory;
@@ -400,6 +403,8 @@ public void testCloseConnectionOnMakeObject() {
400403
pool.getResource();
401404
fail("Should throw exception as password is incorrect.");
402405
} catch (Exception e) {
406+
await().pollDelay(Duration.ofMillis(10)).atMost(50, MILLISECONDS)
407+
.until(() -> getClientCount(jedis.clientList()) == currentClientCount);
403408
assertEquals(currentClientCount, getClientCount(jedis.clientList()));
404409
}
405410
}

0 commit comments

Comments
 (0)