You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ma...@apache.org on 2014/03/27 05:20:44 UTC
svn commit: r1582179 -
/logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/db/jdbc/DataSourceConnectionSourceTest.java
Author: mattsicker
Date: Thu Mar 27 04:20:44 2014
New Revision: 1582179
URL: http://svn.apache.org/r1582179
Log:
De-duplicate redundant code.
Modified:
logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/db/jdbc/DataSourceConnectionSourceTest.java
Modified: logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/db/jdbc/DataSourceConnectionSourceTest.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/db/jdbc/DataSourceConnectionSourceTest.java?rev=1582179&r1=1582178&r2=1582179&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/db/jdbc/DataSourceConnectionSourceTest.java (original)
+++ logging/log4j/log4j2/trunk/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/db/jdbc/DataSourceConnectionSourceTest.java Thu Mar 27 04:20:44 2014
@@ -18,6 +18,8 @@ package org.apache.logging.log4j.core.ap
import java.sql.Connection;
import java.sql.SQLException;
+import java.util.Arrays;
+import java.util.Collection;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
@@ -25,14 +27,33 @@ import javax.sql.DataSource;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
import org.mockejb.jndi.MockContextFactory;
import static org.easymock.EasyMock.*;
import static org.junit.Assert.*;
+@RunWith(Parameterized.class)
public class DataSourceConnectionSourceTest {
+
+ @Parameterized.Parameters
+ public static Collection<Object[]> data() {
+ return Arrays.asList(
+ new Object[][]{
+ {"java:/comp/env/jdbc/Logging01"},
+ {"java:/comp/env/jdbc/Logging02"}
+ }
+ );
+ }
+
+ private final String jndiURL;
private InitialContext context;
+ public DataSourceConnectionSourceTest(final String jndiURL) {
+ this.jndiURL = jndiURL;
+ }
+
@Before
public void setUp() throws NamingException {
MockContextFactory.setAsInitial();
@@ -66,13 +87,13 @@ public class DataSourceConnectionSourceT
@Test
public void testNoDataSource() {
final DataSourceConnectionSource source = DataSourceConnectionSource
- .createConnectionSource("java:/comp/env/jdbc/Logging01");
+ .createConnectionSource(this.jndiURL);
assertNull("The connection source should be null.", source);
}
@Test
- public void testDataSource01() throws NamingException, SQLException {
+ public void testDataSource() throws NamingException, SQLException {
final DataSource dataSource = createStrictMock(DataSource.class);
final Connection connection1 = createStrictMock(Connection.class);
final Connection connection2 = createStrictMock(Connection.class);
@@ -81,49 +102,22 @@ public class DataSourceConnectionSourceT
expect(dataSource.getConnection()).andReturn(connection2);
replay(dataSource, connection1, connection2);
- this.context.bind("java:/comp/env/jdbc/Logging01", dataSource);
+ this.context.bind(this.jndiURL, dataSource);
DataSourceConnectionSource source = DataSourceConnectionSource
- .createConnectionSource("java:/comp/env/jdbc/Logging01");
+ .createConnectionSource(this.jndiURL);
assertNotNull("The connection source should not be null.", source);
- assertEquals("The toString value is not correct.", "dataSource{ name=java:/comp/env/jdbc/Logging01, value="
+ assertEquals("The toString value is not correct.", "dataSource{ name=" + jndiURL + ", value="
+ dataSource + " }", source.toString());
assertSame("The connection is not correct (1).", connection1, source.getConnection());
assertSame("The connection is not correct (2).", connection2, source.getConnection());
- source = DataSourceConnectionSource.createConnectionSource("java:/comp/env/jdbc/Logging02");
+ source = DataSourceConnectionSource.createConnectionSource(jndiURL.substring(0, jndiURL.length() - 1));
assertNull("The connection source should be null now.", source);
verify(dataSource, connection1, connection2);
}
- @Test
- public void testDataSource02() throws NamingException, SQLException {
- final DataSource dataSource = createStrictMock(DataSource.class);
- final Connection connection1 = createStrictMock(Connection.class);
- final Connection connection2 = createStrictMock(Connection.class);
-
- expect(dataSource.getConnection()).andReturn(connection1);
- expect(dataSource.getConnection()).andReturn(connection2);
- replay(dataSource, connection1, connection2);
-
- this.context.bind("java:/comp/env/jdbc/Logging02", dataSource);
-
- DataSourceConnectionSource source = DataSourceConnectionSource
- .createConnectionSource("java:/comp/env/jdbc/Logging02");
-
- assertNotNull("The connection source should not be null.", source);
- assertEquals("The toString value is not correct.", "dataSource{ name=java:/comp/env/jdbc/Logging02, value="
- + dataSource + " }", source.toString());
- assertSame("The connection is not correct (1).", connection1, source.getConnection());
- assertSame("The connection is not correct (2).", connection2, source.getConnection());
-
- source = DataSourceConnectionSource.createConnectionSource("java:/comp/env/jdbc/Logging01");
-
- assertNull("The connection source should be null now.", source);
-
- verify(dataSource, connection1, connection2);
- }
}