Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit
In directory usw-pr-cvs1:/tmp/cvs-serv24183/dbunit/src/test/org/dbunit
Modified Files:
AbstractDatabaseTest.java Main.java
Log Message:
I added a system property that allows schema, table and column names escaping.
The property value is an escape pattern where the ? is replaced by the name.
For example, the pattern "[?]" is expanded as "[MY_NAME]" for a table named
"MY_TABLE".
Attention this feature is not compatible with the qualified names name feature!
Index: AbstractDatabaseTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/AbstractDatabaseTest.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** AbstractDatabaseTest.java 13 Jun 2002 17:24:59 -0000 1.9
--- AbstractDatabaseTest.java 4 Aug 2002 01:07:13 -0000 1.10
***************
*** 33,36 ****
--- 33,37 ----
public abstract class AbstractDatabaseTest extends DatabaseTestCase
{
+ private static final String ESCAPE_PATTERN_KEY = "dbunit.name.escapePattern";
protected IDatabaseConnection _connection;
***************
*** 52,55 ****
--- 53,66 ----
}
+ public static void setEscapePattern(String pattern)
+ {
+ if (pattern == null)
+ {
+ System.getProperties().remove(ESCAPE_PATTERN_KEY);
+ return;
+ }
+ System.setProperty(ESCAPE_PATTERN_KEY, pattern);
+ }
+
////////////////////////////////////////////////////////////////////////////
// TestCase class
***************
*** 67,70 ****
--- 78,82 ----
_connection = null;
+ setEscapePattern(null);
}
Index: Main.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/Main.java,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** Main.java 3 Aug 2002 02:26:40 -0000 1.23
--- Main.java 4 Aug 2002 01:07:13 -0000 1.24
***************
*** 26,29 ****
--- 26,31 ----
import org.dbunit.dataset.xml.XmlDataSet;
import org.dbunit.dataset.xml.FlatXmlDataSet;
+ import org.dbunit.dataset.IDataSet;
+ import org.dbunit.operation.DatabaseOperation;
import java.io.FileOutputStream;
***************
*** 38,43 ****
--- 40,48 ----
public static void main(String[] args) throws Exception
{
+ System.setProperty("dbunit.name.escapePattern", "\"?\"");
IDatabaseConnection connection =
DatabaseEnvironment.getInstance().getConnection();
+ IDataSet dataSet = new XmlDataSet(new FileInputStream("dataSetTest.xml"));
+ DatabaseOperation.CLEAN_INSERT.execute(connection, dataSet);
// String[] tableNames = connection.createDataSet().getTableNames();
***************
*** 48,57 ****
//
//
! // FlatXmlDataSet.write(new FilteredDataSet(tableNames,
! // connection.createDataSet()),
! // new FileOutputStream("test.xml"));
! FlatXmlDataSet.write(new FlatXmlDataSet(
! new FileInputStream("P:/dbunit-cvs/dbunit/src/xml/flatXmlDataSetDuplicateTest.xml")),
! new FileOutputStream("flattest.xml"));
--- 53,61 ----
//
//
! FlatXmlDataSet.write(connection.createDataSet(),
! new FileOutputStream("test.xml"));
! // FlatXmlDataSet.write(new FlatXmlDataSet(
! // new FileInputStream("P:/dbunit-cvs/dbunit/src/xml/flatXmlDataSetDuplicateTest.xml")),
! // new FileOutputStream("flattest.xml"));
|