You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2021/08/20 20:44:08 UTC
[commons-dbcp] 02/02: Use assertThrows().
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-dbcp.git
commit 8245eef583f6da01c0a6b59133e4f40d6747fa85
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Fri Aug 20 16:44:04 2021 -0400
Use assertThrows().
Use try with resources.
Compiler warnings.
---
.../datasources/TestCPDSConnectionFactory.java | 51 ++++++++++------------
1 file changed, 22 insertions(+), 29 deletions(-)
diff --git a/src/test/java/org/apache/commons/dbcp2/datasources/TestCPDSConnectionFactory.java b/src/test/java/org/apache/commons/dbcp2/datasources/TestCPDSConnectionFactory.java
index 077a6ec..7020462 100644
--- a/src/test/java/org/apache/commons/dbcp2/datasources/TestCPDSConnectionFactory.java
+++ b/src/test/java/org/apache/commons/dbcp2/datasources/TestCPDSConnectionFactory.java
@@ -20,11 +20,12 @@ package org.apache.commons.dbcp2.datasources;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.junit.jupiter.api.Assertions.fail;
import java.sql.Connection;
import java.sql.SQLException;
+import java.time.Duration;
import javax.sql.PooledConnection;
@@ -58,10 +59,8 @@ public class TestCPDSConnectionFactory {
@Test
public void testConnectionErrorCleanup() throws Exception {
// Setup factory
- final CPDSConnectionFactory factory = new CPDSConnectionFactory(
- cpds, null, -1, false, "userName", "password");
- final GenericObjectPool<PooledConnectionAndInfo> pool =
- new GenericObjectPool<>(factory);
+ final CPDSConnectionFactory factory = new CPDSConnectionFactory(cpds, null, -1, false, "userName", "password");
+ final GenericObjectPool<PooledConnectionAndInfo> pool = new GenericObjectPool<>(factory);
factory.setPool(pool);
// Checkout a pair of connections
@@ -101,12 +100,7 @@ public class TestCPDSConnectionFactory {
assertEquals(0, pool.getNumActive());
// Verify pc is closed
- try {
- pc.getConnection();
- fail("Expecting SQLException using closed PooledConnection");
- } catch (final SQLException ex) {
- // expected
- }
+ assertThrows(SQLException.class, () -> pc.getConnection(), "Expecting SQLException using closed PooledConnection");
// Back from the dead - ignore the ghost!
con1.close();
@@ -123,8 +117,7 @@ public class TestCPDSConnectionFactory {
*/
@Test
public void testNullValidationQuery() throws Exception {
- final CPDSConnectionFactory factory =
- new CPDSConnectionFactory(cpds, null, -1, false, "userName", "password");
+ final CPDSConnectionFactory factory = new CPDSConnectionFactory(cpds, null, -1, false, "userName", "password");
final GenericObjectPool<PooledConnectionAndInfo> pool = new GenericObjectPool<>(factory);
factory.setPool(pool);
pool.setTestOnBorrow(true);
@@ -152,22 +145,22 @@ public class TestCPDSConnectionFactory {
*/
@Test
public void testSharedPoolDSDestroyOnReturn() throws Exception {
- final PerUserPoolDataSource ds = new PerUserPoolDataSource();
- ds.setConnectionPoolDataSource(cpds);
- ds.setPerUserMaxTotal("userName", 10);
- ds.setPerUserMaxWaitMillis("userName", 50L);
- ds.setPerUserMaxIdle("userName", 2);
- final Connection conn1 = ds.getConnection("userName", "password");
- final Connection conn2 = ds.getConnection("userName", "password");
- final Connection conn3 = ds.getConnection("userName", "password");
- assertEquals(3, ds.getNumActive("userName"));
- conn1.close();
- assertEquals(1, ds.getNumIdle("userName"));
- conn2.close();
- assertEquals(2, ds.getNumIdle("userName"));
- conn3.close(); // Return to pool will trigger destroy -> close sequence
- assertEquals(2, ds.getNumIdle("userName"));
- ds.close();
+ try (final PerUserPoolDataSource ds = new PerUserPoolDataSource()) {
+ ds.setConnectionPoolDataSource(cpds);
+ ds.setPerUserMaxTotal("userName", 10);
+ ds.setPerUserMaxWait("userName", Duration.ofMillis(50));
+ ds.setPerUserMaxIdle("userName", 2);
+ final Connection conn1 = ds.getConnection("userName", "password");
+ final Connection conn2 = ds.getConnection("userName", "password");
+ final Connection conn3 = ds.getConnection("userName", "password");
+ assertEquals(3, ds.getNumActive("userName"));
+ conn1.close();
+ assertEquals(1, ds.getNumIdle("userName"));
+ conn2.close();
+ assertEquals(2, ds.getNumIdle("userName"));
+ conn3.close(); // Return to pool will trigger destroy -> close sequence
+ assertEquals(2, ds.getNumIdle("userName"));
+ }
}
}