|
From: <fg...@us...> - 2008-01-09 22:33:43
|
Revision: 523
http://openutils.svn.sourceforge.net/openutils/?rev=523&view=rev
Author: fgiust
Date: 2008-01-09 14:33:43 -0800 (Wed, 09 Jan 2008)
Log Message:
-----------
support for multiple databases
Modified Paths:
--------------
trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitConfiguration.java
trunk/openutils-testing-testng/pom.xml
trunk/openutils-testing-testng/src/main/java/it/openutils/testing/testng/AbstractDbUnitTestNGSpringContextTests.java
Added Paths:
-----------
trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitExecution.java
trunk/openutils-testing-testng/src/test/
trunk/openutils-testing-testng/src/test/java/
trunk/openutils-testing-testng/src/test/java/it/
trunk/openutils-testing-testng/src/test/java/it/openutils/
trunk/openutils-testing-testng/src/test/java/it/openutils/testing/
trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/
trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/MultipleDatasourceDbUnitTest.java
trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/SingleDatasourceDbUnitTest.java
trunk/openutils-testing-testng/src/test/resources/
trunk/openutils-testing-testng/src/test/resources/db1-load.xml
trunk/openutils-testing-testng/src/test/resources/db2-load.xml
trunk/openutils-testing-testng/src/test/resources/log4j.dtd
trunk/openutils-testing-testng/src/test/resources/log4j.xml
trunk/openutils-testing-testng/src/test/resources/spring-tests.xml
Property Changed:
----------------
trunk/openutils-testing-testng/
Modified: trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitConfiguration.java
===================================================================
--- trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitConfiguration.java 2008-01-08 11:50:27 UTC (rev 522)
+++ trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitConfiguration.java 2008-01-09 22:33:43 UTC (rev 523)
@@ -18,17 +18,6 @@
@Documented
public @interface DbUnitConfiguration {
- /**
- * The resource locations to use for loading dbunit dataset.
- */
- String[] datasets() default {};
+ DbUnitExecution[] dbUnitExecutions() default {};
- String dataSource() default "";
-
- String schema() default "";
-
- String excludedTables() default "(^\\$(.*))"; // oracle recycle bin
-
- boolean truncateAll() default true;
-
}
\ No newline at end of file
Added: trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitExecution.java
===================================================================
--- trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitExecution.java (rev 0)
+++ trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitExecution.java 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,34 @@
+package it.openutils.testing;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+
+/**
+ * @author fgiust
+ * @version $Id: $
+ */
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.TYPE)
+@Inherited
+@Documented
+public @interface DbUnitExecution {
+
+ /**
+ * The resource locations to use for loading dbunit dataset.
+ */
+ String[] datasets() default {};
+
+ String dataSource() default "";
+
+ String schema() default "";
+
+ String excludedTables() default "(^\\$(.*))"; // oracle recycle bin
+
+ boolean truncateAll() default true;
+
+}
\ No newline at end of file
Property changes on: trunk/openutils-testing/src/main/java/it/openutils/testing/DbUnitExecution.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Property changes on: trunk/openutils-testing-testng
___________________________________________________________________
Name: svn:ignore
- .checkstyle
target
.settings
.classpath
.project
+ .checkstyle
target
.settings
.classpath
.project
test-output
temp-testng-customsuite.xml
Modified: trunk/openutils-testing-testng/pom.xml
===================================================================
--- trunk/openutils-testing-testng/pom.xml 2008-01-08 11:50:27 UTC (rev 522)
+++ trunk/openutils-testing-testng/pom.xml 2008-01-09 22:33:43 UTC (rev 523)
@@ -129,6 +129,44 @@
</exclusion>
</exclusions>
</dependency>
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <version>10.2.2.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-dbcp</groupId>
+ <artifactId>commons-dbcp</artifactId>
+ <version>1.2.1</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <artifactId>xerces</artifactId>
+ <groupId>xerces</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>xml-apis</artifactId>
+ <groupId>xml-apis</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>commons-logging</artifactId>
+ <groupId>commons-logging</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-jdbc</artifactId>
+ <version>${spring.version}</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
</dependencies>
<properties>
<spring.version>2.5</spring.version>
Modified: trunk/openutils-testing-testng/src/main/java/it/openutils/testing/testng/AbstractDbUnitTestNGSpringContextTests.java
===================================================================
--- trunk/openutils-testing-testng/src/main/java/it/openutils/testing/testng/AbstractDbUnitTestNGSpringContextTests.java 2008-01-08 11:50:27 UTC (rev 522)
+++ trunk/openutils-testing-testng/src/main/java/it/openutils/testing/testng/AbstractDbUnitTestNGSpringContextTests.java 2008-01-09 22:33:43 UTC (rev 523)
@@ -1,6 +1,7 @@
package it.openutils.testing.testng;
import it.openutils.testing.DbUnitConfiguration;
+import it.openutils.testing.DbUnitExecution;
import it.openutils.testing.DbUnitUtils;
import it.openutils.testing.RegExpTableFilter;
@@ -26,7 +27,7 @@
import org.dbunit.operation.DatabaseOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.test.context.testng.AbstractTransactionalTestNGSpringContextTests;
+import org.springframework.test.context.testng.AbstractTestNGSpringContextTests;
import org.testng.annotations.BeforeMethod;
@@ -34,7 +35,7 @@
* @author fgiust
* @version $Id: $
*/
-public class AbstractDbUnitTestNGSpringContextTests extends AbstractTransactionalTestNGSpringContextTests
+public class AbstractDbUnitTestNGSpringContextTests extends AbstractTestNGSpringContextTests
{
/**
@@ -47,7 +48,11 @@
*/
private Map<String, IDataSet> datasetCache = new HashMap<String, IDataSet>();
- protected static IDataSet truncateDataSet;
+ /**
+ * Truncate dataset cache. This is kept as a static attribute since the creation of the dataset is very expensive
+ * and it doesn't change across tests.
+ */
+ protected static Map<String, IDataSet> truncateDataSetCache = new HashMap<String, IDataSet>();
/**
* Setup the Database before running the test method.
@@ -57,26 +62,40 @@
@BeforeMethod
protected void setUpDbUnit() throws Exception
{
- final DbUnitConfiguration dbUnitConfiguration = getClass().getAnnotation(DbUnitConfiguration.class);
- if (dbUnitConfiguration != null)
+ DbUnitExecution singleDbUnitExecution = getClass().getAnnotation(DbUnitExecution.class);
+
+ DbUnitExecution[] executions;
+ if (singleDbUnitExecution != null)
{
- String[] datasets = dbUnitConfiguration.datasets();
+ executions = new DbUnitExecution[]{singleDbUnitExecution };
+ }
+ else
+ {
+ DbUnitConfiguration dbUnitConfiguration = getClass().getAnnotation(DbUnitConfiguration.class);
+ executions = dbUnitConfiguration.dbUnitExecutions();
+ }
- IDatabaseConnection connection = new DatabaseConnection(getDatasource(dbUnitConfiguration.dataSource())
- .getConnection(), dbUnitConfiguration.schema());
+ for (DbUnitExecution dbUnitExecution : executions)
+ {
+ String[] datasets = dbUnitExecution.datasets();
+ String dataSourceName = dbUnitExecution.dataSource();
+ IDatabaseConnection connection = new DatabaseConnection(
+ getDatasource(dataSourceName).getConnection(),
+ dbUnitExecution.schema());
+
try
{
- ITableFilter tableFilter = new RegExpTableFilter(dbUnitConfiguration.excludedTables());
+ ITableFilter tableFilter = new RegExpTableFilter(dbUnitExecution.excludedTables());
- if (dbUnitConfiguration.truncateAll())
+ if (dbUnitExecution.truncateAll())
{
- truncateAll(connection, tableFilter);
+ truncateAll(connection, tableFilter, dataSourceName);
}
for (String datasetFile : datasets)
{
- importDataSet(createDataset(datasetFile), connection, tableFilter);
+ importDataSet(createDataset(datasetFile), connection, tableFilter, dataSourceName);
}
}
finally
@@ -108,9 +127,10 @@
return dataSet;
}
- private void importDataSet(IDataSet dataSet, IDatabaseConnection connection, ITableFilter tableFilter)
- throws SQLException, DataSetException, DatabaseUnitException
+ private void importDataSet(IDataSet dataSet, IDatabaseConnection connection, ITableFilter tableFilter,
+ String dataSourceName) throws SQLException, DataSetException, DatabaseUnitException
{
+
if (dataSet == null)
{
throw new IllegalArgumentException("dataSet is null");
@@ -120,6 +140,7 @@
log.debug("Tables: {}", ArrayUtils.toString(orderedDataset.getTableNames()));
// if a sorted dataset is available, use table sequence for sorting
+ IDataSet truncateDataSet = getTruncateDataset(dataSourceName, connection.getSchema());
if (truncateDataSet != null)
{
ITableFilter filter = new SequenceTableFilter(truncateDataSet.getTableNames());
@@ -140,9 +161,10 @@
* @throws DataSetException
* @throws DatabaseUnitException
*/
- private void truncateAll(IDatabaseConnection connection, ITableFilter tableFilter) throws SQLException,
- DataSetException, DatabaseUnitException
+ private void truncateAll(IDatabaseConnection connection, ITableFilter tableFilter, String dataSourceName)
+ throws SQLException, DataSetException, DatabaseUnitException
{
+ IDataSet truncateDataSet = getTruncateDataset(dataSourceName, connection.getSchema());
if (truncateDataSet == null)
{
log.debug("Generating sorted dataset for initial cleanup");
@@ -152,6 +174,7 @@
tableFilter,
unsortedDataSet).getTableNames());
truncateDataSet = new FilteredDataSet(tableFilter, new FilteredDataSet(filter, unsortedDataSet));
+ storeTruncateDataset(dataSourceName, connection.getSchema(), truncateDataSet);
log.debug("Sorted dataset generated");
}
@@ -162,6 +185,16 @@
}
}
+ private IDataSet getTruncateDataset(String datasourceName, String schema)
+ {
+ return truncateDataSetCache.get(datasourceName + "_" + StringUtils.defaultString(schema));
+ }
+
+ private IDataSet storeTruncateDataset(String datasourceName, String schema, IDataSet dataset)
+ {
+ return truncateDataSetCache.put(datasourceName + "_" + StringUtils.defaultString(schema), dataset);
+ }
+
@SuppressWarnings("unchecked")
protected DataSource getDatasource(String name)
{
Added: trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/MultipleDatasourceDbUnitTest.java
===================================================================
--- trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/MultipleDatasourceDbUnitTest.java (rev 0)
+++ trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/MultipleDatasourceDbUnitTest.java 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,27 @@
+package it.openutils.testing.testng;
+
+import it.openutils.testing.DbUnitConfiguration;
+import it.openutils.testing.DbUnitExecution;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.testng.annotations.Test;
+
+
+/**
+ * @author fgiust
+ * @version $Id: $
+ */
+@ContextConfiguration(locations = {"/spring-tests.xml" })
+@DbUnitConfiguration(dbUnitExecutions = {
+ @DbUnitExecution(datasets = {"/db1-load.xml" }, dataSource = "dataSource1"),
+ @DbUnitExecution(datasets = {"/db2-load.xml" }, dataSource = "dataSource2") })
+public class MultipleDatasourceDbUnitTest extends AbstractDbUnitTestNGSpringContextTests
+{
+
+ @Test
+ public void testLoad() throws Exception
+ {
+ // do nothing
+ }
+
+}
Property changes on: trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/MultipleDatasourceDbUnitTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Added: trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/SingleDatasourceDbUnitTest.java
===================================================================
--- trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/SingleDatasourceDbUnitTest.java (rev 0)
+++ trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/SingleDatasourceDbUnitTest.java 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,31 @@
+package it.openutils.testing.testng;
+
+import it.openutils.testing.DbUnitExecution;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.TestExecutionListeners;
+import org.springframework.test.context.transaction.TransactionConfiguration;
+import org.springframework.test.context.transaction.TransactionalTestExecutionListener;
+import org.springframework.transaction.annotation.Transactional;
+import org.testng.annotations.Test;
+
+
+/**
+ * @author fgiust
+ * @version $Id: $
+ */
+@ContextConfiguration(locations = {"/spring-tests.xml" })
+@DbUnitExecution(datasets = {"/db1-load.xml" }, dataSource = "dataSource1")
+@TestExecutionListeners({TransactionalTestExecutionListener.class })
+@Transactional
+@TransactionConfiguration(transactionManager = "transactionManager1")
+public class SingleDatasourceDbUnitTest extends AbstractDbUnitTestNGSpringContextTests
+{
+
+ @Test
+ public void testLoad() throws Exception
+ {
+ // do nothing
+ }
+
+}
Property changes on: trunk/openutils-testing-testng/src/test/java/it/openutils/testing/testng/SingleDatasourceDbUnitTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Added: trunk/openutils-testing-testng/src/test/resources/db1-load.xml
===================================================================
--- trunk/openutils-testing-testng/src/test/resources/db1-load.xml (rev 0)
+++ trunk/openutils-testing-testng/src/test/resources/db1-load.xml 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,8 @@
+<dataset>
+ <table name="ONE">
+ <column>ONE</column>
+ <row>
+ <value>1</value>
+ </row>
+ </table>
+</dataset>
Property changes on: trunk/openutils-testing-testng/src/test/resources/db1-load.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Added: trunk/openutils-testing-testng/src/test/resources/db2-load.xml
===================================================================
--- trunk/openutils-testing-testng/src/test/resources/db2-load.xml (rev 0)
+++ trunk/openutils-testing-testng/src/test/resources/db2-load.xml 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,8 @@
+<dataset>
+ <table name="ONE">
+ <column>TWO</column>
+ <row>
+ <value>2</value>
+ </row>
+ </table>
+</dataset>
Property changes on: trunk/openutils-testing-testng/src/test/resources/db2-load.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Added: trunk/openutils-testing-testng/src/test/resources/log4j.dtd
===================================================================
--- trunk/openutils-testing-testng/src/test/resources/log4j.dtd (rev 0)
+++ trunk/openutils-testing-testng/src/test/resources/log4j.dtd 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,166 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<!-- Authors: Chris Taylor, Ceki Gulcu. -->
+
+<!-- Version: 1.2 -->
+
+<!-- A configuration element consists of optional renderer
+elements,appender elements, categories and an optional root
+element. -->
+
+<!ELEMENT log4j:configuration (renderer*, appender*,(category|logger)*,root?,
+ categoryFactory?)>
+
+<!-- The "threshold" attribute takes a level value such that all -->
+<!-- logging statements with a level equal or below this value are -->
+<!-- disabled. -->
+
+<!-- Setting the "debug" enable the printing of internal log4j logging -->
+<!-- statements. -->
+
+<!-- By default, debug attribute is "null", meaning that we not do touch -->
+<!-- internal log4j logging settings. The "null" value for the threshold -->
+<!-- attribute can be misleading. The threshold field of a repository -->
+<!-- cannot be set to null. The "null" value for the threshold attribute -->
+<!-- simply means don't touch the threshold field, the threshold field -->
+<!-- keeps its old value. -->
+
+<!ATTLIST log4j:configuration
+ xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/"
+ threshold (all|debug|info|warn|error|fatal|off|null) "null"
+ debug (true|false|null) "null"
+>
+
+<!-- renderer elements allow the user to customize the conversion of -->
+<!-- message objects to String. -->
+
+<!ELEMENT renderer EMPTY>
+<!ATTLIST renderer
+ renderedClass CDATA #REQUIRED
+ renderingClass CDATA #REQUIRED
+>
+
+<!-- Appenders must have a name and a class. -->
+<!-- Appenders may contain an error handler, a layout, optional parameters -->
+<!-- and filters. They may also reference (or include) other appenders. -->
+<!ELEMENT appender (errorHandler?, param*, layout?, filter*, appender-ref*)>
+<!ATTLIST appender
+ name ID #REQUIRED
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT layout (param*)>
+<!ATTLIST layout
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT filter (param*)>
+<!ATTLIST filter
+ class CDATA #REQUIRED
+>
+
+<!-- ErrorHandlers can be of any class. They can admit any number of -->
+<!-- parameters. -->
+
+<!ELEMENT errorHandler (param*, root-ref?, logger-ref*, appender-ref?)>
+<!ATTLIST errorHandler
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT root-ref EMPTY>
+
+<!ELEMENT logger-ref EMPTY>
+<!ATTLIST logger-ref
+ ref IDREF #REQUIRED
+>
+
+<!ELEMENT param EMPTY>
+<!ATTLIST param
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED
+>
+
+
+<!-- The priority class is org.apache.log4j.Level by default -->
+<!ELEMENT priority (param*)>
+<!ATTLIST priority
+ class CDATA #IMPLIED
+ value CDATA #REQUIRED
+>
+
+<!-- The level class is org.apache.log4j.Level by default -->
+<!ELEMENT level (param*)>
+<!ATTLIST level
+ class CDATA #IMPLIED
+ value CDATA #REQUIRED
+>
+
+
+<!-- If no level element is specified, then the configurator MUST not -->
+<!-- touch the level of the named category. -->
+<!ELEMENT category (param*,(priority|level)?,appender-ref*)>
+<!ATTLIST category
+ class CDATA #IMPLIED
+ name CDATA #REQUIRED
+ additivity (true|false) "true"
+>
+
+<!-- If no level element is specified, then the configurator MUST not -->
+<!-- touch the level of the named logger. -->
+<!ELEMENT logger (level?,appender-ref*)>
+<!ATTLIST logger
+ name ID #REQUIRED
+ additivity (true|false) "true"
+>
+
+
+<!ELEMENT categoryFactory (param*)>
+<!ATTLIST categoryFactory
+ class CDATA #REQUIRED>
+
+<!ELEMENT appender-ref EMPTY>
+<!ATTLIST appender-ref
+ ref IDREF #REQUIRED
+>
+
+<!-- If no priority element is specified, then the configurator MUST not -->
+<!-- touch the priority of root. -->
+<!-- The root category always exists and cannot be subclassed. -->
+<!ELEMENT root (param*, (priority|level)?, appender-ref*)>
+
+
+<!-- ==================================================================== -->
+<!-- A logging event -->
+<!-- ==================================================================== -->
+<!ELEMENT log4j:eventSet (log4j:event*)>
+<!ATTLIST log4j:eventSet
+ xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/"
+ version (1.1|1.2) "1.2"
+ includesLocationInfo (true|false) "true"
+>
+
+
+
+<!ELEMENT log4j:event (log4j:message, log4j:NDC?, log4j:throwable?,
+ log4j:locationInfo?) >
+
+<!-- The timestamp format is application dependent. -->
+<!ATTLIST log4j:event
+ logger CDATA #REQUIRED
+ level CDATA #REQUIRED
+ thread CDATA #REQUIRED
+ timestamp CDATA #REQUIRED
+>
+
+<!ELEMENT log4j:message (#PCDATA)>
+<!ELEMENT log4j:NDC (#PCDATA)>
+
+<!ELEMENT log4j:throwable (#PCDATA)>
+
+<!ELEMENT log4j:locationInfo EMPTY>
+<!ATTLIST log4j:locationInfo
+ class CDATA #REQUIRED
+ method CDATA #REQUIRED
+ file CDATA #REQUIRED
+ line CDATA #REQUIRED
+>
Property changes on: trunk/openutils-testing-testng/src/test/resources/log4j.dtd
___________________________________________________________________
Name: svn:mime-type
+ text/xml
Name: svn:eol-style
+ native
Added: trunk/openutils-testing-testng/src/test/resources/log4j.xml
===================================================================
--- trunk/openutils-testing-testng/src/test/resources/log4j.xml (rev 0)
+++ trunk/openutils-testing-testng/src/test/resources/log4j.xml 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+<log4j:configuration>
+ <!-- log4j test configuration -->
+ <appender name="test-appender" class="org.apache.log4j.ConsoleAppender">
+ <layout class="org.apache.log4j.PatternLayout">
+ <param name="ConversionPattern" value="%-5p %c.%M(%C{1}.java:%L) %m%n" />
+ </layout>
+ </appender>
+ <category name="org">
+ <priority value="WARN" />
+ </category>
+ <category name="com">
+ <priority value="WARN" />
+ </category>
+ <category name="net">
+ <priority value="WARN" />
+ </category>
+ <category name="info">
+ <priority value="WARN" />
+ </category>
+ <category name="it">
+ <priority value="WARN" />
+ </category>
+ <root>
+ <priority value="debug" />
+ <appender-ref ref="test-appender" />
+ </root>
+</log4j:configuration>
\ No newline at end of file
Property changes on: trunk/openutils-testing-testng/src/test/resources/log4j.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Added: trunk/openutils-testing-testng/src/test/resources/spring-tests.xml
===================================================================
--- trunk/openutils-testing-testng/src/test/resources/spring-tests.xml (rev 0)
+++ trunk/openutils-testing-testng/src/test/resources/spring-tests.xml 2008-01-09 22:33:43 UTC (rev 523)
@@ -0,0 +1,23 @@
+<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:util="http://www.springframework.org/schema/util"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
+ http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd">
+ <bean id="dataSource1" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
+ <property name="driverClassName" value="org.apache.derby.jdbc.EmbeddedDriver" />
+ <property name="url" value="jdbc:derby:target/test-db1;create=true" />
+ <property name="username" value="test" />
+ <property name="password" value="test" />
+ </bean>
+ <bean id="transactionManager1" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
+ <property name="dataSource" ref="dataSource1" />
+ </bean>
+ <bean id="dataSource2" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
+ <property name="driverClassName" value="org.apache.derby.jdbc.EmbeddedDriver" />
+ <property name="url" value="jdbc:derby:target/test-db2;create=true" />
+ <property name="username" value="test" />
+ <property name="password" value="test" />
+ </bean>
+ <bean id="transactionManager2" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
+ <property name="dataSource" ref="dataSource2" />
+ </bean>
+</beans>
\ No newline at end of file
Property changes on: trunk/openutils-testing-testng/src/test/resources/spring-tests.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|