You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(5) |
Jul
(7) |
Aug
(37) |
Sep
|
Oct
|
Nov
(1) |
Dec
(22) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(8) |
Feb
(68) |
Mar
(72) |
Apr
(149) |
May
(32) |
Jun
(46) |
Jul
(26) |
Aug
(59) |
Sep
(25) |
Oct
(18) |
Nov
(4) |
Dec
(3) |
2004 |
Jan
(90) |
Feb
(19) |
Mar
(38) |
Apr
(41) |
May
(44) |
Jun
(2) |
Jul
(10) |
Aug
|
Sep
(14) |
Oct
|
Nov
(1) |
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(15) |
Jun
(1) |
Jul
|
Aug
(9) |
Sep
|
Oct
(17) |
Nov
|
Dec
|
2006 |
Jan
(1) |
Feb
(16) |
Mar
|
Apr
(1) |
May
(48) |
Jun
|
Jul
(2) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(29) |
2007 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
(23) |
Mar
(31) |
Apr
|
May
(26) |
Jun
(6) |
Jul
(1) |
Aug
|
Sep
(7) |
Oct
(1) |
Nov
(8) |
Dec
(8) |
2009 |
Jan
(5) |
Feb
(9) |
Mar
(1) |
Apr
|
May
(23) |
Jun
(3) |
Jul
|
Aug
(1) |
Sep
(9) |
Oct
(28) |
Nov
(18) |
Dec
(8) |
2010 |
Jan
(19) |
Feb
(24) |
Mar
(3) |
Apr
|
May
(5) |
Jun
(4) |
Jul
|
Aug
(1) |
Sep
(11) |
Oct
|
Nov
(2) |
Dec
(1) |
2011 |
Jan
|
Feb
(7) |
Mar
|
Apr
(6) |
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(32) |
Oct
(6) |
Nov
|
Dec
|
From: <mla...@us...> - 2004-05-18 01:27:46
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/ext/mssql In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22673/src/java/org/dbunit/ext/mssql Modified Files: InsertIdentityOperation.java Log Message: Renamed PROPERTY_IDENTITY_COLUMN_FILTER constant name and value for consistency sake. Index: InsertIdentityOperation.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/ext/mssql/InsertIdentityOperation.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** InsertIdentityOperation.java 18 Apr 2004 02:48:19 -0000 1.4 --- InsertIdentityOperation.java 18 May 2004 01:27:31 -0000 1.5 *************** *** 56,61 **** public class InsertIdentityOperation extends AbstractOperation { ! public static final String IDENTITY_COLUMN_FILTER = ! "http://www.dbunit.org/features/mssql/identityColumnFilter"; public static final DatabaseOperation INSERT = --- 56,61 ---- public class InsertIdentityOperation extends AbstractOperation { ! public static final String PROPERTY_IDENTITY_COLUMN_FILTER = ! "http://www.dbunit.org/properties/mssql/identityColumnFilter"; public static final DatabaseOperation INSERT = *************** *** 94,98 **** DatabaseConfig config = connection.getConfig(); IColumnFilter identityFilter = (IColumnFilter)config.getProperty( ! IDENTITY_COLUMN_FILTER); if (identityFilter == null) { --- 94,98 ---- DatabaseConfig config = connection.getConfig(); IColumnFilter identityFilter = (IColumnFilter)config.getProperty( ! PROPERTY_IDENTITY_COLUMN_FILTER); if (identityFilter == null) { |
From: <mla...@us...> - 2004-05-18 01:26:50
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/database In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22475/src/test/org/dbunit/database Modified Files: DatabaseDataSetTest.java Log Message: Added ability to determine the primary keys with IColumnFilter interface instead of DatabaseMetaData.getPrimaryKeys(). Primary keys sequence is not predictable when using filter. Index: DatabaseDataSetTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/database/DatabaseDataSetTest.java,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** DatabaseDataSetTest.java 15 Mar 2004 16:44:20 -0000 1.24 --- DatabaseDataSetTest.java 18 May 2004 01:26:41 -0000 1.25 *************** *** 24,27 **** --- 24,28 ---- import org.dbunit.DatabaseEnvironment; import org.dbunit.dataset.*; + import org.dbunit.dataset.filter.DefaultColumnFilter; import org.dbunit.dataset.datatype.DataType; *************** *** 189,192 **** --- 190,218 ---- } + public void testGetPrimaryKeysWithColumnFilters() throws Exception + { + String tableName = DataSetUtils.getQualifiedName( + _connection.getSchema(), "PK_TABLE"); + String[] expected = {"PK0", "PK2"}; + + DefaultColumnFilter filter = new DefaultColumnFilter(); + filter.includeColumn("PK0"); + filter.includeColumn("PK2"); + + IDatabaseConnection connection = new DatabaseConnection( + _connection.getConnection(), _connection.getSchema()); + connection.getConfig().setProperty( + DatabaseConfig.PROPERTY_PRIMARY_KEY_FILTER, filter); + + ITableMetaData metaData = connection.createDataSet().getTableMetaData(tableName); + Column[] columns = metaData.getPrimaryKeys(); + + assertEquals("column count", expected.length, columns.length); + for (int i = 0; i < columns.length; i++) + { + assertEquals("column name", expected[i], columns[i].getColumnName()); + } + } + // public void testGetTableNamesAndCaseSensitive() throws Exception // { |
From: <mla...@us...> - 2004-05-18 01:26:50
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22475/src/java/org/dbunit/database Modified Files: DatabaseConfig.java DatabaseTableMetaData.java Log Message: Added ability to determine the primary keys with IColumnFilter interface instead of DatabaseMetaData.getPrimaryKeys(). Primary keys sequence is not predictable when using filter. Index: DatabaseConfig.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/DatabaseConfig.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** DatabaseConfig.java 22 Jan 2004 02:54:17 -0000 1.4 --- DatabaseConfig.java 18 May 2004 01:26:40 -0000 1.5 *************** *** 47,50 **** --- 47,52 ---- public static final String PROPERTY_TABLE_TYPE = "http://www.dbunit.org/properties/tableType"; + public static final String PROPERTY_PRIMARY_KEY_FILTER = + "http://www.dbunit.org/properties/primaryKeyFilter"; public static final String FEATURE_QUALIFIED_TABLE_NAMES = Index: DatabaseTableMetaData.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/DatabaseTableMetaData.java,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** DatabaseTableMetaData.java 31 Mar 2004 01:22:27 -0000 1.21 --- DatabaseTableMetaData.java 18 May 2004 01:26:40 -0000 1.22 *************** *** 23,26 **** --- 23,27 ---- import org.dbunit.dataset.*; + import org.dbunit.dataset.filter.IColumnFilter; import org.dbunit.dataset.datatype.DataType; import org.dbunit.dataset.datatype.IDataTypeFactory; *************** *** 247,251 **** try { ! _primaryKeys = getPrimaryKeys(getColumns(), getPrimaryKeyNames()); } catch (SQLException e) --- 248,264 ---- try { ! DatabaseConfig config = _connection.getConfig(); ! IColumnFilter primaryKeysFilter = (IColumnFilter)config.getProperty( ! DatabaseConfig.PROPERTY_PRIMARY_KEY_FILTER); ! if (primaryKeysFilter != null) ! { ! _primaryKeys = getPrimaryKeys(getTableName(), getColumns(), ! primaryKeysFilter); ! } ! else ! { ! _primaryKeys = getPrimaryKeys(getColumns(), ! getPrimaryKeyNames()); ! } } catch (SQLException e) |
From: <mla...@us...> - 2004-05-18 01:26:50
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22475/src/java/org/dbunit/dataset Modified Files: AbstractTableMetaData.java Log Message: Added ability to determine the primary keys with IColumnFilter interface instead of DatabaseMetaData.getPrimaryKeys(). Primary keys sequence is not predictable when using filter. Index: AbstractTableMetaData.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/AbstractTableMetaData.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** AbstractTableMetaData.java 22 Jan 2004 02:54:18 -0000 1.9 --- AbstractTableMetaData.java 18 May 2004 01:26:41 -0000 1.10 *************** *** 22,25 **** --- 22,27 ---- package org.dbunit.dataset; + import org.dbunit.dataset.filter.IColumnFilter; + import java.util.ArrayList; import java.util.List; *************** *** 49,61 **** keyList.add(primaryKey); } ! // else ! // { ! // // primary key not found in table ! // if (_primaryKeys[i] == null) ! // { ! // throw new NoPrimaryKeyException("<" + primaryKeys[i] + ! // "> not found in table <" + tableName + ">"); ! // } ! // } } --- 51,70 ---- keyList.add(primaryKey); } ! } ! ! return (Column[])keyList.toArray(new Column[0]); ! } ! ! protected static Column[] getPrimaryKeys(String tableName, Column[] columns, ! IColumnFilter columnFilter) ! { ! List keyList = new ArrayList(); ! for (int i = 0; i < columns.length; i++) ! { ! Column column = columns[i]; ! if (columnFilter.accept(tableName, column)) ! { ! keyList.add(column); ! } } |
From: <mla...@us...> - 2004-05-12 10:47:49
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/ext/oracle In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27342/src/java/org/dbunit/ext/oracle Modified Files: OracleDataTypeFactory.java Log Message: Added NCHAR2 support as proposed by Deepak Kaimal. Index: OracleDataTypeFactory.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/ext/oracle/OracleDataTypeFactory.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** OracleDataTypeFactory.java 3 Apr 2004 18:14:07 -0000 1.10 --- OracleDataTypeFactory.java 12 May 2004 10:47:23 -0000 1.11 *************** *** 74,77 **** --- 74,83 ---- } + // NCHAR + if (sqlTypeName.startsWith("NCHAR")) + { + return DataType.CHAR; + } + // LONG RAW if (LONG_RAW.toString().equals(sqlTypeName)) |
From: <mla...@us...> - 2004-05-12 10:47:34
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/ext/oracle In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27342/src/test/org/dbunit/ext/oracle Modified Files: OracleDataTypeFactoryTest.java Log Message: Added NCHAR2 support as proposed by Deepak Kaimal. Index: OracleDataTypeFactoryTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/ext/oracle/OracleDataTypeFactoryTest.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** OracleDataTypeFactoryTest.java 3 Apr 2004 18:14:08 -0000 1.7 --- OracleDataTypeFactoryTest.java 12 May 2004 10:47:24 -0000 1.8 *************** *** 104,106 **** --- 104,126 ---- } + public void testCreateNChar2Type() throws Exception + { + int sqlType = Types.OTHER; + String sqlTypeName = "NCHAR2"; + + DataType expected = DataType.CHAR; + DataType actual = createFactory().createDataType(sqlType, sqlTypeName); + assertSame("type", expected, actual); + } + + public void testCreateNVarChar2Type() throws Exception + { + int sqlType = Types.OTHER; + String sqlTypeName = "NVARCHAR2"; + + DataType expected = DataType.VARCHAR; + DataType actual = createFactory().createDataType(sqlType, sqlTypeName); + assertSame("type", expected, actual); + } + } |
From: <mla...@us...> - 2004-05-12 02:48:51
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/database In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9428/src/test/org/dbunit/database Modified Files: DatabaseSequenceFilterTest.java Log Message: Commenting out failling test until fixed. Index: DatabaseSequenceFilterTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/database/DatabaseSequenceFilterTest.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** DatabaseSequenceFilterTest.java 12 May 2004 02:34:51 -0000 1.2 --- DatabaseSequenceFilterTest.java 12 May 2004 02:48:42 -0000 1.3 *************** *** 98,101 **** --- 98,102 ---- assertEquals("filtered", Arrays.asList(expectedFiltered), Arrays.asList(actualFiltered)); } + /* public void testGetTableNamesCyclic() throws Exception *************** *** 122,125 **** --- 123,127 ---- } } + */ } |
From: <mla...@us...> - 2004-05-12 02:35:02
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6775/src/java/org/dbunit/database Modified Files: DatabaseSequenceFilter.java Log Message: Rolling back DatabaseSequenceFilter to DbUnit 2.0 version because of multiple problems with latest revisions. This means no more cyclic dependencies detection and no "qualified table name" feature support for now. Index: DatabaseSequenceFilter.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/DatabaseSequenceFilter.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** DatabaseSequenceFilter.java 8 May 2004 21:00:31 -0000 1.8 --- DatabaseSequenceFilter.java 12 May 2004 02:34:51 -0000 1.9 *************** *** 21,27 **** package org.dbunit.database; - import org.dbunit.DatabaseUnitRuntimeException; import org.dbunit.dataset.DataSetException; - import org.dbunit.dataset.DataSetUtils; import org.dbunit.dataset.filter.SequenceTableFilter; --- 21,25 ---- *************** *** 29,33 **** import java.sql.ResultSet; import java.sql.SQLException; ! import java.util.*; /** --- 27,38 ---- import java.sql.ResultSet; import java.sql.SQLException; ! import java.util.Arrays; ! import java.util.HashMap; ! import java.util.HashSet; ! import java.util.Iterator; ! import java.util.LinkedList; ! import java.util.List; ! import java.util.Map; ! import java.util.Set; /** *************** *** 42,45 **** --- 47,55 ---- public class DatabaseSequenceFilter extends SequenceTableFilter { + + /** Cache for tablename/foreign key mappings. */ + private static Map _dependentMap; + + /** * Create a DatabaseSequenceFilter that only exposes specified table names. *************** *** 66,235 **** * @param tableNames A string array of table names to be ordered. * @return The re-ordered array of table names. ! * @throws SQLException if a database access error occurs ! * @throws CyclicTablesDependencyException if encounter a cyclic dependency */ ! private static String[] sortTableNames(IDatabaseConnection connection, ! String[] tableNames) throws DataSetException, SQLException ! { ! try ! { ! TableSequenceComparator tableSequenceComparator = ! new TableSequenceComparator(connection); ! ! tableNames = (String[])tableNames.clone(); ! Arrays.sort(tableNames, tableSequenceComparator); ! return tableNames; ! } ! catch (DatabaseUnitRuntimeException e) ! { ! if (e.getException() instanceof CyclicTablesDependencyException) ! { ! throw (CyclicTablesDependencyException)e.getException(); ! } ! if (e.getException() instanceof SQLException) ! { ! throw (SQLException)e.getException(); ! } ! ! throw e; ! } ! } ! ! private static class TableSequenceComparator implements Comparator { ! IDatabaseConnection _connection; ! Map _dependentMap = new HashMap(); ! ! public TableSequenceComparator(IDatabaseConnection connection) ! { ! _connection = connection; ! } ! ! public int compare(Object o1, Object o2) ! { ! String tableName1 = (String)o1; ! String tableName2 = (String)o2; ! ! try { ! Set descendants1 = getDescendants(tableName1, null); ! if (descendants1.contains(tableName1)) ! { ! throw new CyclicTablesDependencyException(tableName1); ! } ! if (descendants1.contains(tableName2)) { ! return -1; } ! Set descendants2 = getDescendants(tableName2, null); ! if (descendants2.contains(tableName2)) ! { ! throw new CyclicTablesDependencyException(tableName2); } ! ! if (descendants2.contains(tableName1)) { ! return 1; } } ! catch (SQLException e) ! { ! throw new DatabaseUnitRuntimeException(e); ! } ! catch (CyclicTablesDependencyException e) { ! throw new DatabaseUnitRuntimeException(e); } ! ! return tableName1.compareTo(tableName2); ! } ! ! /** ! * Returns a Set containing the names of all tables which have direct ! * and indirect depency upon specified table. This method is recursive. ! * ! * @param tableName The table we want to know dependant tables ! * @param processed Set of previously processed table names. Must be null ! * on first call. ! * @return The Set of dependent table names. ! * @throws SQLException if a database access error occurs ! */ ! private Set getDescendants(String tableName, Set processed) throws SQLException ! { ! if (processed == null) { - processed = new HashSet(); - } ! Set children = getChildren(tableName); ! for (Iterator it = children.iterator(); it.hasNext();) ! { ! String childName = (String)it.next(); ! if (!processed.contains(childName)) ! { ! processed.add(childName); ! processed.addAll(getDescendants(childName, processed)); ! } } ! return processed; ! } ! /** ! * Returns a Set containing the names of all tables which have first ! * level dependency upon specified table. ! * ! * @param tableName The table whose primary key is to be used in determining ! * dependent foreign key tables. ! * @return The Set of dependent table names. ! * @throws SQLException if a database access error occurs ! */ ! private Set getChildren(String tableName) throws SQLException { ! if (_dependentMap.containsKey(tableName)) ! { ! return (Set)_dependentMap.get(tableName); ! } ! boolean qualifiedNames = _connection.getConfig().getFeature( ! DatabaseConfig.FEATURE_QUALIFIED_TABLE_NAMES); ! String originalTableName = tableName; ! String schemaName = _connection.getSchema(); ! int index = tableName.indexOf("."); ! if (index >= 0) ! { ! schemaName = tableName.substring(0, index); ! tableName = tableName.substring(index + 1); ! } ! DatabaseMetaData metaData = _connection.getConnection().getMetaData(); ! ResultSet resultSet = metaData.getExportedKeys(null, schemaName, tableName); ! try { ! Set foreignTableSet = new HashSet(); ! ! while (resultSet.next()) ! { ! String foreignSchemaName = resultSet.getString(6); ! String foreignTableName = resultSet.getString(7); ! if (qualifiedNames) ! { ! foreignTableName = DataSetUtils.getQualifiedName( ! foreignSchemaName, foreignTableName); ! } ! foreignTableSet.add(foreignTableName); ! } ! _dependentMap.put(originalTableName, foreignTableSet); ! return foreignTableSet; ! } ! finally ! { ! resultSet.close(); } - } } --- 76,198 ---- * @param tableNames A string array of table names to be ordered. * @return The re-ordered array of table names. ! * @throws DataSetException ! * @throws SQLException If an exception is encountered in accessing the database. */ ! static String[] sortTableNames( ! IDatabaseConnection connection, ! String[] tableNames) ! throws DataSetException, SQLException ! // not sure why this throws DataSetException ? - ENP { ! boolean reprocess = true; ! List tmpTableNames = Arrays.asList(tableNames); ! List sortedTableNames = null; ! DatabaseSequenceFilter._dependentMap = new HashMap(); ! ! while (reprocess) { ! sortedTableNames = new LinkedList(); ! ! // re-order 'tmpTableNames' into 'sortedTableNames' ! for (Iterator i = tmpTableNames.iterator(); i.hasNext();) { ! boolean foundDependentInSortedTableNames = false; ! String tmpTable = (String)i.next(); ! Set tmpTableDependents = getDependentTableNames(connection, tmpTable); ! ! int sortedTableIndex = -1; ! for (Iterator k = sortedTableNames.iterator(); k.hasNext();) { ! String sortedTable = (String)k.next(); ! if (tmpTableDependents.contains(sortedTable)) ! { ! sortedTableIndex = sortedTableNames.indexOf(sortedTable); ! foundDependentInSortedTableNames = true; ! break; // end for loop; we know the index ! } } ! ! // add 'tmpTable' to 'sortedTableNames'. ! // Insert it before its first dependent if there are any, ! // otherwise append it to the end of 'sortedTableNames' ! if (foundDependentInSortedTableNames) { ! if (sortedTableIndex < 0) { ! throw new IllegalStateException( ! "sortedTableIndex should be 0 or greater, but is " ! + sortedTableIndex); ! } ! sortedTableNames.add(sortedTableIndex, tmpTable); } ! else { ! sortedTableNames.add(tmpTable); } } ! ! ! ! // don't stop processing until we have a perfect run (no re-ordering) ! if (tmpTableNames.equals(sortedTableNames)) { ! reprocess = false; } ! else { ! tmpTableNames = null; ! tmpTableNames = (List)((LinkedList)sortedTableNames).clone(); } ! }// end 'while (reprocess)' ! ! return (String[])sortedTableNames.toArray(new String[0]); ! } ! ! /** ! * Returns a Set containing the names of all tables which are dependent upon ! * <code>tableName</code>'s primary key as foreign keys. ! * ! * @param connection An IDatabaseConnection to a database that supports ! * referential integrity. ! * @param tableName The table whose primary key is to be used in determining ! * dependent foreign key tables. ! * @return The Set of dependent foreign key table names. ! * @throws SQLException If an exception is encountered in accessing the database. ! */ ! private static Set getDependentTableNames( ! IDatabaseConnection connection, ! String tableName) ! throws SQLException ! { ! if (_dependentMap.containsKey(tableName)) { ! return (Set)_dependentMap.get(tableName); ! } ! DatabaseMetaData metaData = connection.getConnection().getMetaData(); ! String schema = connection.getSchema(); ! ResultSet resultSet = metaData.getExportedKeys(null, schema, tableName); ! try ! { ! Set foreignTableSet = new HashSet(); ! while (resultSet.next()) { ! // TODO : add support for qualified table names ! // String foreignSchemaName = resultSet.getString(6); ! String foreignTableName = resultSet.getString(7); ! foreignTableSet.add(foreignTableName); } + _dependentMap.put(tableName, foreignTableSet); + return foreignTableSet; + } + finally + { + resultSet.close(); + } } |
From: <mla...@us...> - 2004-05-12 02:35:02
|
Update of /cvsroot/dbunit/dbunit/src/sql In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6775/src/sql Modified Files: hypersonic_fk.sql Log Message: Rolling back DatabaseSequenceFilter to DbUnit 2.0 version because of multiple problems with latest revisions. This means no more cyclic dependencies detection and no "qualified table name" feature support for now. Index: hypersonic_fk.sql =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/sql/hypersonic_fk.sql,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** hypersonic_fk.sql 10 May 2004 23:33:44 -0000 1.1 --- hypersonic_fk.sql 12 May 2004 02:34:51 -0000 1.2 *************** *** 11,15 **** B ! The correct result should be: B, C, E, A, F, G, H, D */ --- 11,15 ---- B ! The correct result should be: D, A, F, C, G, E, H, B */ *************** *** 17,72 **** CREATE TABLE A (PKA NUMERIC, ! FKC NUMERIC, ! FKE NUMERIC, PRIMARY KEY (PKA)); CREATE TABLE B (PKB NUMERIC, PRIMARY KEY (PKB)); CREATE TABLE C (PKC NUMERIC, ! FKB NUMERIC, PRIMARY KEY (PKC)); CREATE TABLE D (PKD NUMERIC, - FKA NUMERIC, - FKF NUMERIC, PRIMARY KEY (PKD)); CREATE TABLE E (PKE NUMERIC, ! FKB NUMERIC, PRIMARY KEY (PKE)); CREATE TABLE F (PKF NUMERIC, ! FKC NUMERIC, PRIMARY KEY (PKF)); CREATE TABLE G (PKG NUMERIC, - FKE NUMERIC, PRIMARY KEY (PKG)); CREATE TABLE H (PKH NUMERIC, - FKB NUMERIC, PRIMARY KEY (PKH)); ! ALTER TABLE A ADD CONSTRAINT AC FOREIGN KEY (FKC) REFERENCES C (PKC); ! ALTER TABLE A ADD CONSTRAINT AE FOREIGN KEY (FKE) REFERENCES E (PKE); ! ! ALTER TABLE C ADD CONSTRAINT CB FOREIGN KEY (FKB) REFERENCES B (PKB); ! ! ALTER TABLE D ADD CONSTRAINT DA FOREIGN KEY (FKA) REFERENCES A (PKA); ! ALTER TABLE D ADD CONSTRAINT DF FOREIGN KEY (FKF) REFERENCES F (PKF); ! ALTER TABLE E ADD CONSTRAINT EB FOREIGN KEY (FKB) REFERENCES B (PKB); ! ALTER TABLE F ADD CONSTRAINT FC FOREIGN KEY (FKC) REFERENCES C (PKC); ! ALTER TABLE G ADD CONSTRAINT GE FOREIGN KEY (FKE) REFERENCES E (PKE); ! ALTER TABLE H ADD CONSTRAINT HB FOREIGN KEY (FKB) REFERENCES B (PKB); \ No newline at end of file --- 17,70 ---- CREATE TABLE A (PKA NUMERIC, ! FKD NUMERIC, PRIMARY KEY (PKA)); CREATE TABLE B (PKB NUMERIC, + FKC NUMERIC, + FKE NUMERIC, + FKH NUMERIC, PRIMARY KEY (PKB)); CREATE TABLE C (PKC NUMERIC, ! FKA NUMERIC, ! FKF NUMERIC, PRIMARY KEY (PKC)); CREATE TABLE D (PKD NUMERIC, PRIMARY KEY (PKD)); CREATE TABLE E (PKE NUMERIC, ! FKA NUMERIC, ! FKG NUMERIC, PRIMARY KEY (PKE)); CREATE TABLE F (PKF NUMERIC, ! FKD NUMERIC, PRIMARY KEY (PKF)); CREATE TABLE G (PKG NUMERIC, PRIMARY KEY (PKG)); CREATE TABLE H (PKH NUMERIC, PRIMARY KEY (PKH)); ! ALTER TABLE A ADD CONSTRAINT AD FOREIGN KEY (FKD) REFERENCES D (PKD); ! ALTER TABLE B ADD CONSTRAINT BC FOREIGN KEY (FKC) REFERENCES C (PKC); ! ALTER TABLE B ADD CONSTRAINT BE FOREIGN KEY (FKE) REFERENCES E (PKE); ! ALTER TABLE B ADD CONSTRAINT BH FOREIGN KEY (FKH) REFERENCES H (PKH); ! ALTER TABLE C ADD CONSTRAINT CA FOREIGN KEY (FKA) REFERENCES A (PKA); ! ALTER TABLE C ADD CONSTRAINT CF FOREIGN KEY (FKF) REFERENCES F (PKF); ! ALTER TABLE E ADD CONSTRAINT EA FOREIGN KEY (FKA) REFERENCES A (PKA); ! ALTER TABLE E ADD CONSTRAINT EG FOREIGN KEY (FKG) REFERENCES G (PKG); ! ALTER TABLE F ADD CONSTRAINT FD FOREIGN KEY (FKD) REFERENCES D (PKD); \ No newline at end of file |
From: <mla...@us...> - 2004-05-12 02:35:01
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/database In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6775/src/test/org/dbunit/database Modified Files: DatabaseSequenceFilterTest.java Log Message: Rolling back DatabaseSequenceFilter to DbUnit 2.0 version because of multiple problems with latest revisions. This means no more cyclic dependencies detection and no "qualified table name" feature support for now. Index: DatabaseSequenceFilterTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/database/DatabaseSequenceFilterTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DatabaseSequenceFilterTest.java 10 May 2004 23:33:44 -0000 1.1 --- DatabaseSequenceFilterTest.java 12 May 2004 02:34:51 -0000 1.2 *************** *** 83,87 **** { String[] expectedNoFilter = {"A","B","C","D","E","F","G","H",}; ! String[] expectedFiltered = {"B","C","E","A","F","D","G","H",}; HypersonicEnvironment.executeDdlFile(new File("src/sql/hypersonic_fk.sql"), --- 83,87 ---- { String[] expectedNoFilter = {"A","B","C","D","E","F","G","H",}; ! String[] expectedFiltered = {"D","A","F","C","G","E","H","B",}; HypersonicEnvironment.executeDdlFile(new File("src/sql/hypersonic_fk.sql"), |
From: <mla...@us...> - 2004-05-12 01:46:00
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/statement In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29808/src/java/org/dbunit/database/statement Modified Files: AutomaticPreparedBatchStatement.java Log Message: Removed forgotten debug output. Index: AutomaticPreparedBatchStatement.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/statement/AutomaticPreparedBatchStatement.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AutomaticPreparedBatchStatement.java 22 Jan 2004 02:54:18 -0000 1.3 --- AutomaticPreparedBatchStatement.java 12 May 2004 01:45:50 -0000 1.4 *************** *** 61,65 **** { _result += _statement.executeBatch(); - System.out.println(_batchCount); } } --- 61,64 ---- |
From: <mla...@us...> - 2004-05-12 01:11:03
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24316/src/java/org/dbunit/dataset/filter Modified Files: DefaultColumnFilter.java Log Message: Added ability to include/exclude multiple columns in one call. Index: DefaultColumnFilter.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter/DefaultColumnFilter.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DefaultColumnFilter.java 18 Apr 2004 02:48:19 -0000 1.1 --- DefaultColumnFilter.java 12 May 2004 01:10:54 -0000 1.2 *************** *** 45,48 **** --- 45,59 ---- /** + * Add specified columns to accepted column name list. + */ + public void includeColumns(Column[] columns) + { + for (int i = 0; i < columns.length; i++) + { + _includeMatcher.addPattern(columns[i].getColumnName()); + } + } + + /** * Add a new refused column name pattern for all tables. * The following wildcard characters are supported: *************** *** 55,58 **** --- 66,80 ---- } + /** + * Add specified columns to excluded column name list. + */ + public void excludeColumns(Column[] columns) + { + for (int i = 0; i < columns.length; i++) + { + _excludeMatcher.addPattern(columns[i].getColumnName()); + } + } + //////////////////////////////////////////////////////////////////////////// // IColumnFilter interface |
From: <mla...@us...> - 2004-05-12 00:22:08
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14882/src/java/org/dbunit/dataset Added Files: FilteredTableMetaData.java Log Message: Added FilteredTableMetaData similar to RFE 948109 proposed by Mike Kienenberger. --- NEW FILE: FilteredTableMetaData.java --- /* * * The DbUnit Database Testing Framework * Copyright (C)2002-2004, DbUnit.org * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * */ package org.dbunit.dataset; import org.dbunit.dataset.filter.IColumnFilter; import java.util.List; import java.util.ArrayList; /** * @author Manuel Laflamme * @version $Revision: 1.1 $ * @since May 11, 2004 */ public class FilteredTableMetaData extends AbstractTableMetaData { private final String _tableName; private final Column[] _columns; private final Column[] _primaryKeys; public FilteredTableMetaData(ITableMetaData metaData, IColumnFilter columnFilter) throws DataSetException { _tableName = metaData.getTableName(); _columns = getFilteredColumns(_tableName, metaData.getColumns(), columnFilter); _primaryKeys = getFilteredColumns(_tableName, metaData.getPrimaryKeys(), columnFilter); } public static Column[] getFilteredColumns(String tableName, Column[] columns, IColumnFilter columnFilter) { if (columns == null) { return new Column[0]; } List columnList = new ArrayList(); for (int i = 0; i < columns.length; i++) { Column column = columns[i]; if (columnFilter.accept(tableName, column)) { columnList.add(column); } } return (Column[])columnList.toArray(new Column[0]); } //////////////////////////////////////////////////////////////////////////// // ITableMetaData interface public String getTableName() { return _tableName; } public Column[] getColumns() throws DataSetException { return _columns; } public Column[] getPrimaryKeys() throws DataSetException { return _primaryKeys; } } |
From: <mla...@us...> - 2004-05-12 00:22:06
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14882/src/test/org/dbunit/dataset Modified Files: AllTests.java Added Files: FilteredTableMetaDataTest.java Log Message: Added FilteredTableMetaData similar to RFE 948109 proposed by Mike Kienenberger. --- NEW FILE: FilteredTableMetaDataTest.java --- /* * * The DbUnit Database Testing Framework * Copyright (C)2002-2004, DbUnit.org * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * */ package org.dbunit.dataset; import junit.framework.TestCase; import org.dbunit.dataset.datatype.DataType; import org.dbunit.dataset.filter.IColumnFilter; import org.dbunit.dataset.filter.DefaultColumnFilter; /** * @author Manuel Laflamme * @version $Revision: 1.1 $ * @since May 11, 2004 */ public class FilteredTableMetaDataTest extends TestCase { public FilteredTableMetaDataTest(String s) { super(s); } protected IColumnFilter createColumnFilter() throws Exception { DefaultColumnFilter filter = new DefaultColumnFilter(); filter.excludeColumn("excluded*"); return filter; } public void testGetTableName() throws Exception { String expected = "tableName"; ITableMetaData metaData = new DefaultTableMetaData(expected, null, (Column[])null); metaData = new FilteredTableMetaData(metaData, createColumnFilter()); assertEquals("table name", expected, metaData.getTableName()); } public void testGetColumns() throws Exception { Column[] columns = new Column[]{ new Column("numberColumn", DataType.NUMERIC), new Column("stringColumn", DataType.VARCHAR), new Column("booleanColumn", DataType.BOOLEAN), new Column("excludedColumn", DataType.BOOLEAN), }; ITableMetaData metaData = new DefaultTableMetaData("toto", columns, (Column[])null); metaData = new FilteredTableMetaData(metaData, createColumnFilter()); assertEquals("column count", 3, metaData.getColumns().length); for (int i = 0; i < 3; i++) { Column column = columns[i]; assertEquals("columns" + i, column, metaData.getColumns()[i]); } assertEquals("key count", 0, metaData.getPrimaryKeys().length); } public void testGetPrimaryKeys() throws Exception { Column[] columns = new Column[]{ new Column("numberColumn", DataType.NUMERIC), new Column("stringColumn", DataType.VARCHAR), new Column("booleanColumn", DataType.BOOLEAN), new Column("excludedColumn", DataType.BOOLEAN), }; String[] keyNames = new String[]{"booleanColumn", "numberColumn", "excludedColumn"}; ITableMetaData metaData = new DefaultTableMetaData("toto", columns, keyNames); metaData = new FilteredTableMetaData(metaData, createColumnFilter()); Column[] keys = metaData.getPrimaryKeys(); assertEquals("key count", 2, keys.length); for (int i = 0; i < 2; i++) { assertEquals("key name", keyNames[i], keys[i].getColumnName()); } } } Index: AllTests.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/AllTests.java,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** AllTests.java 15 Mar 2004 16:44:20 -0000 1.22 --- AllTests.java 12 May 2004 00:21:52 -0000 1.23 *************** *** 53,56 **** --- 53,57 ---- suite.addTest(new TestSuite(DefaultTableTest.class)); suite.addTest(new TestSuite(FilteredDataSetTest.class)); + suite.addTest(new TestSuite(FilteredTableMetaDataTest.class)); suite.addTest(new TestSuite(ForwardOnlyDataSetTest.class)); suite.addTest(new TestSuite(ForwardOnlyTableTest.class)); |
From: <mla...@us...> - 2004-05-11 21:47:59
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18413/src/test/org/dbunit Modified Files: AbstractDatabaseTest.java Log Message: Oups! Commited code by error! Rolled back to previous revision. Index: AbstractDatabaseTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/AbstractDatabaseTest.java,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** AbstractDatabaseTest.java 10 May 2004 23:02:33 -0000 1.15 --- AbstractDatabaseTest.java 11 May 2004 21:47:46 -0000 1.16 *************** *** 35,38 **** --- 35,40 ---- public abstract class AbstractDatabaseTest extends DatabaseTestCase { + protected IDatabaseConnection _connection; + public AbstractDatabaseTest(String s) { *************** *** 48,52 **** throws Exception { ! return new SortedTable(getConnection().createDataSet().getTable(tableName), new String[]{orderByColumn}); // String sql = "select * from " + tableName + " order by " + orderByColumn; --- 50,54 ---- throws Exception { ! return new SortedTable(_connection.createDataSet().getTable(tableName), new String[]{orderByColumn}); // String sql = "select * from " + tableName + " order by " + orderByColumn; *************** *** 60,71 **** { super.setUp(); } protected void tearDown() throws Exception { - DatabaseOperation.DELETE_ALL.execute(getConnection(), getConnection().createDataSet()); - super.tearDown(); } --- 62,76 ---- { super.setUp(); + + _connection = getEnvironment().getConnection(); } protected void tearDown() throws Exception { super.tearDown(); + DatabaseOperation.DELETE_ALL.execute(_connection, _connection.createDataSet()); + + _connection = null; } |
From: <mla...@us...> - 2004-05-10 23:33:57
|
Update of /cvsroot/dbunit/dbunit/src/sql In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3100/src/sql Added Files: hypersonic_cyclic.sql hypersonic_fk.sql Log Message: Added DatabaseSequenceFilterTest --- NEW FILE: hypersonic_cyclic.sql --- /** Creates tables to test DatabaseSequenceFilter's ordering algorithm with following cyclic dependencies: A / \ D | \ / C / \ E B \ A */ CREATE TABLE A (PKA NUMERIC, FKC NUMERIC, FKD NUMERIC, PRIMARY KEY (PKA)); CREATE TABLE B (PKB NUMERIC, PRIMARY KEY (PKB)); CREATE TABLE C (PKC NUMERIC, FKB NUMERIC, FKE NUMERIC, PRIMARY KEY (PKC)); CREATE TABLE D (PKD NUMERIC, FKC NUMERIC, PRIMARY KEY (PKD)); CREATE TABLE E (PKE NUMERIC, FKA NUMERIC, PRIMARY KEY (PKE)); ALTER TABLE A ADD CONSTRAINT AC FOREIGN KEY (FKC) REFERENCES C (PKC); ALTER TABLE A ADD CONSTRAINT AD FOREIGN KEY (FKD) REFERENCES D (PKD); ALTER TABLE C ADD CONSTRAINT CB FOREIGN KEY (FKB) REFERENCES B (PKB); ALTER TABLE C ADD CONSTRAINT CE FOREIGN KEY (FKE) REFERENCES E (PKE); ALTER TABLE D ADD CONSTRAINT DC FOREIGN KEY (FKC) REFERENCES C (PKC); ALTER TABLE E ADD CONSTRAINT EA FOREIGN KEY (FKA) REFERENCES A (PKA); --- NEW FILE: hypersonic_fk.sql --- /** Creates tables use to test DatabaseSequenceFilter's ordering algorithm with following dependencies: D / \ F A G \ / \ / C E H \ / / B The correct result should be: B, C, E, A, F, G, H, D */ CREATE TABLE A (PKA NUMERIC, FKC NUMERIC, FKE NUMERIC, PRIMARY KEY (PKA)); CREATE TABLE B (PKB NUMERIC, PRIMARY KEY (PKB)); CREATE TABLE C (PKC NUMERIC, FKB NUMERIC, PRIMARY KEY (PKC)); CREATE TABLE D (PKD NUMERIC, FKA NUMERIC, FKF NUMERIC, PRIMARY KEY (PKD)); CREATE TABLE E (PKE NUMERIC, FKB NUMERIC, PRIMARY KEY (PKE)); CREATE TABLE F (PKF NUMERIC, FKC NUMERIC, PRIMARY KEY (PKF)); CREATE TABLE G (PKG NUMERIC, FKE NUMERIC, PRIMARY KEY (PKG)); CREATE TABLE H (PKH NUMERIC, FKB NUMERIC, PRIMARY KEY (PKH)); ALTER TABLE A ADD CONSTRAINT AC FOREIGN KEY (FKC) REFERENCES C (PKC); ALTER TABLE A ADD CONSTRAINT AE FOREIGN KEY (FKE) REFERENCES E (PKE); ALTER TABLE C ADD CONSTRAINT CB FOREIGN KEY (FKB) REFERENCES B (PKB); ALTER TABLE D ADD CONSTRAINT DA FOREIGN KEY (FKA) REFERENCES A (PKA); ALTER TABLE D ADD CONSTRAINT DF FOREIGN KEY (FKF) REFERENCES F (PKF); ALTER TABLE E ADD CONSTRAINT EB FOREIGN KEY (FKB) REFERENCES B (PKB); ALTER TABLE F ADD CONSTRAINT FC FOREIGN KEY (FKC) REFERENCES C (PKC); ALTER TABLE G ADD CONSTRAINT GE FOREIGN KEY (FKE) REFERENCES E (PKE); ALTER TABLE H ADD CONSTRAINT HB FOREIGN KEY (FKB) REFERENCES B (PKB); |
From: <mla...@us...> - 2004-05-10 23:33:54
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3100/src/test/org/dbunit Modified Files: HypersonicEnvironment.java Log Message: Added DatabaseSequenceFilterTest Index: HypersonicEnvironment.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/HypersonicEnvironment.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** HypersonicEnvironment.java 22 Jan 2004 02:54:20 -0000 1.10 --- HypersonicEnvironment.java 10 May 2004 23:33:29 -0000 1.11 *************** *** 28,31 **** --- 28,32 ---- import java.io.FileReader; import java.sql.Connection; + import java.sql.DriverManager; import java.sql.Statement; *************** *** 42,47 **** // Creates required tables into the hypersonic in-memory database ! BufferedReader sqlReader = new BufferedReader( ! new FileReader(new File("src/sql/hypersonic.sql"))); StringBuffer sqlBuffer = new StringBuffer(); while (sqlReader.ready()) --- 43,56 ---- // Creates required tables into the hypersonic in-memory database ! File ddlFile = new File("src/sql/hypersonic.sql"); ! Connection connection = getConnection().getConnection(); ! ! executeDdlFile(ddlFile, connection); ! ! } ! ! public static void executeDdlFile(File ddlFile, Connection connection) throws Exception ! { ! BufferedReader sqlReader = new BufferedReader(new FileReader(ddlFile)); StringBuffer sqlBuffer = new StringBuffer(); while (sqlReader.ready()) *************** *** 54,62 **** } ! Connection connection = getConnection().getConnection(); Statement statement = connection.createStatement(); try { - String sql = sqlBuffer.toString(); statement.execute(sql); } --- 63,70 ---- } ! String sql = sqlBuffer.toString(); Statement statement = connection.createStatement(); try { statement.execute(sql); } *************** *** 67,70 **** --- 75,86 ---- } + public static Connection createJdbcConnection(String databaseName) throws Exception + { + Class.forName("org.hsqldb.jdbcDriver"); + Connection connection = DriverManager.getConnection( + "jdbc:hsqldb:" + databaseName, "sa", ""); + return connection; + } + public void closeConnection() throws Exception { |
From: <mla...@us...> - 2004-05-10 23:33:54
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/database In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3100/src/test/org/dbunit/database Modified Files: AllTests.java Added Files: DatabaseSequenceFilterTest.java Log Message: Added DatabaseSequenceFilterTest --- NEW FILE: DatabaseSequenceFilterTest.java --- /* * * The DbUnit Database Testing Framework * Copyright (C)2002-2004, DbUnit.org * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * */ package org.dbunit.database; import org.dbunit.HypersonicEnvironment; import org.dbunit.dataset.FilteredDataSet; import org.dbunit.dataset.IDataSet; import org.dbunit.dataset.filter.ITableFilter; import junit.framework.TestCase; import java.io.File; import java.io.FilenameFilter; import java.sql.Connection; import java.util.Arrays; /** * @author Manuel Laflamme * @since May 8, 2004 * @version $Revision: 1.1 $ */ public class DatabaseSequenceFilterTest extends TestCase { Connection _jdbcConnection; public DatabaseSequenceFilterTest(String s) { super(s); } protected void setUp() throws Exception { super.setUp(); _jdbcConnection = HypersonicEnvironment.createJdbcConnection("tempdb"); } protected void tearDown() throws Exception { super.tearDown(); // HypersonicEnvironment.execute(_jdbcConnection, "SHUTDOWN"); _jdbcConnection.close(); File[] files = new File(".").listFiles(new FilenameFilter() { public boolean accept(File dir, String name) { if (name.indexOf("tempdb") != -1) { return true; } return false; } }); for (int i = 0; i < files.length; i++) { File file = files[i]; file.delete(); } } public void testGetTableNames() throws Exception { String[] expectedNoFilter = {"A","B","C","D","E","F","G","H",}; String[] expectedFiltered = {"B","C","E","A","F","D","G","H",}; HypersonicEnvironment.executeDdlFile(new File("src/sql/hypersonic_fk.sql"), _jdbcConnection); IDatabaseConnection connection = new DatabaseConnection(_jdbcConnection); IDataSet databaseDataset = connection.createDataSet(); String[] actualNoFilter = databaseDataset.getTableNames(); assertEquals("no filter", Arrays.asList(expectedNoFilter), Arrays.asList(actualNoFilter)); ITableFilter filter = new DatabaseSequenceFilter(connection); IDataSet filteredDataSet = new FilteredDataSet(filter, databaseDataset); String[] actualFiltered = filteredDataSet.getTableNames(); assertEquals("filtered", Arrays.asList(expectedFiltered), Arrays.asList(actualFiltered)); } public void testGetTableNamesCyclic() throws Exception { String[] expectedNoFilter = {"A","B","C","D","E",}; HypersonicEnvironment.executeDdlFile(new File("src/sql/hypersonic_cyclic.sql"), _jdbcConnection); IDatabaseConnection connection = new DatabaseConnection(_jdbcConnection); IDataSet databaseDataset = connection.createDataSet(); String[] actualNoFilter = databaseDataset.getTableNames(); assertEquals("no filter", Arrays.asList(expectedNoFilter), Arrays.asList(actualNoFilter)); try { ITableFilter filter = new DatabaseSequenceFilter(connection); IDataSet filteredDataSet = new FilteredDataSet(filter, databaseDataset); filteredDataSet.getTableNames(); fail("Should not be here!"); } catch (CyclicTablesDependencyException e) { } } } Index: AllTests.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/database/AllTests.java,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** AllTests.java 15 Mar 2004 16:44:20 -0000 1.14 --- AllTests.java 10 May 2004 23:33:44 -0000 1.15 *************** *** 40,43 **** --- 40,44 ---- suite.addTest(new TestSuite(DatabaseConnectionTest.class)); suite.addTest(new TestSuite(DatabaseDataSetTest.class)); + suite.addTest(new TestSuite(DatabaseSequenceFilterTest.class)); suite.addTest(new TestSuite(DatabaseTableIteratorTest.class)); suite.addTest(new TestSuite(DatabaseTableMetaDataTest.class)); |
From: <mla...@us...> - 2004-05-08 21:00:40
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15995/src/java/org/dbunit/database Modified Files: CyclicTablesDependencyException.java DatabaseSequenceFilter.java Log Message: Fixed serious flaw in DatabaseSequenceFilter, which was only working with first level dependencies. I introduced this problem when adding cyclic dependencies detection. Index: CyclicTablesDependencyException.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/CyclicTablesDependencyException.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** CyclicTablesDependencyException.java 22 Jan 2004 02:54:17 -0000 1.2 --- CyclicTablesDependencyException.java 8 May 2004 21:00:31 -0000 1.3 *************** *** 30,36 **** public class CyclicTablesDependencyException extends DataSetException { ! public CyclicTablesDependencyException(String tableName1, String tableName2) { ! super(tableName1 + ", " + tableName2); } } --- 30,36 ---- public class CyclicTablesDependencyException extends DataSetException { ! public CyclicTablesDependencyException(String tableName) { ! super(tableName); } } Index: DatabaseSequenceFilter.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/DatabaseSequenceFilter.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** DatabaseSequenceFilter.java 22 Apr 2004 00:45:59 -0000 1.7 --- DatabaseSequenceFilter.java 8 May 2004 21:00:31 -0000 1.8 *************** *** 76,90 **** TableSequenceComparator tableSequenceComparator = new TableSequenceComparator(connection); - String[] lastNames = tableNames; - String[] cloneNames = tableNames; - do - { - lastNames = cloneNames; - cloneNames = (String[])lastNames.clone(); - Arrays.sort(cloneNames, - tableSequenceComparator); - } while(!Arrays.equals(lastNames, cloneNames)); ! return lastNames; } catch (DatabaseUnitRuntimeException e) --- 76,83 ---- TableSequenceComparator tableSequenceComparator = new TableSequenceComparator(connection); ! tableNames = (String[])tableNames.clone(); ! Arrays.sort(tableNames, tableSequenceComparator); ! return tableNames; } catch (DatabaseUnitRuntimeException e) *************** *** 120,133 **** try { ! if (getDependentTableNames(tableName1).contains(tableName2)) { - if (getDependentTableNames(tableName2).contains(tableName1)) - { - throw new CyclicTablesDependencyException(tableName1, tableName2); - } return -1; } ! if (getDependentTableNames(tableName2).contains(tableName1)) { return 1; --- 113,134 ---- try { ! Set descendants1 = getDescendants(tableName1, null); ! if (descendants1.contains(tableName1)) ! { ! throw new CyclicTablesDependencyException(tableName1); ! } ! ! if (descendants1.contains(tableName2)) { return -1; } ! Set descendants2 = getDescendants(tableName2, null); ! if (descendants2.contains(tableName2)) ! { ! throw new CyclicTablesDependencyException(tableName2); ! } ! ! if (descendants2.contains(tableName1)) { return 1; *************** *** 147,160 **** /** ! * Returns a Set containing the names of all tables which are dependent upon ! * <code>tableName</code>'s primary key as foreign keys. * * @param tableName The table whose primary key is to be used in determining * dependent foreign key tables. ! * @return The Set of dependent foreign key table names. * @throws SQLException if a database access error occurs */ ! private Set getDependentTableNames(String tableName) ! throws SQLException { if (_dependentMap.containsKey(tableName)) --- 148,190 ---- /** ! * Returns a Set containing the names of all tables which have direct ! * and indirect depency upon specified table. This method is recursive. ! * ! * @param tableName The table we want to know dependant tables ! * @param processed Set of previously processed table names. Must be null ! * on first call. ! * @return The Set of dependent table names. ! * @throws SQLException if a database access error occurs ! */ ! private Set getDescendants(String tableName, Set processed) throws SQLException ! { ! if (processed == null) ! { ! processed = new HashSet(); ! } ! ! Set children = getChildren(tableName); ! for (Iterator it = children.iterator(); it.hasNext();) ! { ! String childName = (String)it.next(); ! if (!processed.contains(childName)) ! { ! processed.add(childName); ! processed.addAll(getDescendants(childName, processed)); ! } ! } ! return processed; ! } ! ! /** ! * Returns a Set containing the names of all tables which have first ! * level dependency upon specified table. * * @param tableName The table whose primary key is to be used in determining * dependent foreign key tables. ! * @return The Set of dependent table names. * @throws SQLException if a database access error occurs */ ! private Set getChildren(String tableName) throws SQLException { if (_dependentMap.containsKey(tableName)) *************** *** 193,197 **** foreignTableSet.add(foreignTableName); } - _dependentMap.put(originalTableName, foreignTableSet); return foreignTableSet; --- 223,226 ---- |
From: <mla...@us...> - 2004-05-08 03:44:02
|
Update of /cvsroot/dbunit/dbunit/xdocs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4882/xdocs Modified Files: faq.fml Log Message: FAQ updates: * Building DbUnit * Known and fixed issues * Automatic tables ordering Index: faq.fml =================================================================== RCS file: /cvsroot/dbunit/dbunit/xdocs/faq.fml,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** faq.fml 28 Apr 2004 19:02:35 -0000 1.16 --- faq.fml 8 May 2004 03:43:51 -0000 1.17 *************** *** 18,24 **** </question> <answer> ! <p>Since version 2.0, DbUnit is build with <a href="http://maven.apache.org/">Maven 1.0-rc1</a>. See project <a href="dependencies.html">dependencies</a>. </p> ! <p><b>NOTE:</b> There is currently one test from the DbUnit 2.0 source distribution that fails. You can safely ignore this failure when building DbUnit. ! </p> </answer> </faq> --- 18,22 ---- </question> <answer> ! <p><a href=" http://www.dbunit.org/cgi-bin/wiki.pl?BuildingDbUnit">BuildingDbUnit</a> detailed instruction.</p> </answer> </faq> *************** *** 29,33 **** </question> <answer> ! <p><a href="http://www.p6spy.com">P6Spy</a> is a trasparent JDBC proxy-driver specialized to log the statements performed against the actual driver you normally would use. Using p6spy would allow to log the SQL statements issued by DbUnit. --- 27,31 ---- </question> <answer> ! <p><a href="http://www.p6spy.com">P6Spy</a> is a transparent JDBC proxy-driver specialized to log the statements performed against the actual driver you normally would use. Using p6spy would allow to log the SQL statements issued by DbUnit. *************** *** 54,57 **** --- 52,63 ---- </faq> + <faq id="knownfixedissues"> + <question> + How to learn more about known and fixed issues? + </question> + <answer> + <p>Look at <a href="http://www.dbunit.org/cgi-bin/wiki.pl?ChangesSinceLastRelease">ChangesSinceLastRelease</a> and at <a href="http://www.dbunit.org/issue-tracking.html">Issue Tracking</a>.</p> + </answer> + </faq> </part> *************** *** 339,342 **** --- 345,371 ---- </faq> + <faq id="tableseq"> + <question> + How to automatically orders tables according their foreign keys? + </question> + <answer> + DbUnit operations insert and update tables' rows in the same order they are found in your + dataset and delete are done in reverse order. You must order your tables and rows + appropriately in your datasets to prevent foreign keys constraint violation. + <br/> + Since version 2.0, the <a href="components.html#filtereddataset">DatabaseSequenceFilter</a> can now be used to automatically determine the tables order using foreign/exported keys information. + <br/> + The following sample demonstrate how to use this class to export a flat XML dataset: + <source> + IDatabaseConnection conn = new DatabaseConnection(jdbcConn); + + ITableFilter filter = new DatabaseTableFilter(conn); + IDataSet dataset = new FilteredDataSet(filter, + conn.createDataSet()); + + FlatXmlDataSet.write(dataset, new File(fileName)); + </source> + </answer> + </faq> </part> *************** *** 362,386 **** </faq> ! <faq id="tableseq"> <question> Why I get a "Foreign keys constraint violation" error? </question> <answer> ! DbUnit operations insert and update tables' rows in the same order they are found in your ! dataset and delete are done in reverse order. You must order your tables and rows ! appropriately in your datasets to prevent foreign keys constraint violation. ! <br/> ! The <a href="components.html#filtereddataset">DatabaseSequenceFilter</a> can now be used to automatically determine the tables order using foreign/exported keys information. ! <br/> ! The following sample demonstrate how to use this class to export a flat XML dataset: ! <source> ! IDatabaseConnection conn = new DatabaseConnection(jdbcConn); ! ! ITableFilter filter = new DatabaseTableFilter(conn); ! IDataSet dataset = new FilteredDataSet(filter, ! conn.createDataSet()); ! ! FlatXmlDataSet.write(dataset, new File(fileName)); ! </source> </answer> </faq> --- 391,400 ---- </faq> ! <faq id="fkconstraintviolation"> <question> Why I get a "Foreign keys constraint violation" error? </question> <answer> ! See <a href="#tableseq">How to automatically orders table according their foreign keys?</a> </answer> </faq> |
From: <mla...@us...> - 2004-05-07 02:51:55
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/datatype In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20449/src/test/org/dbunit/dataset/datatype Modified Files: DoubleDataTypeTest.java NumberDataTypeTest.java Log Message: Added tests to ensure that DbUnit consider number like 123 equals to 123.0 Index: DoubleDataTypeTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/datatype/DoubleDataTypeTest.java,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** DoubleDataTypeTest.java 22 Feb 2004 23:27:20 -0000 1.11 --- DoubleDataTypeTest.java 7 May 2004 02:51:47 -0000 1.12 *************** *** 155,158 **** --- 155,159 ---- "-99.9", new BigDecimal(1234), + "123", }; *************** *** 168,171 **** --- 169,173 ---- new Double(-99.9), new Double(1234), + new Double(123.0) }; Index: NumberDataTypeTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/datatype/NumberDataTypeTest.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** NumberDataTypeTest.java 22 Feb 2004 23:27:20 -0000 1.12 --- NumberDataTypeTest.java 7 May 2004 02:51:47 -0000 1.13 *************** *** 140,143 **** --- 140,144 ---- Boolean.FALSE, new BigDecimal(123.4), + "123", }; Object[] values2 = { *************** *** 149,152 **** --- 150,154 ---- new BigDecimal("0"), new BigDecimal(123.4000), + new BigDecimal("123.0"), }; |
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/operation In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11935/src/test/org/dbunit/operation Modified Files: DeleteOperationTest.java InsertOperationTest.java RefreshOperationTest.java UpdateOperationTest.java Log Message: * DefaultTable(ITableMetaData metaData) constructor is now public. * Added javadoc comments to DefaultTable class. * Deprecated DefaultTable constructors taking List as argument and do not use them anymore. Index: DeleteOperationTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/operation/DeleteOperationTest.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** DeleteOperationTest.java 15 Mar 2004 16:44:21 -0000 1.19 --- DeleteOperationTest.java 7 May 2004 01:55:51 -0000 1.20 *************** *** 27,31 **** import org.dbunit.database.statement.MockBatchStatement; import org.dbunit.database.statement.MockStatementFactory; ! import org.dbunit.dataset.*; import org.dbunit.dataset.datatype.DataType; import org.dbunit.dataset.xml.XmlDataSet; --- 27,39 ---- import org.dbunit.database.statement.MockBatchStatement; import org.dbunit.database.statement.MockStatementFactory; ! import org.dbunit.dataset.Column; ! import org.dbunit.dataset.DefaultDataSet; ! import org.dbunit.dataset.DefaultTable; ! import org.dbunit.dataset.DefaultTableMetaData; ! import org.dbunit.dataset.IDataSet; ! import org.dbunit.dataset.ITable; ! import org.dbunit.dataset.ITableMetaData; ! import org.dbunit.dataset.LowerCaseDataSet; ! import org.dbunit.dataset.NoPrimaryKeyException; import org.dbunit.dataset.datatype.DataType; import org.dbunit.dataset.xml.XmlDataSet; *************** *** 34,39 **** import java.io.FileReader; import java.io.Reader; - import java.util.ArrayList; - import java.util.List; /** --- 42,45 ---- *************** *** 61,67 **** }; - List valueList = new ArrayList(); - valueList.add(new Object[]{"qwerty", new Double("123.45"), "true"}); - valueList.add(new Object[]{"toto", "1234", Boolean.FALSE}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 67,70 ---- *************** *** 71,78 **** String[] primaryKeys = {"c2", "c1"}; ! ITable table1 = new DefaultTable(new DefaultTableMetaData( ! tableName1, columns, primaryKeys), valueList); ! ITable table2 = new DefaultTable(new DefaultTableMetaData( ! tableName2, columns, primaryKeys), valueList); IDataSet dataSet = new DefaultDataSet(table1, table2); --- 74,84 ---- String[] primaryKeys = {"c2", "c1"}; ! DefaultTable table1 = new DefaultTable(new DefaultTableMetaData( ! tableName1, columns, primaryKeys)); ! table1.addRow(new Object[]{"qwerty", new Double("123.45"), "true"}); ! table1.addRow(new Object[]{"toto", "1234", Boolean.FALSE}); ! DefaultTable table2 = new DefaultTable(new DefaultTableMetaData( ! tableName2, columns, primaryKeys)); ! table2.addTableRows(table1); IDataSet dataSet = new DefaultDataSet(table1, table2); *************** *** 111,117 **** }; - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", Boolean.FALSE}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), "true"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 117,120 ---- *************** *** 121,126 **** String[] primaryKeys = {"c2", "c1"}; ! ITable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys), valueList); IDataSet dataSet = new DefaultDataSet(table); --- 124,131 ---- String[] primaryKeys = {"c2", "c1"}; ! DefaultTable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys)); ! table.addRow(new Object[]{"toto", "1234", Boolean.FALSE}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), "true"}); IDataSet dataSet = new DefaultDataSet(table); *************** *** 163,169 **** }; - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", Boolean.FALSE}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), "true"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 168,171 ---- *************** *** 173,178 **** String[] primaryKeys = {"c2", "c1"}; ! ITable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys), valueList); IDataSet dataSet = new DefaultDataSet(new ITable[]{table, table}); --- 175,182 ---- String[] primaryKeys = {"c2", "c1"}; ! DefaultTable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys)); ! table.addRow(new Object[]{"toto", "1234", Boolean.FALSE}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), "true"}); IDataSet dataSet = new DefaultDataSet(new ITable[]{table, table}); *************** *** 206,210 **** Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns), new ArrayList()); IDataSet dataSet = new DefaultDataSet(table); --- 210,214 ---- Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns)); IDataSet dataSet = new DefaultDataSet(table); Index: InsertOperationTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/operation/InsertOperationTest.java,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** InsertOperationTest.java 29 Mar 2004 01:00:05 -0000 1.26 --- InsertOperationTest.java 7 May 2004 01:55:51 -0000 1.27 *************** *** 39,44 **** import java.io.Reader; import java.sql.SQLException; - import java.util.ArrayList; - import java.util.List; /** --- 39,42 ---- *************** *** 64,70 **** // setup table - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", Boolean.FALSE}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), "true"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 62,65 ---- *************** *** 72,76 **** new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns, valueList); IDataSet dataSet = new DefaultDataSet(table); --- 67,73 ---- new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns); ! table.addRow(new Object[]{"toto", "1234", Boolean.FALSE}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), "true"}); IDataSet dataSet = new DefaultDataSet(table); *************** *** 164,173 **** // setup table - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", Boolean.FALSE}); - valueList.add(new Object[]{ITable.NO_VALUE, new Double("123.45"), "true"}); - valueList.add(new Object[]{"qwerty1", "1", Boolean.TRUE}); - valueList.add(new Object[]{"qwerty2", "2", Boolean.FALSE}); - valueList.add(new Object[]{ITable.NO_VALUE, ITable.NO_VALUE, Boolean.FALSE}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 161,164 ---- *************** *** 175,179 **** new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns, valueList); IDataSet dataSet = new DefaultDataSet(table); --- 166,175 ---- new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns); ! table.addRow(new Object[]{"toto", "1234", Boolean.FALSE}); ! table.addRow(new Object[]{ITable.NO_VALUE, new Double("123.45"), "true"}); ! table.addRow(new Object[]{"qwerty1", "1", Boolean.TRUE}); ! table.addRow(new Object[]{"qwerty2", "2", Boolean.FALSE}); ! table.addRow(new Object[]{ITable.NO_VALUE, ITable.NO_VALUE, Boolean.FALSE}); IDataSet dataSet = new DefaultDataSet(table); *************** *** 267,273 **** // setup table - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", Boolean.FALSE}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), "true"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 263,266 ---- *************** *** 275,279 **** new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns, valueList); IDataSet dataSet = new DefaultDataSet(table); --- 268,274 ---- new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns); ! table.addRow(new Object[]{"toto", "1234", Boolean.FALSE}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), "true"}); IDataSet dataSet = new DefaultDataSet(table); *************** *** 317,323 **** // setup table - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", Boolean.FALSE}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), "true"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 312,315 ---- *************** *** 325,329 **** new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns, valueList); IDataSet dataSet = new DefaultDataSet(new ITable[]{table, table}); --- 317,323 ---- new Column("c3", DataType.BOOLEAN), }; ! DefaultTable table = new DefaultTable(tableName, columns); ! table.addRow(new Object[]{"toto", "1234", Boolean.FALSE}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), "true"}); IDataSet dataSet = new DefaultDataSet(new ITable[]{table, table}); *************** *** 357,361 **** Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns), new ArrayList()); IDataSet dataSet = new DefaultDataSet(table); --- 351,355 ---- Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns)); IDataSet dataSet = new DefaultDataSet(table); Index: RefreshOperationTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/operation/RefreshOperationTest.java,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** RefreshOperationTest.java 15 Mar 2004 16:44:21 -0000 1.17 --- RefreshOperationTest.java 7 May 2004 01:55:51 -0000 1.18 *************** *** 33,37 **** import java.io.FileReader; import java.io.Reader; - import java.util.ArrayList; /** --- 33,36 ---- *************** *** 159,163 **** Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns), new ArrayList()); IDataSet dataSet = new DefaultDataSet(table); --- 158,162 ---- Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns)); IDataSet dataSet = new DefaultDataSet(table); Index: UpdateOperationTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/operation/UpdateOperationTest.java,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** UpdateOperationTest.java 22 Jan 2004 02:54:36 -0000 1.22 --- UpdateOperationTest.java 7 May 2004 01:55:51 -0000 1.23 *************** *** 38,43 **** import java.io.FileReader; import java.io.Reader; - import java.util.ArrayList; - import java.util.List; /** --- 38,41 ---- *************** *** 90,96 **** }; - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", "false", "0"}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), null, "0"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 88,91 ---- *************** *** 100,105 **** }; String[] primaryKeys = {"c4", "c1"}; ! ITable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys), valueList); IDataSet dataSet = new DefaultDataSet(table); --- 95,102 ---- }; String[] primaryKeys = {"c4", "c1"}; ! DefaultTable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys)); ! table.addRow(new Object[]{"toto", "1234", "false", "0"}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), null, "0"}); IDataSet dataSet = new DefaultDataSet(table); *************** *** 138,144 **** }; - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", "false", "0"}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), null, "0"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 135,138 ---- *************** *** 148,153 **** }; String[] primaryKeys = {"c4", "c1"}; ! ITable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys), valueList); IDataSet dataSet = new DefaultDataSet(table); --- 142,149 ---- }; String[] primaryKeys = {"c4", "c1"}; ! DefaultTable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys)); ! table.addRow(new Object[]{"toto", "1234", "false", "0"}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), null, "0"}); IDataSet dataSet = new DefaultDataSet(table); *************** *** 190,196 **** }; - List valueList = new ArrayList(); - valueList.add(new Object[]{"toto", "1234", "false", "0"}); - valueList.add(new Object[]{"qwerty", new Double("123.45"), null, "0"}); Column[] columns = new Column[]{ new Column("c1", DataType.VARCHAR), --- 186,189 ---- *************** *** 200,205 **** }; String[] primaryKeys = {"c4", "c1"}; ! ITable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys), valueList); IDataSet dataSet = new DefaultDataSet(new ITable[]{table, table}); --- 193,200 ---- }; String[] primaryKeys = {"c4", "c1"}; ! DefaultTable table = new DefaultTable(new DefaultTableMetaData( ! tableName, columns, primaryKeys)); ! table.addRow(new Object[]{"toto", "1234", "false", "0"}); ! table.addRow(new Object[]{"qwerty", new Double("123.45"), null, "0"}); IDataSet dataSet = new DefaultDataSet(new ITable[]{table, table}); *************** *** 233,237 **** Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns), new ArrayList()); IDataSet dataSet = new DefaultDataSet(table); --- 228,232 ---- Column[] columns = {new Column("c1", DataType.VARCHAR)}; ITable table = new DefaultTable(new DefaultTableMetaData( ! "name", columns, columns)); IDataSet dataSet = new DefaultDataSet(table); |
From: <mla...@us...> - 2004-05-07 01:56:02
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11935/src/test/org/dbunit/dataset Modified Files: DataSetUtilsTest.java DefaultTableTest.java ReplacementTableTest.java Log Message: * DefaultTable(ITableMetaData metaData) constructor is now public. * Added javadoc comments to DefaultTable class. * Deprecated DefaultTable constructors taking List as argument and do not use them anymore. Index: DataSetUtilsTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/DataSetUtilsTest.java,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** DataSetUtilsTest.java 15 Mar 2004 16:44:20 -0000 1.16 --- DataSetUtilsTest.java 7 May 2004 01:55:51 -0000 1.17 *************** *** 114,121 **** String[] expected = {"t0", "t1", "t2", "t3"}; ITable[] testTables = new ITable[]{ ! new DefaultTable(new DefaultTableMetaData("t0", null), null), ! new DefaultTable(new DefaultTableMetaData("t1", null), null), ! new DefaultTable(new DefaultTableMetaData("t2", null), null), ! new DefaultTable(new DefaultTableMetaData("t3", null), null), }; --- 114,121 ---- String[] expected = {"t0", "t1", "t2", "t3"}; ITable[] testTables = new ITable[]{ ! new DefaultTable("t0"), ! new DefaultTable("t1"), ! new DefaultTable("t2"), ! new DefaultTable("t3"), }; *************** *** 133,140 **** String[] expected = {"t0", "t2"}; ITable[] testTables = new ITable[]{ ! new DefaultTable(new DefaultTableMetaData("t0", null), null), ! new DefaultTable(new DefaultTableMetaData("t1", null), null), ! new DefaultTable(new DefaultTableMetaData("t2", null), null), ! new DefaultTable(new DefaultTableMetaData("t3", null), null), }; --- 133,140 ---- String[] expected = {"t0", "t2"}; ITable[] testTables = new ITable[]{ ! new DefaultTable("t0"), ! new DefaultTable("t1"), ! new DefaultTable("t2"), ! new DefaultTable("t3"), }; *************** *** 153,160 **** String[] expected = {"t3", "t2", "t1", "t0"}; ITable[] testTables = new ITable[]{ ! new DefaultTable(new DefaultTableMetaData("t0", null), null), ! new DefaultTable(new DefaultTableMetaData("t1", null), null), ! new DefaultTable(new DefaultTableMetaData("t2", null), null), ! new DefaultTable(new DefaultTableMetaData("t3", null), null), }; --- 153,160 ---- String[] expected = {"t3", "t2", "t1", "t0"}; ITable[] testTables = new ITable[]{ ! new DefaultTable("t0"), ! new DefaultTable("t1"), ! new DefaultTable("t2"), ! new DefaultTable("t3"), }; Index: DefaultTableTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/DefaultTableTest.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** DefaultTableTest.java 22 Jan 2004 02:54:21 -0000 1.6 --- DefaultTableTest.java 7 May 2004 01:55:51 -0000 1.7 *************** *** 24,30 **** import org.dbunit.dataset.datatype.DataType; - import java.util.ArrayList; - import java.util.List; - /** * @author Manuel Laflamme --- 24,27 ---- *************** *** 47,51 **** throws Exception { ! List list = new ArrayList(); for (int i = 0; i < rowCount; i++) { --- 44,48 ---- throws Exception { ! DefaultTable table = new DefaultTable(createTableMetaData(columnCount)); for (int i = 0; i < rowCount; i++) { *************** *** 55,63 **** rowValues[j] = "row " + (i + startRow) + " col " + j; } ! ! list.add(rowValues); } ! ! return new DefaultTable(createTableMetaData(columnCount), list); } --- 52,58 ---- rowValues[j] = "row " + (i + startRow) + " col " + j; } ! table.addRow(rowValues); } ! return table; } *************** *** 78,87 **** Object expected = ITable.NO_VALUE; ! List list = new ArrayList(); ! list.add(new Object[]{ ! ITable.NO_VALUE, ITable.NO_VALUE, ITable.NO_VALUE, ! ITable.NO_VALUE, ITable.NO_VALUE, ITable.NO_VALUE}); ! ! ITable table = new DefaultTable(createTableMetaData(COLUMN_COUNT), list); Column[] columns = table.getTableMetaData().getColumns(); assertNotNull(DataSetUtils.getColumn(columnName, columns)); --- 73,79 ---- Object expected = ITable.NO_VALUE; ! DefaultTable table = new DefaultTable(createTableMetaData(COLUMN_COUNT)); ! table.addRow(new Object[]{ITable.NO_VALUE, ITable.NO_VALUE, ITable.NO_VALUE, ! ITable.NO_VALUE, ITable.NO_VALUE, ITable.NO_VALUE}); Column[] columns = table.getTableMetaData().getColumns(); assertNotNull(DataSetUtils.getColumn(columnName, columns)); Index: ReplacementTableTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/ReplacementTableTest.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** ReplacementTableTest.java 22 Jan 2004 02:54:21 -0000 1.6 --- ReplacementTableTest.java 7 May 2004 01:55:51 -0000 1.7 *************** *** 28,33 **** import java.math.BigDecimal; import java.sql.Date; - import java.util.ArrayList; - import java.util.List; /** --- 28,31 ---- *************** *** 90,96 **** }; ! List actualRowList = new ArrayList(); ! actualRowList.add(actualRow); ! ITable originalTable = new DefaultTable(tableName, columns, actualRowList); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementObject(Boolean.TRUE, trueObject); --- 88,93 ---- }; ! DefaultTable originalTable = new DefaultTable(tableName, columns); ! originalTable.addRow(actualRow); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementObject(Boolean.TRUE, trueObject); *************** *** 112,118 **** }; ! List expectedRowList = new ArrayList(); ! expectedRowList.add(expectedRow); ! ITable expectedTable = new DefaultTable(tableName, columns, expectedRowList); Assertion.assertEquals(expectedTable, actualTable); --- 109,114 ---- }; ! DefaultTable expectedTable = new DefaultTable(tableName, columns); ! expectedTable.addRow(expectedRow); Assertion.assertEquals(expectedTable, actualTable); *************** *** 146,152 **** }; ! List actualRowList = new ArrayList(); ! actualRowList.add(actualRow); ! ITable originalTable = new DefaultTable(tableName, columns, actualRowList); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementSubstring("substring", "replacement"); --- 142,147 ---- }; ! DefaultTable originalTable = new DefaultTable(tableName, columns); ! originalTable.addRow(actualRow); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementSubstring("substring", "replacement"); *************** *** 164,170 **** }; ! List expectedRowList = new ArrayList(); ! expectedRowList.add(expectedRow); ! ITable expectedTable = new DefaultTable(tableName, columns, expectedRowList); Assertion.assertEquals(expectedTable, actualTable); --- 159,164 ---- }; ! DefaultTable expectedTable = new DefaultTable(tableName, columns); ! expectedTable.addRow(expectedRow); Assertion.assertEquals(expectedTable, actualTable); *************** *** 224,230 **** }; ! List actualRowList = new ArrayList(); ! actualRowList.add(actualRow); ! ITable originalTable = new DefaultTable(tableName, columns, actualRowList); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementSubstring("substring", "replacement"); --- 218,223 ---- }; ! DefaultTable originalTable = new DefaultTable(tableName, columns); ! originalTable.addRow(actualRow); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementSubstring("substring", "replacement"); *************** *** 256,262 **** }; ! List expectedRowList = new ArrayList(); ! expectedRowList.add(expectedRow); ! ITable expectedTable = new DefaultTable(tableName, columns, expectedRowList); Assertion.assertEquals(expectedTable, actualTable); --- 249,254 ---- }; ! DefaultTable expectedTable = new DefaultTable(tableName, columns); ! expectedTable.addRow(expectedRow); Assertion.assertEquals(expectedTable, actualTable); *************** *** 312,318 **** }; ! List actualRowList = new ArrayList(); ! actualRowList.add(actualRow); ! ITable originalTable = new DefaultTable(tableName, columns, actualRowList); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementSubstring("substring", "replacement"); --- 304,309 ---- }; ! DefaultTable originalTable = new DefaultTable(tableName, columns); ! originalTable.addRow(actualRow); ReplacementTable actualTable = new ReplacementTable(originalTable); actualTable.addReplacementSubstring("substring", "replacement"); *************** *** 342,348 **** }; ! List expectedRowList = new ArrayList(); ! expectedRowList.add(expectedRow); ! ITable expectedTable = new DefaultTable(tableName, columns, expectedRowList); Assertion.assertEquals(expectedTable, actualTable); --- 333,338 ---- }; ! DefaultTable expectedTable = new DefaultTable(tableName, columns); ! expectedTable.addRow(expectedRow); Assertion.assertEquals(expectedTable, actualTable); |
From: <mla...@us...> - 2004-05-07 01:56:00
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11935/src/test/org/dbunit Modified Files: AssertionTest.java Log Message: * DefaultTable(ITableMetaData metaData) constructor is now public. * Added javadoc comments to DefaultTable class. * Deprecated DefaultTable constructors taking List as argument and do not use them anymore. Index: AssertionTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/AssertionTest.java,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** AssertionTest.java 15 Mar 2004 16:44:19 -0000 1.11 --- AssertionTest.java 7 May 2004 01:55:51 -0000 1.12 *************** *** 22,35 **** package org.dbunit; ! import junit.framework.AssertionFailedError; ! import junit.framework.TestCase; ! import org.dbunit.dataset.*; import org.dbunit.dataset.datatype.DataType; import org.dbunit.dataset.xml.FlatXmlDataSet; import java.io.FileReader; import java.math.BigDecimal; - import java.util.ArrayList; - import java.util.List; /** --- 22,42 ---- package org.dbunit; ! import org.dbunit.dataset.Column; ! import org.dbunit.dataset.CompositeDataSet; ! import org.dbunit.dataset.CompositeTable; ! import org.dbunit.dataset.DataSetUtils; ! import org.dbunit.dataset.DefaultDataSet; ! import org.dbunit.dataset.DefaultTable; ! import org.dbunit.dataset.FilteredDataSet; ! import org.dbunit.dataset.IDataSet; ! import org.dbunit.dataset.ITable; import org.dbunit.dataset.datatype.DataType; import org.dbunit.dataset.xml.FlatXmlDataSet; + import junit.framework.AssertionFailedError; + import junit.framework.TestCase; + import java.io.FileReader; import java.math.BigDecimal; /** *************** *** 154,161 **** Boolean.TRUE, }; ! List actualRowList = new ArrayList(); ! actualRowList.add(actualRow); ! ITable actualTable = new DefaultTable(tableName, ! actualColumns, actualRowList); // Setup expected table --- 161,167 ---- Boolean.TRUE, }; ! DefaultTable actualTable = new DefaultTable(tableName, ! actualColumns); ! actualTable.addRow(actualRow); // Setup expected table *************** *** 166,173 **** "1", }; ! List expectedRowList = new ArrayList(); ! expectedRowList.add(expectedRow); ! ITable expectedTable = new DefaultTable(tableName, ! expectedColumns, expectedRowList); try --- 172,179 ---- "1", }; ! DefaultTable expectedTable = new DefaultTable(tableName, ! expectedColumns); ! expectedTable.addRow(expectedRow); ! try *************** *** 200,207 **** new BigDecimal("123.4"), }; ! List actualRowList = new ArrayList(); ! actualRowList.add(actualRow); ! ITable actualTable = new DefaultTable(tableName, ! actualColumns, actualRowList); // Setup expected table --- 206,213 ---- new BigDecimal("123.4"), }; ! DefaultTable actualTable = new DefaultTable(tableName, ! actualColumns); ! actualTable.addRow(actualRow); ! // Setup expected table *************** *** 218,225 **** "123.4000", }; ! List expectedRowList = new ArrayList(); ! expectedRowList.add(expectedRow); ! ITable expectedTable = new DefaultTable(tableName, ! expectedColumns, expectedRowList); Assertion.assertEquals(expectedTable, actualTable); --- 224,230 ---- "123.4000", }; ! DefaultTable expectedTable = new DefaultTable(tableName, ! expectedColumns); ! expectedTable.addRow(expectedRow); Assertion.assertEquals(expectedTable, actualTable); |
From: <mla...@us...> - 2004-05-07 01:56:00
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11935/src/test/org/dbunit/dataset/xml Modified Files: FlatXmlProducerTest.java Log Message: * DefaultTable(ITableMetaData metaData) constructor is now public. * Added javadoc comments to DefaultTable class. * Deprecated DefaultTable constructors taking List as argument and do not use them anymore. Index: FlatXmlProducerTest.java =================================================================== RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/FlatXmlProducerTest.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** FlatXmlProducerTest.java 15 Mar 2004 16:44:21 -0000 1.5 --- FlatXmlProducerTest.java 7 May 2004 01:55:51 -0000 1.6 *************** *** 28,31 **** --- 28,32 ---- import org.dbunit.dataset.stream.IDataSetProducer; import org.dbunit.dataset.stream.MockDataSetConsumer; + import org.xml.sax.EntityResolver; import org.xml.sax.InputSource; *************** *** 35,39 **** import java.io.IOException; import java.io.StringReader; - import java.util.ArrayList; /** --- 36,39 ---- *************** *** 150,155 **** InputSource source = new InputSource(new StringReader(content)); DefaultDataSet metaDataSet = new DefaultDataSet(); ! metaDataSet.addTable( ! new DefaultTable(tableName, expectedColumns, new ArrayList())); IDataSetProducer producer = new FlatXmlProducer(source, metaDataSet); producer.setConsumer(consumer); --- 150,154 ---- InputSource source = new InputSource(new StringReader(content)); DefaultDataSet metaDataSet = new DefaultDataSet(); ! metaDataSet.addTable(new DefaultTable(tableName, expectedColumns)); IDataSetProducer producer = new FlatXmlProducer(source, metaDataSet); producer.setConsumer(consumer); |