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
The following commit(s) were added to refs/heads/master by this push: new d697b482 Normalize Javadoc spelling d697b482 is described below commit d697b482e485d7f493fd2b6dc480470fc67db125 Author: Gary Gregory <gardgreg...@gmail.com> AuthorDate: Wed Jun 15 08:19:05 2022 -0400 Normalize Javadoc spelling --- .../dbcp2/TestDriverManagerConnectionFactory.java | 350 ++++++++++----------- 1 file changed, 175 insertions(+), 175 deletions(-) diff --git a/src/test/java/org/apache/commons/dbcp2/TestDriverManagerConnectionFactory.java b/src/test/java/org/apache/commons/dbcp2/TestDriverManagerConnectionFactory.java index c6381d77..673f4bb1 100644 --- a/src/test/java/org/apache/commons/dbcp2/TestDriverManagerConnectionFactory.java +++ b/src/test/java/org/apache/commons/dbcp2/TestDriverManagerConnectionFactory.java @@ -1,175 +1,175 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.commons.dbcp2; - -import static org.junit.jupiter.api.Assertions.assertThrows; -import static org.junit.jupiter.api.Assertions.fail; - -import java.sql.Connection; -import java.sql.SQLException; -import java.util.Properties; - -import javax.sql.DataSource; - -import org.apache.commons.pool2.impl.GenericObjectPool; -import org.apache.commons.pool2.impl.GenericObjectPoolConfig; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; - -/** - * This test *must* execute before all other tests to be effective as it tests - * the initialisation of DriverManager. - * Based on the test case for DBCP-212 written by Marcos Sanz - */ -public class TestDriverManagerConnectionFactory { - - private static final class ConnectionThread implements Runnable { - private final DataSource ds; - private volatile boolean result = true; - - private ConnectionThread(final DataSource ds) { - this.ds = ds; - } - - public boolean getResult() { - return result; - } - - @Override - public void run() { - Connection conn = null; - try { - conn = ds.getConnection(); - } catch (final Exception e) { - e.printStackTrace(); - result = false; - } finally { - if (conn != null) { - try { - conn.close(); - } catch (final Exception e) { - e.printStackTrace(); - result = false; - } - } - } - } - - @Override - public String toString() { - return "ConnectionThread [ds=" + ds + ", result=" + result + "]"; - } - } - - private static final String KEY_JDBC_DRIVERS = "jdbc.drivers"; - - @AfterAll - public static void afterClass() { - System.clearProperty(KEY_JDBC_DRIVERS); - } - - @BeforeAll - public static void beforeClass() { - System.setProperty(KEY_JDBC_DRIVERS, "org.apache.commons.dbcp2.TesterDriver"); - } - - @Test - public void testDriverManagerCredentialsInUrl() throws SQLException { - final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver;user=foo;password=bar", null, (char[]) null); - cf.createConnection(); - } - - public void testDriverManagerInit(final boolean withProperties) throws Exception { - final GenericObjectPoolConfig<PoolableConnection> config = new GenericObjectPoolConfig<>(); - config.setMaxTotal(10); - config.setMaxIdle(0); - final Properties properties = new Properties(); - // The names "user" and "password" are specified in java.sql.DriverManager.getConnection(String, String, String) - properties.setProperty(Constants.KEY_USER, "foo"); - properties.setProperty(Constants.KEY_PASSWORD, "bar"); - final ConnectionFactory connectionFactory = withProperties ? - new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", properties) : - new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", "foo", "bar"); - final PoolableConnectionFactory poolableConnectionFactory = - new PoolableConnectionFactory(connectionFactory, null); - poolableConnectionFactory.setDefaultReadOnly(Boolean.FALSE); - poolableConnectionFactory.setDefaultAutoCommit(Boolean.TRUE); - - final GenericObjectPool<PoolableConnection> connectionPool = - new GenericObjectPool<>(poolableConnectionFactory, config); - poolableConnectionFactory.setPool(connectionPool); - final PoolingDataSource<PoolableConnection> dataSource = - new PoolingDataSource<>(connectionPool); - - final ConnectionThread[] connectionThreads = new ConnectionThread[10]; - final Thread[] threads = new Thread[10]; - - for (int i = 0; i < 10; i++) { - connectionThreads[i] = new ConnectionThread(dataSource); - threads[i] = new Thread(connectionThreads[i]); - } - for (int i = 0; i < 10; i++) { - threads[i].start(); - } - for (int i = 0; i < 10; i++) { - while (threads[i].isAlive()){//JDK1.5: getState() != Thread.State.TERMINATED) { - Thread.sleep(100); - } - if (!connectionThreads[i].getResult()) { - fail("Exception during getConnection(): " + connectionThreads[i]); - } - } - } - - @Test - public void testDriverManagerInitWithCredentials() throws Exception { - testDriverManagerInit(false); - } - - @Test - public void testDriverManagerInitWithEmptyProperties() throws Exception { - final ConnectionFactory connectionFactory = new DriverManagerConnectionFactory( - "jdbc:apache:commons:testdriver;user=foo;password=bar"); - connectionFactory.createConnection(); - } - - @Test - public void testDriverManagerInitWithProperties() throws Exception { - testDriverManagerInit(true); - } - - @Test - public void testDriverManagerWithoutCredentials() { - final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", null, (char[]) null); - assertThrows(ArrayIndexOutOfBoundsException.class, cf::createConnection); // thrown by TestDriver due to missing user - } - - @Test - public void testDriverManagerWithoutPassword() { - final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", "user", (char[]) null); - assertThrows(SQLException.class, cf::createConnection); // thrown by TestDriver due to invalid password - } - - @Test - public void testDriverManagerWithoutUser() { - final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", null, "pass"); - assertThrows(IndexOutOfBoundsException.class, cf::createConnection); // thrown by TestDriver due to missing user - } - -} +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.commons.dbcp2; + +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.fail; + +import java.sql.Connection; +import java.sql.SQLException; +import java.util.Properties; + +import javax.sql.DataSource; + +import org.apache.commons.pool2.impl.GenericObjectPool; +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + +/** + * This test *must* execute before all other tests to be effective as it tests + * the initialization of DriverManager. + * Based on the test case for DBCP-212 written by Marcos Sanz + */ +public class TestDriverManagerConnectionFactory { + + private static final class ConnectionThread implements Runnable { + private final DataSource ds; + private volatile boolean result = true; + + private ConnectionThread(final DataSource ds) { + this.ds = ds; + } + + public boolean getResult() { + return result; + } + + @Override + public void run() { + Connection conn = null; + try { + conn = ds.getConnection(); + } catch (final Exception e) { + e.printStackTrace(); + result = false; + } finally { + if (conn != null) { + try { + conn.close(); + } catch (final Exception e) { + e.printStackTrace(); + result = false; + } + } + } + } + + @Override + public String toString() { + return "ConnectionThread [ds=" + ds + ", result=" + result + "]"; + } + } + + private static final String KEY_JDBC_DRIVERS = "jdbc.drivers"; + + @AfterAll + public static void afterClass() { + System.clearProperty(KEY_JDBC_DRIVERS); + } + + @BeforeAll + public static void beforeClass() { + System.setProperty(KEY_JDBC_DRIVERS, "org.apache.commons.dbcp2.TesterDriver"); + } + + @Test + public void testDriverManagerCredentialsInUrl() throws SQLException { + final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver;user=foo;password=bar", null, (char[]) null); + cf.createConnection(); + } + + public void testDriverManagerInit(final boolean withProperties) throws Exception { + final GenericObjectPoolConfig<PoolableConnection> config = new GenericObjectPoolConfig<>(); + config.setMaxTotal(10); + config.setMaxIdle(0); + final Properties properties = new Properties(); + // The names "user" and "password" are specified in java.sql.DriverManager.getConnection(String, String, String) + properties.setProperty(Constants.KEY_USER, "foo"); + properties.setProperty(Constants.KEY_PASSWORD, "bar"); + final ConnectionFactory connectionFactory = withProperties ? + new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", properties) : + new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", "foo", "bar"); + final PoolableConnectionFactory poolableConnectionFactory = + new PoolableConnectionFactory(connectionFactory, null); + poolableConnectionFactory.setDefaultReadOnly(Boolean.FALSE); + poolableConnectionFactory.setDefaultAutoCommit(Boolean.TRUE); + + final GenericObjectPool<PoolableConnection> connectionPool = + new GenericObjectPool<>(poolableConnectionFactory, config); + poolableConnectionFactory.setPool(connectionPool); + final PoolingDataSource<PoolableConnection> dataSource = + new PoolingDataSource<>(connectionPool); + + final ConnectionThread[] connectionThreads = new ConnectionThread[10]; + final Thread[] threads = new Thread[10]; + + for (int i = 0; i < 10; i++) { + connectionThreads[i] = new ConnectionThread(dataSource); + threads[i] = new Thread(connectionThreads[i]); + } + for (int i = 0; i < 10; i++) { + threads[i].start(); + } + for (int i = 0; i < 10; i++) { + while (threads[i].isAlive()){//JDK1.5: getState() != Thread.State.TERMINATED) { + Thread.sleep(100); + } + if (!connectionThreads[i].getResult()) { + fail("Exception during getConnection(): " + connectionThreads[i]); + } + } + } + + @Test + public void testDriverManagerInitWithCredentials() throws Exception { + testDriverManagerInit(false); + } + + @Test + public void testDriverManagerInitWithEmptyProperties() throws Exception { + final ConnectionFactory connectionFactory = new DriverManagerConnectionFactory( + "jdbc:apache:commons:testdriver;user=foo;password=bar"); + connectionFactory.createConnection(); + } + + @Test + public void testDriverManagerInitWithProperties() throws Exception { + testDriverManagerInit(true); + } + + @Test + public void testDriverManagerWithoutCredentials() { + final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", null, (char[]) null); + assertThrows(ArrayIndexOutOfBoundsException.class, cf::createConnection); // thrown by TestDriver due to missing user + } + + @Test + public void testDriverManagerWithoutPassword() { + final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", "user", (char[]) null); + assertThrows(SQLException.class, cf::createConnection); // thrown by TestDriver due to invalid password + } + + @Test + public void testDriverManagerWithoutUser() { + final DriverManagerConnectionFactory cf = new DriverManagerConnectionFactory("jdbc:apache:commons:testdriver", null, "pass"); + assertThrows(IndexOutOfBoundsException.class, cf::createConnection); // thrown by TestDriver due to missing user + } + +}