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...> - 2003-04-09 18:18:52
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv28119/src/test/org/dbunit/dataset/xml
Modified Files:
Tag: branch-iterator
FlatXmlDataSetTest.java XmlDataSetTest.java
Log Message:
Deprecated the IDataSet.getTables() method and replaced usage with
the iterator() methods. Only code that explicitly test the getTable()
method continue to use it.
Index: FlatXmlDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/FlatXmlDataSetTest.java,v
retrieving revision 1.13
retrieving revision 1.13.2.1
diff -C2 -d -r1.13 -r1.13.2.1
*** FlatXmlDataSetTest.java 11 Mar 2003 13:00:07 -0000 1.13
--- FlatXmlDataSetTest.java 9 Apr 2003 18:18:47 -0000 1.13.2.1
***************
*** 28,31 ****
--- 28,32 ----
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.ITable;
+ import org.dbunit.dataset.DataSetUtils;
import java.io.File;
***************
*** 107,112 ****
// verify each table
! ITable[] expected = expectedDataSet.getTables();
! ITable[] actual = actualDataSet.getTables();
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
--- 108,113 ----
// verify each table
! ITable[] expected = DataSetUtils.getTables(expectedDataSet);
! ITable[] actual = DataSetUtils.getTables(actualDataSet);
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
***************
*** 160,165 ****
// verify each table
! ITable[] expected = expectedDataSet.getTables();
! ITable[] actual = actualDataSet.getTables();
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
--- 161,166 ----
// verify each table
! ITable[] expected = DataSetUtils.getTables(expectedDataSet);
! ITable[] actual = DataSetUtils.getTables(actualDataSet);
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
Index: XmlDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/XmlDataSetTest.java,v
retrieving revision 1.8
retrieving revision 1.8.4.1
diff -C2 -d -r1.8 -r1.8.4.1
*** XmlDataSetTest.java 14 Feb 2003 03:22:01 -0000 1.8
--- XmlDataSetTest.java 9 Apr 2003 18:18:47 -0000 1.8.4.1
***************
*** 78,83 ****
// verify each table
! ITable[] expected = expectedDataSet.getTables();
! ITable[] actual = actualDataSet.getTables();
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
--- 78,83 ----
// verify each table
! ITable[] expected = DataSetUtils.getTables(expectedDataSet);
! ITable[] actual = DataSetUtils.getTables(actualDataSet);
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
***************
*** 125,130 ****
// verify each table
! ITable[] expected = expectedDataSet.getTables();
! ITable[] actual = actualDataSet.getTables();
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
--- 125,130 ----
// verify each table
! ITable[] expected = DataSetUtils.getTables(expectedDataSet);
! ITable[] actual = DataSetUtils.getTables(actualDataSet);
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
|
|
From: <mla...@us...> - 2003-04-09 18:18:51
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/excel
In directory sc8-pr-cvs1:/tmp/cvs-serv28119/src/test/org/dbunit/dataset/excel
Modified Files:
Tag: branch-iterator
XlsDataSetTest.java
Log Message:
Deprecated the IDataSet.getTables() method and replaced usage with
the iterator() methods. Only code that explicitly test the getTable()
method continue to use it.
Index: XlsDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/excel/XlsDataSetTest.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -C2 -d -r1.1 -r1.1.2.1
*** XlsDataSetTest.java 21 Mar 2003 03:14:50 -0000 1.1
--- XlsDataSetTest.java 9 Apr 2003 18:18:46 -0000 1.1.2.1
***************
*** 25,28 ****
--- 25,29 ----
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.ITable;
+ import org.dbunit.dataset.DataSetUtils;
import java.io.*;
***************
*** 80,85 ****
// verify each table
! ITable[] expected = expectedDataSet.getTables();
! ITable[] actual = actualDataSet.getTables();
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
--- 81,86 ----
// verify each table
! ITable[] expected = DataSetUtils.getTables(expectedDataSet);
! ITable[] actual = DataSetUtils.getTables(actualDataSet);
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
***************
*** 133,138 ****
// verify each table
! ITable[] expected = expectedDataSet.getTables();
! ITable[] actual = actualDataSet.getTables();
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
--- 134,139 ----
// verify each table
! ITable[] expected = DataSetUtils.getTables(expectedDataSet);
! ITable[] actual = DataSetUtils.getTables(actualDataSet);
assertEquals("table count", expected.length, actual.length);
for (int i = 0; i < expected.length; i++)
|
|
From: <mla...@us...> - 2003-04-09 18:18:50
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv28119/src/test/org/dbunit/dataset
Modified Files:
Tag: branch-iterator
AbstractDataSetTest.java CompositeDataSetTest.java
Log Message:
Deprecated the IDataSet.getTables() method and replaced usage with
the iterator() methods. Only code that explicitly test the getTable()
method continue to use it.
Index: AbstractDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/AbstractDataSetTest.java,v
retrieving revision 1.19.4.2
retrieving revision 1.19.4.3
diff -C2 -d -r1.19.4.2 -r1.19.4.3
*** AbstractDataSetTest.java 6 Apr 2003 21:52:08 -0000 1.19.4.2
--- AbstractDataSetTest.java 9 Apr 2003 18:18:45 -0000 1.19.4.3
***************
*** 89,97 ****
{
IDataSet dataSet = createDuplicateDataSet();
! ITable lowerTable = dataSet.getTables()[0];
dataSet = new DefaultDataSet(new ITable[]{
new CompositeTable(getDuplicateTableName().toLowerCase(), lowerTable),
! dataSet.getTables()[1],
! dataSet.getTables()[2],
});
return dataSet;
--- 89,98 ----
{
IDataSet dataSet = createDuplicateDataSet();
! ITable[] tables = DataSetUtils.getTables(dataSet.iterator());
! ITable lowerTable = tables[0];
dataSet = new DefaultDataSet(new ITable[]{
new CompositeTable(getDuplicateTableName().toLowerCase(), lowerTable),
! tables[1],
! tables[2],
});
return dataSet;
Index: CompositeDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/CompositeDataSetTest.java,v
retrieving revision 1.8
retrieving revision 1.8.4.1
diff -C2 -d -r1.8 -r1.8.4.1
*** CompositeDataSetTest.java 15 Feb 2003 05:42:43 -0000 1.8
--- CompositeDataSetTest.java 9 Apr 2003 18:18:46 -0000 1.8.4.1
***************
*** 75,79 ****
assertEquals("table count before", 3, originaldataSet.getTableNames().length);
! IDataSet combinedDataSet = new CompositeDataSet(originaldataSet.getTables());
assertEquals("table count combined", 2, combinedDataSet.getTableNames().length);
}
--- 75,79 ----
assertEquals("table count before", 3, originaldataSet.getTableNames().length);
! IDataSet combinedDataSet = new CompositeDataSet(originaldataSet, true);
assertEquals("table count combined", 2, combinedDataSet.getTableNames().length);
}
|
|
From: <mla...@us...> - 2003-04-09 02:22:15
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit
In directory sc8-pr-cvs1:/tmp/cvs-serv22187/dbunit/src/test/org/dbunit
Modified Files:
Tag: branch-iterator
AbstractDatabaseTest.java
Log Message:
Fixed some issues with case sensitive database like MySQL. Should we also fix this in Main trunk or we assume it will be fix after the merge???
Index: AbstractDatabaseTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/AbstractDatabaseTest.java,v
retrieving revision 1.11
retrieving revision 1.11.4.1
diff -C2 -d -r1.11 -r1.11.4.1
*** AbstractDatabaseTest.java 16 Feb 2003 06:00:59 -0000 1.11
--- AbstractDatabaseTest.java 9 Apr 2003 02:22:12 -0000 1.11.4.1
***************
*** 26,29 ****
--- 26,30 ----
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.ITable;
+ import org.dbunit.dataset.SortedTable;
import org.dbunit.operation.DatabaseOperation;
***************
*** 50,55 ****
throws Exception
{
! String sql = "select * from " + tableName + " order by " + orderByColumn;
! return _connection.createQueryTable(tableName, sql);
}
--- 51,58 ----
throws Exception
{
! return new SortedTable(_connection.createDataSet().getTable(tableName),
! new String[]{orderByColumn});
! // String sql = "select * from " + tableName + " order by " + orderByColumn;
! // return _connection.createQueryTable(tableName, sql);
}
|
|
From: <mla...@us...> - 2003-04-09 02:22:15
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation
In directory sc8-pr-cvs1:/tmp/cvs-serv22187/dbunit/src/java/org/dbunit/operation
Modified Files:
Tag: branch-iterator
AbstractBatchOperation.java
Log Message:
Fixed some issues with case sensitive database like MySQL. Should we also fix this in Main trunk or we assume it will be fix after the merge???
Index: AbstractBatchOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/AbstractBatchOperation.java,v
retrieving revision 1.16.2.1
retrieving revision 1.16.2.2
diff -C2 -d -r1.16.2.1 -r1.16.2.2
*** AbstractBatchOperation.java 7 Apr 2003 02:48:13 -0000 1.16.2.1
--- AbstractBatchOperation.java 9 Apr 2003 02:22:12 -0000 1.16.2.2
***************
*** 72,76 ****
}
! return new DefaultTableMetaData(tableName,
(Column[])columnList.toArray(new Column[0]),
databaseMetaData.getPrimaryKeys());
--- 72,76 ----
}
! return new DefaultTableMetaData(databaseMetaData.getTableName(),
(Column[])columnList.toArray(new Column[0]),
databaseMetaData.getPrimaryKeys());
|
|
From: <mla...@us...> - 2003-04-09 02:22:15
|
Update of /cvsroot/dbunit/dbunit/src/sql
In directory sc8-pr-cvs1:/tmp/cvs-serv22187/dbunit/src/sql
Added Files:
Tag: branch-iterator
mysql.sql
Log Message:
Fixed some issues with case sensitive database like MySQL. Should we also fix this in Main trunk or we assume it will be fix after the merge???
--- NEW FILE: mysql.sql ---
-----------------------------------------------------------------------------
-- TEST_TABLE
-----------------------------------------------------------------------------
CREATE TABLE test_table
(column0 VARCHAR(32),
column1 VARCHAR(32),
column2 VARCHAR(32),
column3 VARCHAR(32)) TYPE = InnoDB;
-----------------------------------------------------------------------------
-- SECOND_TABLE
-----------------------------------------------------------------------------
CREATE TABLE second_table
(COLUMN0 VARCHAR(32),
COLUMN1 VARCHAR(32),
COLUMN2 VARCHAR(32),
COLUMN3 VARCHAR(32)) TYPE = InnoDB;
-----------------------------------------------------------------------------
-- EMPTY_TABLE
-----------------------------------------------------------------------------
CREATE TABLE empty_table
(COLUMN0 VARCHAR(32),
COLUMN1 VARCHAR(32),
COLUMN2 VARCHAR(32),
COLUMN3 VARCHAR(32)) TYPE = InnoDB;
/*
-----------------------------------------------------------------------------
-- ESCAPED TABLE
-----------------------------------------------------------------------------
CREATE TABLE "ESCAPED TABLE"
(COLUMN0 VARCHAR(32),
COLUMN1 VARCHAR(32),
COLUMN2 VARCHAR(32),
"COLUMN 3" VARCHAR(32)) TYPE = InnoDB;
*/
-----------------------------------------------------------------------------
-- PK_TABLE
-----------------------------------------------------------------------------
CREATE TABLE pk_table
(PK0 NUMERIC(38, 0) NOT NULL,
PK1 NUMERIC(38, 0) NOT NULL,
PK2 NUMERIC(38, 0) NOT NULL,
NORMAL0 VARCHAR(32),
NORMAL1 VARCHAR(32), PRIMARY KEY (PK0, PK1, PK2)) TYPE = InnoDB;
-----------------------------------------------------------------------------
-- ONLY_PK_TABLE
-----------------------------------------------------------------------------
CREATE TABLE only_pk_table
(pk0 NUMERIC(38, 0) NOT NULL PRIMARY KEY) TYPE = InnoDB;
-----------------------------------------------------------------------------
-- EMPTY_MULTITYPE_TABLE
-----------------------------------------------------------------------------
CREATE TABLE empty_multitype_table
(VARCHAR_COL VARCHAR(32),
NUMERIC_COL NUMERIC(38, 0),
TIMESTAMP_COL TIMESTAMP,
VARBINARY_COL VARBINARY(254)) TYPE = InnoDB;
|
|
From: <mla...@us...> - 2003-04-09 02:22:14
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv22187/dbunit/src/java/org/dbunit/dataset
Modified Files:
Tag: branch-iterator
SortedTable.java
Log Message:
Fixed some issues with case sensitive database like MySQL. Should we also fix this in Main trunk or we assume it will be fix after the merge???
Index: SortedTable.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/SortedTable.java,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -C2 -d -r1.3 -r1.3.4.1
*** SortedTable.java 21 Feb 2003 13:13:17 -0000 1.3
--- SortedTable.java 9 Apr 2003 02:22:11 -0000 1.3.4.1
***************
*** 52,55 ****
--- 52,71 ----
/**
+ * Sort the decorated table by specified columns order.
+ */
+ public SortedTable(ITable table, String[] columnNames) throws DataSetException
+ {
+ _table = table;
+ _columns = new Column[columnNames.length];
+
+ Column[] columns = table.getTableMetaData().getColumns();
+ for (int i = 0; i < columnNames.length; i++)
+ {
+ String columnName = columnNames[i];
+ _columns[i] = DataSetUtils.getColumn(columnName, columns);
+ }
+ }
+
+ /**
* Sort the decorated table by specified metadata columns order. All
* metadata columns will be used.
|
|
From: <mla...@us...> - 2003-04-09 02:22:14
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database
In directory sc8-pr-cvs1:/tmp/cvs-serv22187/dbunit/src/java/org/dbunit/database
Modified Files:
Tag: branch-iterator
DatabaseDataSet.java
Log Message:
Fixed some issues with case sensitive database like MySQL. Should we also fix this in Main trunk or we assume it will be fix after the merge???
Index: DatabaseDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/DatabaseDataSet.java,v
retrieving revision 1.19.4.3
retrieving revision 1.19.4.4
diff -C2 -d -r1.19.4.3 -r1.19.4.4
*** DatabaseDataSet.java 7 Apr 2003 02:48:12 -0000 1.19.4.3
--- DatabaseDataSet.java 9 Apr 2003 02:22:11 -0000 1.19.4.4
***************
*** 24,27 ****
--- 24,28 ----
import org.dbunit.dataset.*;
+ import org.dbunit.dataset.filter.SequenceTableIterator;
import java.sql.*;
***************
*** 135,139 ****
}
nameList.add(tableName);
! _tableMap.put(tableName, null);
}
--- 136,140 ----
}
nameList.add(tableName);
! _tableMap.put(tableName.toUpperCase(), null);
}
***************
*** 163,167 ****
}
! return new DatabaseTableIterator(names, this);
}
--- 164,168 ----
}
! return new SequenceTableIterator(names, this);
}
|
|
From: <mla...@us...> - 2003-04-09 02:22:14
|
Update of /cvsroot/dbunit/dbunit
In directory sc8-pr-cvs1:/tmp/cvs-serv22187/dbunit
Modified Files:
Tag: branch-iterator
profile.properties
Log Message:
Fixed some issues with case sensitive database like MySQL. Should we also fix this in Main trunk or we assume it will be fix after the merge???
Index: profile.properties
===================================================================
RCS file: /cvsroot/dbunit/dbunit/profile.properties,v
retrieving revision 1.22
retrieving revision 1.22.4.1
diff -C2 -d -r1.22 -r1.22.4.1
*** profile.properties 13 Dec 2002 21:40:32 -0000 1.22
--- profile.properties 9 Apr 2003 02:22:11 -0000 1.22.4.1
***************
*** 6,10 ****
#dbunit.profile = oracle
#dbunit.profile = mysql
- #dbunit.profile = antoine
#dbunit.profile = mssql
--- 6,9 ----
***************
*** 27,41 ****
dbunit.profile.oracle.password = dbunit
! dbunit.profile.antoine.driverClass = oracle.jdbc.driver.OracleDriver
! dbunit.profile.antoine.connectionUrl = jdbc:oracle:thin:@demowin:1521:demowin
! dbunit.profile.antoine.schema = ANTOINE
! dbunit.profile.antoine.user = antoine
! dbunit.profile.antoine.password = antoine
!
! dbunit.profile.mysql.driverClass = org.gjt.mm.mysql.Driver
dbunit.profile.mysql.connectionUrl = jdbc:mysql://localhost:3306/dbunit
#dbunit.profile.mysql.schema = DBUNIT
! dbunit.profile.mysql.user = root
! dbunit.profile.mysql.password =
dbunit.profile.mssql.driverClass = com.microsoft.jdbc.sqlserver.SQLServerDriver
--- 26,34 ----
dbunit.profile.oracle.password = dbunit
! dbunit.profile.mysql.driverClass = com.mysql.jdbc.Driver
dbunit.profile.mysql.connectionUrl = jdbc:mysql://localhost:3306/dbunit
#dbunit.profile.mysql.schema = DBUNIT
! dbunit.profile.mysql.user = dbunit
! dbunit.profile.mysql.password = dbunit
dbunit.profile.mssql.driverClass = com.microsoft.jdbc.sqlserver.SQLServerDriver
***************
*** 51,54 ****
--- 44,53 ----
dbunit.profile.user = ${dbunit.profile.hypersonic.user}
dbunit.profile.password = ${dbunit.profile.hypersonic.password}
+
+ #dbunit.profile.driverClass = ${dbunit.profile.mysql.driverClass}
+ #dbunit.profile.connectionUrl = ${dbunit.profile.mysql.connectionUrl}
+ ##dbunit.profile.schema = ${dbunit.profile.mysql.schema}
+ #dbunit.profile.user = ${dbunit.profile.mysql.user}
+ #dbunit.profile.password = ${dbunit.profile.mysql.password}
#dbunit.profile.driverClass = ${dbunit.profile.mssql.driverClass}
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/database
In directory sc8-pr-cvs1:/tmp/cvs-serv20195/dbunit/src/test/org/dbunit/database
Modified Files:
Tag: branch-iterator
AllTests.java
Removed Files:
Tag: branch-iterator
DatabaseReverseTableIteratorTest.java
DatabaseTableIteratorTest.java
Log Message:
Refactored FilteredDataSet to work with new iterator paradigm.
Index: AllTests.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/database/AllTests.java,v
retrieving revision 1.9.4.1
retrieving revision 1.9.4.2
diff -C2 -d -r1.9.4.1 -r1.9.4.2
*** AllTests.java 7 Apr 2003 02:23:37 -0000 1.9.4.1
--- AllTests.java 9 Apr 2003 02:15:31 -0000 1.9.4.2
***************
*** 38,43 ****
suite.addTest(new TestSuite(DatabaseConnectionTest.class));
suite.addTest(new TestSuite(DatabaseDataSetTest.class));
- suite.addTest(new TestSuite(DatabaseReverseTableIteratorTest.class));
- suite.addTest(new TestSuite(DatabaseTableIteratorTest.class));
suite.addTest(new TestSuite(DatabaseTableMetaDataTest.class));
suite.addTest(new TestSuite(QueryDataSetTest.class));
--- 38,41 ----
--- DatabaseReverseTableIteratorTest.java DELETED ---
--- DatabaseTableIteratorTest.java DELETED ---
|
|
From: <mla...@us...> - 2003-04-09 02:15:41
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/filter
In directory sc8-pr-cvs1:/tmp/cvs-serv20195/dbunit/src/test/org/dbunit/dataset/filter
Modified Files:
Tag: branch-iterator
AllTests.java
Added Files:
Tag: branch-iterator
SequenceTableIteratorTest.java
Log Message:
Refactored FilteredDataSet to work with new iterator paradigm.
--- NEW FILE: SequenceTableIteratorTest.java ---
/*
*
* The DbUnit Database Testing Framework
* Copyright (C)2002, Manuel Laflamme
*
* 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.filter;
import org.dbunit.dataset.AbstractTableIteratorTest;
import org.dbunit.dataset.ITableIterator;
import org.dbunit.dataset.filter.SequenceTableIterator;
import org.dbunit.DatabaseEnvironment;
import org.dbunit.database.IDatabaseConnection;
import org.dbunit.database.DatabaseDataSet;
/**
* @author Manuel Laflamme
* @since Apr 6, 2003
* @version $Revision: 1.1.2.1 $
*/
public class SequenceTableIteratorTest extends AbstractTableIteratorTest
{
protected IDatabaseConnection _connection;
public SequenceTableIteratorTest(String s)
{
super(s);
}
////////////////////////////////////////////////////////////////////////////
// TestCase class
protected void setUp() throws Exception
{
super.setUp();
_connection = DatabaseEnvironment.getInstance().getConnection();
}
protected void tearDown() throws Exception
{
super.tearDown();
_connection = null;
}
protected String[] getExpectedNames() throws Exception
{
return _connection.createDataSet().getTableNames();
}
protected ITableIterator getIterator() throws Exception
{
return _connection.createDataSet().iterator();
}
protected ITableIterator getEmptyIterator() throws Exception
{
return new SequenceTableIterator(new String[0],
(DatabaseDataSet)_connection.createDataSet());
}
}
Index: AllTests.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/filter/AllTests.java,v
retrieving revision 1.2
retrieving revision 1.2.2.1
diff -C2 -d -r1.2 -r1.2.2.1
*** AllTests.java 19 Mar 2003 01:56:18 -0000 1.2
--- AllTests.java 9 Apr 2003 02:15:33 -0000 1.2.2.1
***************
*** 37,40 ****
--- 37,41 ----
suite.addTest(new TestSuite(IncludeTableFilterTest.class));
suite.addTest(new TestSuite(SequenceTableFilterTest.class));
+ suite.addTest(new TestSuite(SequenceTableIteratorTest.class));
return suite;
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter
In directory sc8-pr-cvs1:/tmp/cvs-serv17988/dbunit/src/java/org/dbunit/dataset/filter
Modified Files:
Tag: branch-iterator
AbstractTableFilter.java ITableFilter.java
SequenceTableFilter.java
Added Files:
Tag: branch-iterator
SequenceTableIterator.java
Log Message:
Refactored FilteredDataSet to work with new iterator paradigm.
--- NEW FILE: SequenceTableIterator.java ---
/*
*
* The DbUnit Database Testing Framework
* Copyright (C)2002, Manuel Laflamme
*
* 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.filter;
import org.dbunit.dataset.ITableIterator;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.ITableMetaData;
import org.dbunit.dataset.ITable;
import org.dbunit.dataset.IDataSet;
/**
* @author Manuel Laflamme
* @since Apr 6, 2003
* @version $Revision: 1.1.2.1 $
*/
public class SequenceTableIterator implements ITableIterator
{
private final String[] _tableNames;
private final IDataSet _dataSet;
private int _index = -1;
public SequenceTableIterator(String[] tableNames, IDataSet dataSet)
{
_tableNames = tableNames;
_dataSet = dataSet;
}
////////////////////////////////////////////////////////////////////////////
// ITableIterator interface
public boolean next() throws DataSetException
{
_index++;
return _index < _tableNames.length;
}
public ITableMetaData getTableMetaData() throws DataSetException
{
return _dataSet.getTableMetaData(_tableNames[_index]);
}
public ITable getTable() throws DataSetException
{
return _dataSet.getTable(_tableNames[_index]);
}
}
Index: AbstractTableFilter.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter/AbstractTableFilter.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -C2 -d -r1.1 -r1.1.2.1
*** AbstractTableFilter.java 11 Mar 2003 13:26:03 -0000 1.1
--- AbstractTableFilter.java 9 Apr 2003 02:07:14 -0000 1.1.2.1
***************
*** 24,31 ****
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.ITable;
! import org.dbunit.dataset.NoSuchTableException;
- import java.util.List;
import java.util.ArrayList;
/**
--- 24,32 ----
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.ITable;
! import org.dbunit.dataset.ITableIterator;
! import org.dbunit.dataset.ITableMetaData;
import java.util.ArrayList;
+ import java.util.List;
/**
***************
*** 59,76 ****
}
! public ITable[] getTables(IDataSet dataSet) throws DataSetException
{
! ITable[] tables = dataSet.getTables();
! List tableList = new ArrayList();
! for (int i = 0; i < tables.length; i++)
{
! ITable table = tables[i];
! String tableName = table.getTableMetaData().getTableName();
! if (isValidName(tableName))
{
! tableList.add(table);
}
}
- return (ITable[])tableList.toArray(new ITable[0]);
}
}
--- 60,106 ----
}
! public ITableIterator iterator(IDataSet dataSet, boolean reversed)
! throws DataSetException
{
! return new FilterIterator(reversed ?
! dataSet.reverseIterator() : dataSet.iterator());
! }
!
! ////////////////////////////////////////////////////////////////////////////
! // FilterIterator class
!
! private class FilterIterator implements ITableIterator
! {
! private final ITableIterator _iterator;
!
! public FilterIterator(ITableIterator iterator)
{
! _iterator = iterator;
! }
!
! ////////////////////////////////////////////////////////////////////////////
! // ITableIterator interface
!
! public boolean next() throws DataSetException
! {
! while(_iterator.next())
{
! if (isValidName(_iterator.getTableMetaData().getTableName()))
! {
! return true;
! }
}
+ return false;
+ }
+
+ public ITableMetaData getTableMetaData() throws DataSetException
+ {
+ return _iterator.getTableMetaData();
+ }
+
+ public ITable getTable() throws DataSetException
+ {
+ return _iterator.getTable();
}
}
}
Index: ITableFilter.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter/ITableFilter.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -C2 -d -r1.1 -r1.1.2.1
*** ITableFilter.java 11 Mar 2003 13:26:03 -0000 1.1
--- ITableFilter.java 9 Apr 2003 02:07:14 -0000 1.1.2.1
***************
*** 49,56 ****
/**
! * Returns the tables allowed by this filter from the specified dataset.
*
* @param dataSet the filtered dataset
*/
! public ITable[] getTables(IDataSet dataSet) throws DataSetException;
}
--- 49,57 ----
/**
! * Returns iterator of tables allowed by this filter from the specified dataset.
*
* @param dataSet the filtered dataset
*/
! public ITableIterator iterator(IDataSet dataSet, boolean reversed)
! throws DataSetException;
}
Index: SequenceTableFilter.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter/SequenceTableFilter.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -C2 -d -r1.1 -r1.1.2.1
*** SequenceTableFilter.java 11 Mar 2003 13:26:03 -0000 1.1
--- SequenceTableFilter.java 9 Apr 2003 02:07:14 -0000 1.1.2.1
***************
*** 105,119 ****
}
! public ITable[] getTables(IDataSet dataSet) throws DataSetException
{
- List tableList = new ArrayList();
String[] tableNames = getTableNames(dataSet);
! for (int i = 0; i < tableNames.length; i++)
! {
! String tableName = tableNames[i];
! tableList.add(dataSet.getTable(tableName));
! }
!
! return (ITable[])tableList.toArray(new ITable[0]);
}
}
--- 105,114 ----
}
! public ITableIterator iterator(IDataSet dataSet, boolean reversed)
! throws DataSetException
{
String[] tableNames = getTableNames(dataSet);
! return new SequenceTableIterator(reversed ?
! DataSetUtils.reverseStringArray(tableNames) : tableNames, dataSet);
}
}
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/filter
In directory sc8-pr-cvs1:/tmp/cvs-serv17988/dbunit/src/test/org/dbunit/dataset/filter
Modified Files:
Tag: branch-iterator
AbstractTableFilterTest.java ExcludeTableFilterTest.java
IncludeTableFilterTest.java SequenceTableFilterTest.java
Log Message:
Refactored FilteredDataSet to work with new iterator paradigm.
Index: AbstractTableFilterTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/filter/AbstractTableFilterTest.java,v
retrieving revision 1.2.2.1
retrieving revision 1.2.2.2
diff -C2 -d -r1.2.2.1 -r1.2.2.2
*** AbstractTableFilterTest.java 6 Apr 2003 20:34:43 -0000 1.2.2.1
--- AbstractTableFilterTest.java 9 Apr 2003 02:07:15 -0000 1.2.2.2
***************
*** 86,98 ****
public abstract void testGetTableNamesAndTableNotInDecoratedDataSet() throws Exception;
! public abstract void testGetTables() throws Exception;
!
! public abstract void testGetDuplicateTables() throws Exception;
! public abstract void testGetCaseInsensitiveTables() throws Exception;
! public abstract void testGetReverseTables() throws Exception;
! public abstract void testGetTablesAndTableNotInDecoratedDataSet() throws Exception;
}
--- 86,97 ----
public abstract void testGetTableNamesAndTableNotInDecoratedDataSet() throws Exception;
! public abstract void testIterator() throws Exception;
! public abstract void testIteratorWithDuplicateTables() throws Exception;
! public abstract void testCaseInsensitiveIterator() throws Exception;
! public abstract void testReverseIterator() throws Exception;
+ public abstract void testIteratorAndTableNotInDecoratedDataSet() throws Exception;
}
Index: ExcludeTableFilterTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/filter/ExcludeTableFilterTest.java,v
retrieving revision 1.2
retrieving revision 1.2.2.1
diff -C2 -d -r1.2 -r1.2.2.1
*** ExcludeTableFilterTest.java 20 Mar 2003 03:05:12 -0000 1.2
--- ExcludeTableFilterTest.java 9 Apr 2003 02:07:15 -0000 1.2.2.1
***************
*** 26,29 ****
--- 26,30 ----
import org.dbunit.dataset.LowerCaseDataSet;
import org.dbunit.dataset.DefaultTable;
+ import org.dbunit.dataset.DataSetUtils;
import java.util.Arrays;
***************
*** 158,162 ****
}
! public void testGetTables() throws Exception
{
String[] expectedNames = getExpectedNames();
--- 159,163 ----
}
! public void testIterator() throws Exception
{
String[] expectedNames = getExpectedNames();
***************
*** 168,172 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 169,174 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 175,179 ****
}
! public void testGetDuplicateTables() throws Exception
{
String[] expectedNames = getExpectedDuplicateNames();
--- 177,181 ----
}
! public void testIteratorWithDuplicateTables() throws Exception
{
String[] expectedNames = getExpectedDuplicateNames();
***************
*** 185,189 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 187,192 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 192,196 ****
}
! public void testGetCaseInsensitiveTables() throws Exception
{
ExcludeTableFilter filter = new ExcludeTableFilter();
--- 195,199 ----
}
! public void testCaseInsensitiveIterator() throws Exception
{
ExcludeTableFilter filter = new ExcludeTableFilter();
***************
*** 202,206 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 205,210 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 209,218 ****
}
! public void testGetReverseTables() throws Exception
{
// Cannot test!
}
! public void testGetTablesAndTableNotInDecoratedDataSet() throws Exception
{
String[] expectedNames = getExpectedNames();
--- 213,222 ----
}
! public void testReverseIterator() throws Exception
{
// Cannot test!
}
! public void testIteratorAndTableNotInDecoratedDataSet() throws Exception
{
String[] expectedNames = getExpectedNames();
***************
*** 225,229 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 229,234 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 341,345 ****
if (pattern.equals("*"))
{
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
--- 346,351 ----
if (pattern.equals("*"))
{
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
***************
*** 348,352 ****
else
{
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
--- 354,359 ----
else
{
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
***************
*** 374,378 ****
filter.excludeTable(pattern);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
--- 381,386 ----
filter.excludeTable(pattern);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
Index: IncludeTableFilterTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/filter/IncludeTableFilterTest.java,v
retrieving revision 1.2
retrieving revision 1.2.2.1
diff -C2 -d -r1.2 -r1.2.2.1
*** IncludeTableFilterTest.java 20 Mar 2003 03:05:12 -0000 1.2
--- IncludeTableFilterTest.java 9 Apr 2003 02:07:15 -0000 1.2.2.1
***************
*** 190,194 ****
}
! public void testGetTables() throws Exception
{
String[] expectedNames = getExpectedNames();
--- 190,194 ----
}
! public void testIterator() throws Exception
{
String[] expectedNames = getExpectedNames();
***************
*** 199,203 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 199,204 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 206,210 ****
}
! public void testGetDuplicateTables() throws Exception
{
String[] expectedNames = getExpectedDuplicateNames();
--- 207,211 ----
}
! public void testIteratorWithDuplicateTables() throws Exception
{
String[] expectedNames = getExpectedDuplicateNames();
***************
*** 215,219 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 216,221 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 222,226 ****
}
! public void testGetCaseInsensitiveTables() throws Exception
{
ITableFilter filter = new IncludeTableFilter(getExpectedNames());
--- 224,228 ----
}
! public void testCaseInsensitiveIterator() throws Exception
{
ITableFilter filter = new IncludeTableFilter(getExpectedNames());
***************
*** 231,235 ****
dataSet.getTableNames().length > lowerNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", lowerNames.length, actualTables.length);
--- 233,238 ----
dataSet.getTableNames().length > lowerNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", lowerNames.length, actualTables.length);
***************
*** 238,245 ****
}
! public void testGetReverseTables() throws Exception
{
! String[] expectedNames = getExpectedNames();
! String[] filterNames = DataSetUtils.reverseStringArray(expectedNames);
ITableFilter filter = new IncludeTableFilter(filterNames);
--- 241,248 ----
}
! public void testReverseIterator() throws Exception
{
! String[] filterNames = getExpectedNames();
! String[] expectedNames = DataSetUtils.reverseStringArray(filterNames);
ITableFilter filter = new IncludeTableFilter(filterNames);
***************
*** 248,252 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 251,256 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, true));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 255,259 ****
}
! public void testGetTablesAndTableNotInDecoratedDataSet() throws Exception
{
String[] expectedNames = getExpectedNames();
--- 259,263 ----
}
! public void testIteratorAndTableNotInDecoratedDataSet() throws Exception
{
String[] expectedNames = getExpectedNames();
***************
*** 268,272 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 272,277 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 387,391 ****
if (pattern.equals("*"))
{
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
--- 392,397 ----
if (pattern.equals("*"))
{
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
***************
*** 397,401 ****
else
{
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
--- 403,408 ----
else
{
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count - " + pattern,
***************
*** 422,426 ****
filter.includeTable(pattern);
! ITable[] actualTables = filter.getTables(dataSet);
assertEquals("table count - " + pattern, 0, actualTables.length);
}
--- 429,434 ----
filter.includeTable(pattern);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
assertEquals("table count - " + pattern, 0, actualTables.length);
}
Index: SequenceTableFilterTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/filter/SequenceTableFilterTest.java,v
retrieving revision 1.3
retrieving revision 1.3.2.1
diff -C2 -d -r1.3 -r1.3.2.1
*** SequenceTableFilterTest.java 19 Mar 2003 01:56:18 -0000 1.3
--- SequenceTableFilterTest.java 9 Apr 2003 02:07:15 -0000 1.3.2.1
***************
*** 21,34 ****
package org.dbunit.dataset.filter;
- import org.dbunit.dataset.*;
- import org.dbunit.dataset.xml.XmlDataSet;
import org.dbunit.database.AmbiguousTableNameException;
! import junit.framework.TestCase;
!
! import java.io.FileReader;
import java.util.Arrays;
import java.util.List;
- import java.util.ArrayList;
/**
--- 21,34 ----
package org.dbunit.dataset.filter;
import org.dbunit.database.AmbiguousTableNameException;
+ import org.dbunit.dataset.DataSetUtils;
+ import org.dbunit.dataset.DefaultDataSet;
+ import org.dbunit.dataset.IDataSet;
+ import org.dbunit.dataset.ITable;
+ import org.dbunit.dataset.LowerCaseDataSet;
! import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
***************
*** 170,174 ****
}
! public void testGetTables() throws Exception
{
String[] expectedNames = getExpectedNames();
--- 170,174 ----
}
! public void testIterator() throws Exception
{
String[] expectedNames = getExpectedNames();
***************
*** 179,183 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 179,184 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 186,190 ****
}
! public void testGetDuplicateTables() throws Exception
{
String[] expectedNames = getExpectedDuplicateNames();
--- 187,191 ----
}
! public void testIteratorWithDuplicateTables() throws Exception
{
String[] expectedNames = getExpectedDuplicateNames();
***************
*** 197,201 ****
try
{
! filter.getTables(dataSet);
fail("Should not be here!");
}
--- 198,202 ----
try
{
! DataSetUtils.getTables(filter.iterator(dataSet, false));
fail("Should not be here!");
}
***************
*** 205,209 ****
}
! public void testGetCaseInsensitiveTables() throws Exception
{
ITableFilter filter = new SequenceTableFilter(getExpectedNames());
--- 206,210 ----
}
! public void testCaseInsensitiveIterator() throws Exception
{
ITableFilter filter = new SequenceTableFilter(getExpectedNames());
***************
*** 214,218 ****
dataSet.getTableNames().length > lowerNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", lowerNames.length, actualTables.length);
--- 215,220 ----
dataSet.getTableNames().length > lowerNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", lowerNames.length, actualTables.length);
***************
*** 221,228 ****
}
! public void testGetReverseTables() throws Exception
{
! String[] expectedNames = DataSetUtils.reverseStringArray(getExpectedNames());
! ITableFilter filter = new SequenceTableFilter(expectedNames);
IDataSet dataSet = createDataSet();
--- 223,231 ----
}
! public void testReverseIterator() throws Exception
{
! String[] filterNames = getExpectedNames();
! String[] expectedNames = DataSetUtils.reverseStringArray(filterNames);
! ITableFilter filter = new SequenceTableFilter(filterNames);
IDataSet dataSet = createDataSet();
***************
*** 230,234 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 233,238 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, true));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 237,241 ****
}
! public void testGetTablesAndTableNotInDecoratedDataSet() throws Exception
{
String[] expectedNames = getExpectedNames();
--- 241,245 ----
}
! public void testIteratorAndTableNotInDecoratedDataSet() throws Exception
{
String[] expectedNames = getExpectedNames();
***************
*** 250,254 ****
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = filter.getTables(dataSet);
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
--- 254,278 ----
dataSet.getTableNames().length > expectedNames.length);
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
! String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
! assertEquals("table count", expectedNames.length, actualTables.length);
! assertEquals("table names",
! Arrays.asList(expectedNames), Arrays.asList(actualNames));
! }
!
! ////////////////////////////////////////////////////////////////////////////
!
! public void testIteratorWithDifferentSequence() throws Exception
! {
! String[] expectedNames = DataSetUtils.reverseStringArray(getExpectedNames());
! ITableFilter filter = new SequenceTableFilter(expectedNames);
!
! IDataSet dataSet = createDataSet();
! assertTrue("dataset names count",
! dataSet.getTableNames().length > expectedNames.length);
!
! ITable[] actualTables = DataSetUtils.getTables(
! filter.iterator(dataSet, false));
String[] actualNames = new DefaultDataSet(actualTables).getTableNames();
assertEquals("table count", expectedNames.length, actualTables.length);
***************
*** 256,258 ****
--- 280,283 ----
Arrays.asList(expectedNames), Arrays.asList(actualNames));
}
+
}
|
|
From: <mla...@us...> - 2003-04-09 02:07:19
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv17988/dbunit/src/java/org/dbunit/dataset
Modified Files:
Tag: branch-iterator
DataSetUtils.java FilteredDataSet.java
Log Message:
Refactored FilteredDataSet to work with new iterator paradigm.
Index: DataSetUtils.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/DataSetUtils.java,v
retrieving revision 1.15.2.1
retrieving revision 1.15.2.2
diff -C2 -d -r1.15.2.1 -r1.15.2.2
*** DataSetUtils.java 8 Apr 2003 02:43:33 -0000 1.15.2.1
--- DataSetUtils.java 9 Apr 2003 02:07:13 -0000 1.15.2.2
***************
*** 236,241 ****
public static ITable[] getTables(IDataSet dataSet) throws DataSetException
{
List tableList = new ArrayList();
- ITableIterator iterator = dataSet.iterator();
while(iterator.next())
{
--- 236,248 ----
public static ITable[] getTables(IDataSet dataSet) throws DataSetException
{
+ return getTables(dataSet.iterator());
+ }
+
+ /**
+ * Returns the tables from the specified iterator.
+ */
+ public static ITable[] getTables(ITableIterator iterator) throws DataSetException
+ {
List tableList = new ArrayList();
while(iterator.next())
{
Index: FilteredDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/FilteredDataSet.java,v
retrieving revision 1.12.2.2
retrieving revision 1.12.2.3
diff -C2 -d -r1.12.2.2 -r1.12.2.3
*** FilteredDataSet.java 8 Apr 2003 02:43:33 -0000 1.12.2.2
--- FilteredDataSet.java 9 Apr 2003 02:07:14 -0000 1.12.2.3
***************
*** 74,78 ****
throws DataSetException
{
! return new DefaultTableIterator(_filter.getTables(_dataSet), reversed);
}
--- 74,78 ----
throws DataSetException
{
! return _filter.iterator(_dataSet, reversed);
}
|
|
From: <mla...@us...> - 2003-04-09 02:07:19
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database
In directory sc8-pr-cvs1:/tmp/cvs-serv17988/dbunit/src/java/org/dbunit/database
Removed Files:
Tag: branch-iterator
DatabaseTableIterator.java
Log Message:
Refactored FilteredDataSet to work with new iterator paradigm.
--- DatabaseTableIterator.java DELETED ---
|
|
From: <mla...@us...> - 2003-04-08 02:43:38
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/excel
In directory sc8-pr-cvs1:/tmp/cvs-serv4900/dbunit/src/java/org/dbunit/dataset/excel
Modified Files:
Tag: branch-iterator
XlsDataSet.java
Log Message:
Removed multiple usage of IDataSet.getTables().
Index: XlsDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/excel/XlsDataSet.java,v
retrieving revision 1.2.2.1
retrieving revision 1.2.2.2
diff -C2 -d -r1.2.2.1 -r1.2.2.2
*** XlsDataSet.java 6 Apr 2003 13:56:32 -0000 1.2.2.1
--- XlsDataSet.java 8 Apr 2003 02:43:34 -0000 1.2.2.2
***************
*** 83,96 ****
HSSFWorkbook workbook = new HSSFWorkbook();
! ITable[] tables = dataSet.getTables();
! for (int i = 0; i < tables.length; i++)
{
// create the table i.e. sheet
! ITable table = tables[i];
ITableMetaData metaData = table.getTableMetaData();
HSSFSheet sheet = workbook.createSheet(metaData.getTableName());
// write table metadata i.e. first row in sheet
! workbook.setSheetName(i, metaData.getTableName());
HSSFRow headerRow = sheet.createRow(0);
--- 83,97 ----
HSSFWorkbook workbook = new HSSFWorkbook();
! int index = 0;
! ITableIterator iterator = dataSet.iterator();
! while(iterator.next())
{
// create the table i.e. sheet
! ITable table = iterator.getTable();
ITableMetaData metaData = table.getTableMetaData();
HSSFSheet sheet = workbook.createSheet(metaData.getTableName());
// write table metadata i.e. first row in sheet
! workbook.setSheetName(index, metaData.getTableName());
HSSFRow headerRow = sheet.createRow(0);
***************
*** 119,122 ****
--- 120,124 ----
}
+ index++;
}
|
|
From: <mla...@us...> - 2003-04-08 02:43:38
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv4900/dbunit/src/java/org/dbunit/dataset
Modified Files:
Tag: branch-iterator
CaseInsensitiveDataSet.java DataSetUtils.java
FilteredDataSet.java LowerCaseDataSet.java
ReplacementDataSet.java SortedDataSet.java
Log Message:
Removed multiple usage of IDataSet.getTables().
Index: CaseInsensitiveDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/CaseInsensitiveDataSet.java,v
retrieving revision 1.6.4.1
retrieving revision 1.6.4.2
diff -C2 -d -r1.6.4.1 -r1.6.4.2
*** CaseInsensitiveDataSet.java 6 Apr 2003 13:56:29 -0000 1.6.4.1
--- CaseInsensitiveDataSet.java 8 Apr 2003 02:43:33 -0000 1.6.4.2
***************
*** 22,26 ****
* @deprecated All IDataSet implementations are case insensitive since DbUnit 1.5
*/
! public class CaseInsensitiveDataSet implements IDataSet
{
private final IDataSet _dataSet;
--- 22,26 ----
* @deprecated All IDataSet implementations are case insensitive since DbUnit 1.5
*/
! public class CaseInsensitiveDataSet extends AbstractDataSet
{
private final IDataSet _dataSet;
***************
*** 56,59 ****
--- 56,69 ----
////////////////////////////////////////////////////////////////////////////
+ // AbstractDataSet class
+
+ protected ITableIterator createIterator(boolean reversed)
+ throws DataSetException
+ {
+ return new CaseInsensitiveIterator(reversed ?
+ _dataSet.reverseIterator() : _dataSet.iterator());
+ }
+
+ ////////////////////////////////////////////////////////////////////////////
// IDataSet interface
***************
*** 75,93 ****
}
! public ITable[] getTables() throws DataSetException
! {
! return _dataSet.getTables();
! }
! public ITableIterator iterator() throws DataSetException
{
! return new DefaultTableIterator(getTables());
! }
! public ITableIterator reverseIterator() throws DataSetException
! {
! return new DefaultTableIterator(getTables(), true);
! }
}
--- 85,118 ----
}
! ////////////////////////////////////////////////////////////////////////////
! // CaseInsensitiveIterator class
! private class CaseInsensitiveIterator implements ITableIterator
{
! private final ITableIterator _iterator;
! public CaseInsensitiveIterator(ITableIterator iterator)
! {
! _iterator = iterator;
! }
!
! ////////////////////////////////////////////////////////////////////////
! // ITableIterator interface
!
! public boolean next() throws DataSetException
! {
! return _iterator.next();
! }
!
! public ITableMetaData getTableMetaData() throws DataSetException
! {
! return _iterator.getTableMetaData();
! }
+ public ITable getTable() throws DataSetException
+ {
+ return new CaseInsensitiveTable(_iterator.getTable());
+ }
+ }
}
Index: DataSetUtils.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/DataSetUtils.java,v
retrieving revision 1.15
retrieving revision 1.15.2.1
diff -C2 -d -r1.15 -r1.15.2.1
*** DataSetUtils.java 11 Mar 2003 13:26:03 -0000 1.15
--- DataSetUtils.java 8 Apr 2003 02:43:33 -0000 1.15.2.1
***************
*** 28,31 ****
--- 28,33 ----
import java.util.StringTokenizer;
+ import java.util.List;
+ import java.util.ArrayList;
/**
***************
*** 234,239 ****
public static ITable[] getTables(IDataSet dataSet) throws DataSetException
{
! // return getTables(dataSet.getTableNames(), dataSet);
! return dataSet.getTables();
}
--- 236,246 ----
public static ITable[] getTables(IDataSet dataSet) throws DataSetException
{
! List tableList = new ArrayList();
! ITableIterator iterator = dataSet.iterator();
! while(iterator.next())
! {
! tableList.add(iterator.getTable());
! }
! return (ITable[])tableList.toArray(new ITable[0]);
}
Index: FilteredDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/FilteredDataSet.java,v
retrieving revision 1.12.2.1
retrieving revision 1.12.2.2
diff -C2 -d -r1.12.2.1 -r1.12.2.2
*** FilteredDataSet.java 6 Apr 2003 13:56:29 -0000 1.12.2.1
--- FilteredDataSet.java 8 Apr 2003 02:43:33 -0000 1.12.2.2
***************
*** 39,43 ****
* @version $Revision$
*/
! public class FilteredDataSet implements IDataSet
{
private final IDataSet _dataSet;
--- 39,43 ----
* @version $Revision$
*/
! public class FilteredDataSet extends AbstractDataSet
{
private final IDataSet _dataSet;
***************
*** 69,72 ****
--- 69,81 ----
////////////////////////////////////////////////////////////////////////////
+ // AbstractDataSet class
+
+ protected ITableIterator createIterator(boolean reversed)
+ throws DataSetException
+ {
+ return new DefaultTableIterator(_filter.getTables(_dataSet), reversed);
+ }
+
+ ////////////////////////////////////////////////////////////////////////////
// IDataSet interface
***************
*** 96,115 ****
return _dataSet.getTable(tableName);
}
-
- public ITable[] getTables() throws DataSetException
- {
- return _filter.getTables(_dataSet);
- }
-
- public ITableIterator iterator() throws DataSetException
- {
- return new DefaultTableIterator(getTables());
- }
-
- public ITableIterator reverseIterator() throws DataSetException
- {
- return new DefaultTableIterator(getTables(), true);
- }
-
}
--- 105,108 ----
Index: LowerCaseDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/LowerCaseDataSet.java,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -C2 -d -r1.1.4.1 -r1.1.4.2
*** LowerCaseDataSet.java 6 Apr 2003 13:56:29 -0000 1.1.4.1
--- LowerCaseDataSet.java 8 Apr 2003 02:43:33 -0000 1.1.4.2
***************
*** 34,57 ****
public class LowerCaseDataSet extends AbstractDataSet
{
! private final ITable[] _tables;
public LowerCaseDataSet(ITable table) throws DataSetException
{
! this(new ITable[]{table});
}
! public LowerCaseDataSet(IDataSet dataSet) throws DataSetException
{
! this(dataSet.getTables());
}
! public LowerCaseDataSet(ITable[] tables) throws DataSetException
{
! ITable[] lowerTables = new ITable[tables.length];
! for (int i = 0; i < tables.length; i++)
! {
! lowerTables[i] = createLowerTable(tables[i]);
! }
! _tables = lowerTables;
}
--- 34,52 ----
public class LowerCaseDataSet extends AbstractDataSet
{
! private final IDataSet _dataSet;
public LowerCaseDataSet(ITable table) throws DataSetException
{
! this(new DefaultDataSet(table));
}
! public LowerCaseDataSet(ITable[] tables) throws DataSetException
{
! this(new DefaultDataSet(tables));
}
! public LowerCaseDataSet(IDataSet dataSet) throws DataSetException
{
! _dataSet = dataSet;
}
***************
*** 68,72 ****
throws DataSetException
{
! return new DefaultTableIterator(_tables, reversed);
}
}
--- 63,122 ----
throws DataSetException
{
! return new LowerCaseIterator(reversed ?
! _dataSet.reverseIterator() : _dataSet.iterator());
! }
!
! ////////////////////////////////////////////////////////////////////////////
! // IDataSet interface
!
! public String[] getTableNames() throws DataSetException
! {
! String[] tableNames = super.getTableNames();
! for (int i = 0; i < tableNames.length; i++)
! {
! tableNames[i] = tableNames[i].toLowerCase();
! }
! return tableNames;
! }
!
! public ITableMetaData getTableMetaData(String tableName) throws DataSetException
! {
! return new LowerCaseTableMetaData(super.getTableMetaData(tableName));
! }
!
! public ITable getTable(String tableName) throws DataSetException
! {
! return createLowerTable(super.getTable(tableName));
! }
!
! ////////////////////////////////////////////////////////////////////////////
! // LowerCaseIterator class
!
! private class LowerCaseIterator implements ITableIterator
! {
! private final ITableIterator _iterator;
!
! public LowerCaseIterator(ITableIterator iterator)
! {
! _iterator = iterator;
! }
!
! ////////////////////////////////////////////////////////////////////////
! // ITableIterator interface
!
! public boolean next() throws DataSetException
! {
! return _iterator.next();
! }
!
! public ITableMetaData getTableMetaData() throws DataSetException
! {
! return new LowerCaseTableMetaData(_iterator.getTableMetaData());
! }
!
! public ITable getTable() throws DataSetException
! {
! return createLowerTable(_iterator.getTable());
! }
}
}
Index: ReplacementDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/ReplacementDataSet.java,v
retrieving revision 1.4.2.1
retrieving revision 1.4.2.2
diff -C2 -d -r1.4.2.1 -r1.4.2.2
*** ReplacementDataSet.java 6 Apr 2003 13:56:28 -0000 1.4.2.1
--- ReplacementDataSet.java 8 Apr 2003 02:43:33 -0000 1.4.2.2
***************
*** 21,27 ****
package org.dbunit.dataset;
- import java.util.ArrayList;
import java.util.HashMap;
- import java.util.List;
import java.util.Map;
--- 21,25 ----
***************
*** 34,38 ****
* @version $Revision$
*/
! public class ReplacementDataSet implements IDataSet
{
private final IDataSet _dataSet;
--- 32,36 ----
* @version $Revision$
*/
! public class ReplacementDataSet extends AbstractDataSet
{
private final IDataSet _dataSet;
***************
*** 118,121 ****
--- 116,129 ----
////////////////////////////////////////////////////////////////////////////
+ // AbstractDataSet class
+
+ protected ITableIterator createIterator(boolean reversed)
+ throws DataSetException
+ {
+ return new ReplacementIterator(reversed ?
+ _dataSet.reverseIterator() : _dataSet.iterator());
+ }
+
+ ////////////////////////////////////////////////////////////////////////////
// IDataSet interface
***************
*** 136,160 ****
}
! public ITable[] getTables() throws DataSetException
{
! List tableList = new ArrayList();
! ITable[] tables = _dataSet.getTables();
! for (int i = 0; i < tables.length; i++)
{
! ITable table = tables[i];
! tableList.add(createReplacementTable(table));
}
- return (ITable[])tableList.toArray(new ITable[0]);
- }
! public ITableIterator iterator() throws DataSetException
! {
! return new DefaultTableIterator(getTables(), false);
! }
! public ITableIterator reverseIterator() throws DataSetException
! {
! return new DefaultTableIterator(getTables(), true);
! }
}
--- 144,176 ----
}
! ////////////////////////////////////////////////////////////////////////////
! // ReplacementIterator class
!
! private class ReplacementIterator implements ITableIterator
{
! private final ITableIterator _iterator;
!
! public ReplacementIterator(ITableIterator iterator)
{
! _iterator = iterator;
}
! ////////////////////////////////////////////////////////////////////////
! // ITableIterator interface
! public boolean next() throws DataSetException
! {
! return _iterator.next();
! }
+ public ITableMetaData getTableMetaData() throws DataSetException
+ {
+ return _iterator.getTableMetaData();
+ }
+
+ public ITable getTable() throws DataSetException
+ {
+ return createReplacementTable(_iterator.getTable());
+ }
+ }
}
Index: SortedDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/SortedDataSet.java,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -C2 -d -r1.1.4.1 -r1.1.4.2
*** SortedDataSet.java 6 Apr 2003 13:56:29 -0000 1.1.4.1
--- SortedDataSet.java 8 Apr 2003 02:43:33 -0000 1.1.4.2
***************
*** 30,44 ****
public class SortedDataSet extends AbstractDataSet
{
! private final ITable[] _tables;
public SortedDataSet(IDataSet dataSet) throws DataSetException
{
! ITable[] tables = dataSet.getTables();
! for (int i = 0; i < tables.length; i++)
! {
! tables[i] = new SortedTable(tables[i]);
! }
!
! _tables = tables;
}
--- 30,38 ----
public class SortedDataSet extends AbstractDataSet
{
! private final IDataSet _dataSet;
public SortedDataSet(IDataSet dataSet) throws DataSetException
{
! _dataSet = dataSet;
}
***************
*** 49,54 ****
throws DataSetException
{
! return new DefaultTableIterator(_tables, reversed);
}
}
--- 43,99 ----
throws DataSetException
{
! return new SortedIterator(reversed ?
! _dataSet.reverseIterator() : _dataSet.iterator());
! }
!
! ////////////////////////////////////////////////////////////////////////////
! // IDataSet interface
!
! public String[] getTableNames() throws DataSetException
! {
! return _dataSet.getTableNames();
! }
!
! public ITableMetaData getTableMetaData(String tableName) throws DataSetException
! {
! return _dataSet.getTableMetaData(tableName);
! }
!
! public ITable getTable(String tableName) throws DataSetException
! {
! return new SortedTable(_dataSet.getTable(tableName));
}
+
+ ////////////////////////////////////////////////////////////////////////////
+ // SortedIterator class
+
+ private class SortedIterator implements ITableIterator
+ {
+ private final ITableIterator _iterator;
+
+ public SortedIterator(ITableIterator iterator)
+ {
+ _iterator = iterator;
+ }
+
+ ////////////////////////////////////////////////////////////////////////
+ // ITableIterator interface
+
+ public boolean next() throws DataSetException
+ {
+ return _iterator.next();
+ }
+
+ public ITableMetaData getTableMetaData() throws DataSetException
+ {
+ return _iterator.getTableMetaData();
+ }
+
+ public ITable getTable() throws DataSetException
+ {
+ return new SortedTable(_iterator.getTable());
+ }
+ }
+
}
|
|
From: <mla...@us...> - 2003-04-08 02:43:38
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv4900/dbunit/src/java/org/dbunit/dataset/xml
Modified Files:
Tag: branch-iterator
FlatXmlDataSet.java XmlDataSet.java
Log Message:
Removed multiple usage of IDataSet.getTables().
Index: FlatXmlDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml/FlatXmlDataSet.java,v
retrieving revision 1.20.2.1
retrieving revision 1.20.2.2
diff -C2 -d -r1.20.2.1 -r1.20.2.2
*** FlatXmlDataSet.java 6 Apr 2003 13:56:28 -0000 1.20.2.1
--- FlatXmlDataSet.java 8 Apr 2003 02:43:34 -0000 1.20.2.2
***************
*** 23,31 ****
package org.dbunit.dataset.xml;
! import org.dbunit.dataset.*;
import org.dbunit.dataset.datatype.DataType;
import org.dbunit.dataset.datatype.TypeCastException;
! import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
--- 23,53 ----
package org.dbunit.dataset.xml;
! import org.dbunit.dataset.AbstractDataSet;
! import org.dbunit.dataset.Column;
! import org.dbunit.dataset.DataSetException;
! import org.dbunit.dataset.DefaultTableIterator;
! import org.dbunit.dataset.IDataSet;
! import org.dbunit.dataset.ITable;
! import org.dbunit.dataset.ITableIterator;
! import org.dbunit.dataset.ITableMetaData;
import org.dbunit.dataset.datatype.DataType;
import org.dbunit.dataset.datatype.TypeCastException;
! import electric.xml.DocType;
! import electric.xml.Document;
! import electric.xml.Element;
! import electric.xml.Elements;
! import electric.xml.ParseException;
! import electric.xml.XMLDecl;
!
! import java.io.BufferedReader;
! import java.io.File;
! import java.io.FileReader;
! import java.io.IOException;
! import java.io.InputStream;
! import java.io.InputStreamReader;
! import java.io.OutputStream;
! import java.io.Reader;
! import java.io.Writer;
import java.net.MalformedURLException;
import java.net.URL;
***************
*** 33,38 ****
import java.util.List;
- import electric.xml.*;
-
/**
* @author Manuel Laflamme
--- 55,58 ----
***************
*** 288,293 ****
throws DataSetException
{
- ITable[] tables = dataSet.getTables();
-
Document document = new Document();
document.addChild(new XMLDecl("1.0", encoding));
--- 308,311 ----
***************
*** 297,304 ****
// tables
! for (int i = 0; i < tables.length; i++)
{
! ITable table = tables[i];
! ITableMetaData metaData = tables[i].getTableMetaData();
String tableName = metaData.getTableName();
--- 315,323 ----
// tables
! ITableIterator iterator = dataSet.iterator();
! while(iterator.next())
{
! ITable table = iterator.getTable();
! ITableMetaData metaData = table.getTableMetaData();
String tableName = metaData.getTableName();
Index: XmlDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml/XmlDataSet.java,v
retrieving revision 1.15.2.1
retrieving revision 1.15.2.2
diff -C2 -d -r1.15.2.1 -r1.15.2.2
*** XmlDataSet.java 6 Apr 2003 13:56:28 -0000 1.15.2.1
--- XmlDataSet.java 8 Apr 2003 02:43:34 -0000 1.15.2.2
***************
*** 137,142 ****
throws DataSetException
{
- ITable[] tables = dataSet.getTables();
-
Document document = new Document();
document.addChild(new XMLDecl("1.0", encoding));
--- 137,140 ----
***************
*** 144,151 ****
// dataset
Element rootElem = document.addElement("dataset");
! for (int i = 0; i < tables.length; i++)
{
! ITable table = tables[i];
! ITableMetaData metaData = tables[i].getTableMetaData();
String tableName = metaData.getTableName();
--- 142,150 ----
// dataset
Element rootElem = document.addElement("dataset");
! ITableIterator iterator = dataSet.iterator();
! while(iterator.next())
{
! ITable table = iterator.getTable();
! ITableMetaData metaData = table.getTableMetaData();
String tableName = metaData.getTableName();
|
|
From: <mla...@us...> - 2003-04-07 02:48:16
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/mssqlserver
In directory sc8-pr-cvs1:/tmp/cvs-serv28800/dbunit/src/java/org/dbunit/operation/mssqlserver
Modified Files:
Tag: branch-iterator
InsertIdentityOperation.java
Log Message:
Refactored operations to use iterator() instead of getTables().
Index: InsertIdentityOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/mssqlserver/InsertIdentityOperation.java,v
retrieving revision 1.14
retrieving revision 1.14.4.1
diff -C2 -d -r1.14 -r1.14.4.1
*** InsertIdentityOperation.java 16 Feb 2003 17:41:14 -0000 1.14
--- InsertIdentityOperation.java 7 Apr 2003 02:48:13 -0000 1.14.4.1
***************
*** 98,101 ****
--- 98,103 ----
try
{
+ IDataSet databaseDataSet = connection.createDataSet();
+
// INSERT_IDENTITY need to be enabled/disabled inside the
// same transaction
***************
*** 107,123 ****
// Execute decorated operation one table at a time
! ITable[] tables = dataSet.getTables();
! for (int i = 0; i < tables.length; i++)
{
! ITable table = tables[i];
!
! ITableMetaData databaseMetaData = table.getTableMetaData();
!
! if (!(databaseMetaData instanceof DatabaseTableMetaData)){
! databaseMetaData = new DatabaseTableMetaData(table.getTableMetaData().getTableName(),connection);
! }
String tableName = DataSetUtils.getQualifiedName(
connection.getSchema(),
! databaseMetaData.getTableName(), true);
// enable identity insert
--- 109,122 ----
// Execute decorated operation one table at a time
! ITableIterator iterator = dataSet.iterator();
! while(iterator.next())
{
! ITable table = iterator.getTable();
String tableName = DataSetUtils.getQualifiedName(
connection.getSchema(),
! table.getTableMetaData().getTableName(), true);
!
! ITableMetaData databaseMetaData =
! databaseDataSet.getTableMetaData(tableName);
// enable identity insert
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation
In directory sc8-pr-cvs1:/tmp/cvs-serv28800/dbunit/src/java/org/dbunit/operation
Modified Files:
Tag: branch-iterator
AbstractBatchOperation.java DeleteAllOperation.java
DeleteOperation.java RefreshOperation.java
Log Message:
Refactored operations to use iterator() instead of getTables().
Index: AbstractBatchOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/AbstractBatchOperation.java,v
retrieving revision 1.16
retrieving revision 1.16.2.1
diff -C2 -d -r1.16 -r1.16.2.1
*** AbstractBatchOperation.java 1 Apr 2003 02:01:42 -0000 1.16
--- AbstractBatchOperation.java 7 Apr 2003 02:48:13 -0000 1.16.2.1
***************
*** 81,87 ****
* allow subclass to do filtering.
*/
! protected ITable[] getTables(IDataSet dataSet) throws DatabaseUnitException
{
! return dataSet.getTables();
}
--- 81,87 ----
* allow subclass to do filtering.
*/
! protected ITableIterator iterator(IDataSet dataSet) throws DatabaseUnitException
{
! return dataSet.iterator();
}
***************
*** 96,106 ****
{
IStatementFactory factory = connection.getStatementFactory();
- ITable[] tables = getTables(dataSet);
// for each table
! for (int i = 0; i < tables.length; i++)
{
// do not process empty table
- ITable table = tables[i];
if (table.getRowCount() == 0)
{
--- 96,107 ----
{
IStatementFactory factory = connection.getStatementFactory();
// for each table
! ITableIterator iterator = iterator(dataSet);
! while(iterator.next())
{
+ ITable table = iterator.getTable();
+
// do not process empty table
if (table.getRowCount() == 0)
{
***************
*** 108,112 ****
}
- // String tableName = tableNames[i];
ITableMetaData metaData = getOperationMetaData(connection,
table.getTableMetaData());
--- 109,112 ----
***************
*** 123,134 ****
// for each row
int rowCount = table.getRowCount();
! for (int j = 0; j < rowCount; j++)
{
! int row = _reverseRowOrder ? (rowCount - 1 - j) : j;
// for each column
! for (int k = 0; k < columns.length; k++)
{
! Column column = columns[k];
statement.addValue(table.getValue(row,
column.getColumnName()), column.getDataType());
--- 123,134 ----
// for each row
int rowCount = table.getRowCount();
! for (int i = 0; i < rowCount; i++)
{
! int row = _reverseRowOrder ? (rowCount - 1 - i) : i;
// for each column
! for (int j = 0; j < columns.length; j++)
{
! Column column = columns[j];
statement.addValue(table.getValue(row,
column.getColumnName()), column.getDataType());
Index: DeleteAllOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/DeleteAllOperation.java,v
retrieving revision 1.13
retrieving revision 1.13.4.1
diff -C2 -d -r1.13 -r1.13.4.1
*** DeleteAllOperation.java 19 Feb 2003 21:45:33 -0000 1.13
--- DeleteAllOperation.java 7 Apr 2003 02:48:13 -0000 1.13.4.1
***************
*** 58,78 ****
try
{
! String[] tableNames = DataSetUtils.getReverseTableNames(dataSet);
! if (tableNames.length > 0)
{
! for (int i = 0; i < tableNames.length; i++)
! {
! // Use database table name. Required to support case sensitive database.
! ITableMetaData databaseMetaData =
! databaseDataSet.getTableMetaData(tableNames[i]);
! String tableName = databaseMetaData.getTableName();
! StringBuffer sqlBuffer = new StringBuffer(128);
! sqlBuffer.append("delete from ");
! sqlBuffer.append(DataSetUtils.getQualifiedName(
! connection.getSchema(), tableName, true));
! statement.addBatch(sqlBuffer.toString());
! }
statement.executeBatch();
statement.clearBatch();
--- 58,84 ----
try
{
! int count = 0;
! ITableIterator iterator = dataSet.reverseIterator();
! while(iterator.next())
{
! String tableName = iterator.getTableMetaData().getTableName();
! // Use database table name. Required to support case sensitive database.
! ITableMetaData databaseMetaData =
! databaseDataSet.getTableMetaData(tableName);
! tableName = databaseMetaData.getTableName();
+ StringBuffer sqlBuffer = new StringBuffer(128);
+ sqlBuffer.append("delete from ");
+ sqlBuffer.append(DataSetUtils.getQualifiedName(
+ connection.getSchema(), tableName, true));
+ statement.addBatch(sqlBuffer.toString());
+
+ count++;
+ }
+
+
+ if (count > 0)
+ {
statement.executeBatch();
statement.clearBatch();
Index: DeleteOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/DeleteOperation.java,v
retrieving revision 1.12
retrieving revision 1.12.2.1
diff -C2 -d -r1.12 -r1.12.2.1
*** DeleteOperation.java 1 Apr 2003 02:01:43 -0000 1.12
--- DeleteOperation.java 7 Apr 2003 02:48:13 -0000 1.12.2.1
***************
*** 44,56 ****
// AbstractBatchOperation class
! protected ITable[] getTables(IDataSet dataSet) throws DatabaseUnitException
{
! ITable[] tables = dataSet.getTables();
! ITable[] reverseTables = new ITable[tables.length];
! for (int i = 0; i < tables.length; i++)
! {
! reverseTables[tables.length - 1 - i] = tables[i];
! }
! return reverseTables;
}
--- 44,50 ----
// AbstractBatchOperation class
! protected ITableIterator iterator(IDataSet dataSet) throws DatabaseUnitException
{
! return dataSet.reverseIterator();
}
Index: RefreshOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/RefreshOperation.java,v
retrieving revision 1.23
retrieving revision 1.23.2.1
diff -C2 -d -r1.23 -r1.23.2.1
*** RefreshOperation.java 27 Mar 2003 22:34:55 -0000 1.23
--- RefreshOperation.java 7 Apr 2003 02:48:13 -0000 1.23.2.1
***************
*** 60,68 ****
// for each table
! ITable[] tables = dataSet.getTables();
! for (int i = 0; i < tables.length; i++)
{
// do not process empty table
- ITable table = tables[i];
if (table.getRowCount() == 0)
{
--- 60,69 ----
// for each table
! ITableIterator iterator = dataSet.iterator();
! while(iterator.next())
{
+ ITable table = iterator.getTable();
+
// do not process empty table
if (table.getRowCount() == 0)
{
***************
*** 78,86 ****
// refresh all rows
! for (int j = 0; j < table.getRowCount(); j++)
{
! if (!updateRowOperation.execute(table, j))
{
! insertRowOperation.execute(table, j);
}
}
--- 79,87 ----
// refresh all rows
! for (int i = 0; i < table.getRowCount(); i++)
{
! if (!updateRowOperation.execute(table, i))
{
! insertRowOperation.execute(table, i);
}
}
|
|
From: <mla...@us...> - 2003-04-07 02:48:15
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database
In directory sc8-pr-cvs1:/tmp/cvs-serv28800/dbunit/src/java/org/dbunit/database
Modified Files:
Tag: branch-iterator
DatabaseDataSet.java
Log Message:
Refactored operations to use iterator() instead of getTables().
Index: DatabaseDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/DatabaseDataSet.java,v
retrieving revision 1.19.4.2
retrieving revision 1.19.4.3
diff -C2 -d -r1.19.4.2 -r1.19.4.3
*** DatabaseDataSet.java 7 Apr 2003 02:20:09 -0000 1.19.4.2
--- DatabaseDataSet.java 7 Apr 2003 02:48:12 -0000 1.19.4.3
***************
*** 172,175 ****
--- 172,176 ----
{
initialize();
+
return (String[])_nameList.toArray(new String[0]);
}
***************
*** 179,185 ****
initialize();
- String upperTableName = tableName.toUpperCase();
-
// Verify if table exist in the database
if (!_tableMap.containsKey(upperTableName))
{
--- 180,185 ----
initialize();
// Verify if table exist in the database
+ String upperTableName = tableName.toUpperCase();
if (!_tableMap.containsKey(upperTableName))
{
***************
*** 213,216 ****
--- 213,218 ----
public ITable getTable(String tableName) throws DataSetException
{
+ initialize();
+
try
{
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv22111/dbunit/src/test/org/dbunit/dataset
Modified Files:
Tag: branch-iterator
AllTests.java DefaultTableIteratorTest.java
Added Files:
Tag: branch-iterator
AbstractTableIteratorTest.java
DefaultReverseTableIteratorTest.java
Log Message:
Added tests on DatabaseTableIterator.
--- NEW FILE: AbstractTableIteratorTest.java ---
/*
*
* The DbUnit Database Testing Framework
* Copyright (C)2002, Manuel Laflamme
*
* 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;
/**
* @author Manuel Laflamme
* @since Apr 6, 2003
* @version $Revision: 1.1.2.1 $
*/
public abstract class AbstractTableIteratorTest extends AbstractTest
{
public AbstractTableIteratorTest(String s)
{
super(s);
}
protected abstract ITableIterator getIterator() throws Exception;
protected abstract ITableIterator getEmptyIterator() throws Exception;
public void testNext() throws Exception
{
int count = 0;
String[] names = getExpectedNames();
ITableIterator iterator = getIterator();
while(iterator.next())
{
count++;
}
assertEquals("count", names.length, count);
}
public void testNextAndEmpty() throws Exception
{
int count = 0;
ITableIterator iterator = getEmptyIterator();
while(iterator.next())
{
count++;
}
assertEquals("count", 0, count);
}
public void testGetTableMetaData() throws Exception
{
int i = 0;
String[] names = getExpectedNames();
ITableIterator iterator = getIterator();
while(iterator.next())
{
assertEquals("name " + i, names[i],
iterator.getTableMetaData().getTableName());
i++;
}
assertEquals("count", names.length, i);
}
public void testGetTableMetaDataBeforeNext() throws Exception
{
ITableIterator iterator = getIterator();
try
{
iterator.getTableMetaData();
fail("Should have throw a ???Exception");
}
catch (IndexOutOfBoundsException e)
{
}
int i = 0;
String[] names = getExpectedNames();
while(iterator.next())
{
assertEquals("name " + i, names[i],
iterator.getTableMetaData().getTableName());
i++;
}
assertEquals("count", names.length, i);
}
public void testGetTableMetaDataAfterLastNext() throws Exception
{
int count = 0;
String[] names = getExpectedNames();
ITableIterator iterator = getIterator();
while(iterator.next())
{
count++;
}
assertEquals("count", names.length, count);
try
{
iterator.getTableMetaData();
fail("Should have throw a ???Exception");
}
catch (IndexOutOfBoundsException e)
{
}
}
public void testGetTable() throws Exception
{
int i = 0;
String[] names = getExpectedNames();
ITableIterator iterator = getIterator();
while(iterator.next())
{
assertEquals("name " + i, names[i],
iterator.getTable().getTableMetaData().getTableName());
i++;
}
assertEquals("count", names.length, i);
}
}
--- NEW FILE: DefaultReverseTableIteratorTest.java ---
/*
*
* The DbUnit Database Testing Framework
* Copyright (C)2002, Manuel Laflamme
*
* 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;
/**
* @author Manuel Laflamme
* @since Apr 6, 2003
* @version $Revision: 1.1.2.1 $
*/
public class DefaultReverseTableIteratorTest extends DefaultTableIteratorTest
{
public DefaultReverseTableIteratorTest(String s)
{
super(s);
}
protected String[] getExpectedNames() throws Exception
{
return DataSetUtils.reverseStringArray(super.getExpectedNames());
}
protected ITableIterator getIterator() throws Exception
{
return getIterator(true);
}
protected ITableIterator getEmptyIterator()
{
return new DefaultTableIterator(new ITable[0], true);
}
}
Index: AllTests.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/AllTests.java,v
retrieving revision 1.16.2.1
retrieving revision 1.16.2.2
diff -C2 -d -r1.16.2.1 -r1.16.2.2
*** AllTests.java 6 Apr 2003 20:38:24 -0000 1.16.2.1
--- AllTests.java 7 Apr 2003 02:23:38 -0000 1.16.2.2
***************
*** 48,51 ****
--- 48,52 ----
suite.addTest(new TestSuite(DataSetUtilsTest.class));
suite.addTest(new TestSuite(DefaultDataSetTest.class));
+ suite.addTest(new TestSuite(DefaultReverseTableIteratorTest.class));
suite.addTest(new TestSuite(DefaultTableIteratorTest.class));
suite.addTest(new TestSuite(DefaultTableMetaDataTest.class));
Index: DefaultTableIteratorTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/DefaultTableIteratorTest.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -C2 -d -r1.1.2.1 -r1.1.2.2
*** DefaultTableIteratorTest.java 6 Apr 2003 20:34:42 -0000 1.1.2.1
--- DefaultTableIteratorTest.java 7 Apr 2003 02:23:38 -0000 1.1.2.2
***************
*** 29,33 ****
* @version $Revision$
*/
! public class DefaultTableIteratorTest extends AbstractTest
{
public DefaultTableIteratorTest(String s)
--- 29,34 ----
* @version $Revision$
*/
! public class DefaultTableIteratorTest
! extends AbstractTableIteratorTest
{
public DefaultTableIteratorTest(String s)
***************
*** 38,51 ****
protected ITableIterator getIterator() throws Exception
{
! List tableList = new ArrayList();
! String[] names = getExpectedNames();
! for (int i = 0; i < names.length; i++)
! {
! String name = names[i];
! tableList.add(new DefaultTable(name));
! }
!
! ITable[] tables = (ITable[])tableList.toArray(new ITable[0]);
! return new DefaultTableIterator(tables);
}
--- 39,43 ----
protected ITableIterator getIterator() throws Exception
{
! return getIterator(false);
}
***************
*** 55,158 ****
}
! public void testNext() throws Exception
! {
! int count = 0;
! String[] names = getExpectedNames();
! ITableIterator iterator = getIterator();
! while(iterator.next())
! {
! count++;
! }
!
! assertEquals("count", names.length, count);
! }
!
! public void testNextAndEmpty() throws Exception
! {
! int count = 0;
! ITableIterator iterator = getEmptyIterator();
! while(iterator.next())
! {
! count++;
! }
!
! assertEquals("count", 0, count);
! }
!
! public void testGetTableMetaData() throws Exception
! {
! int i = 0;
! String[] names = getExpectedNames();
! ITableIterator iterator = getIterator();
! while(iterator.next())
! {
! assertEquals("name " + i, names[i],
! iterator.getTableMetaData().getTableName());
! i++;
! }
!
! assertEquals("count", names.length, i);
! }
!
! public void testGetTableMetaDataBeforeNext() throws Exception
! {
! ITableIterator iterator = getIterator();
! try
! {
! iterator.getTableMetaData();
! fail("Should have throw a ???Exception");
! }
! catch (IndexOutOfBoundsException e)
! {
!
! }
!
! int i = 0;
! String[] names = getExpectedNames();
! while(iterator.next())
! {
! assertEquals("name " + i, names[i],
! iterator.getTableMetaData().getTableName());
! i++;
! }
!
! assertEquals("count", names.length, i);
! }
!
! public void testGetTableMetaDataAfterLastNext() throws Exception
{
! int count = 0;
! String[] names = getExpectedNames();
! ITableIterator iterator = getIterator();
! while(iterator.next())
{
! count++;
}
! assertEquals("count", names.length, count);
!
! try
! {
! iterator.getTableMetaData();
! fail("Should have throw a ???Exception");
! }
! catch (IndexOutOfBoundsException e)
! {
! }
}
- public void testGetTable() throws Exception
- {
- int i = 0;
- String[] names = getExpectedNames();
- ITableIterator iterator = getIterator();
- while(iterator.next())
- {
- assertEquals("name " + i, names[i],
- iterator.getTable().getTableMetaData().getTableName());
- i++;
- }
-
- assertEquals("count", names.length, i);
- }
}
--- 47,63 ----
}
! protected ITableIterator getIterator(boolean reversed) throws Exception
{
! List tableList = new ArrayList();
! String[] names = super.getExpectedNames();
! for (int i = 0; i < names.length; i++)
{
! String name = names[i];
! tableList.add(new DefaultTable(name));
}
! ITable[] tables = (ITable[])tableList.toArray(new ITable[0]);
! return new DefaultTableIterator(tables, reversed);
}
}
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/database
In directory sc8-pr-cvs1:/tmp/cvs-serv22111/dbunit/src/test/org/dbunit/database
Modified Files:
Tag: branch-iterator
AllTests.java DatabaseDataSetTest.java
Added Files:
Tag: branch-iterator
DatabaseReverseTableIteratorTest.java
DatabaseTableIteratorTest.java
Log Message:
Added tests on DatabaseTableIterator.
--- NEW FILE: DatabaseReverseTableIteratorTest.java ---
/*
*
* The DbUnit Database Testing Framework
* Copyright (C)2002, Manuel Laflamme
*
* 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.dataset.ITableIterator;
import org.dbunit.dataset.DataSetUtils;
/**
* @author Manuel Laflamme
* @since Apr 6, 2003
* @version $Revision: 1.1.2.1 $
*/
public class DatabaseReverseTableIteratorTest extends DatabaseTableIteratorTest
{
public DatabaseReverseTableIteratorTest(String s)
{
super(s);
}
protected String[] getExpectedNames() throws Exception
{
return DataSetUtils.reverseStringArray(super.getExpectedNames());
}
protected ITableIterator getIterator() throws Exception
{
return _connection.createDataSet().reverseIterator();
}
}
--- NEW FILE: DatabaseTableIteratorTest.java ---
/*
*
* The DbUnit Database Testing Framework
* Copyright (C)2002, Manuel Laflamme
*
* 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.dataset.AbstractTableIteratorTest;
import org.dbunit.dataset.ITableIterator;
import org.dbunit.DatabaseEnvironment;
/**
* @author Manuel Laflamme
* @since Apr 6, 2003
* @version $Revision: 1.1.2.1 $
*/
public class DatabaseTableIteratorTest extends AbstractTableIteratorTest
{
protected IDatabaseConnection _connection;
public DatabaseTableIteratorTest(String s)
{
super(s);
}
////////////////////////////////////////////////////////////////////////////
// TestCase class
protected void setUp() throws Exception
{
super.setUp();
_connection = DatabaseEnvironment.getInstance().getConnection();
}
protected void tearDown() throws Exception
{
super.tearDown();
_connection = null;
}
protected String[] getExpectedNames() throws Exception
{
return _connection.createDataSet().getTableNames();
}
protected ITableIterator getIterator() throws Exception
{
return _connection.createDataSet().iterator();
}
protected ITableIterator getEmptyIterator() throws Exception
{
return new DatabaseTableIterator(new String[0],
(DatabaseDataSet)_connection.createDataSet());
}
}
Index: AllTests.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/database/AllTests.java,v
retrieving revision 1.9
retrieving revision 1.9.4.1
diff -C2 -d -r1.9 -r1.9.4.1
*** AllTests.java 16 Feb 2003 06:01:00 -0000 1.9
--- AllTests.java 7 Apr 2003 02:23:37 -0000 1.9.4.1
***************
*** 38,41 ****
--- 38,43 ----
suite.addTest(new TestSuite(DatabaseConnectionTest.class));
suite.addTest(new TestSuite(DatabaseDataSetTest.class));
+ suite.addTest(new TestSuite(DatabaseReverseTableIteratorTest.class));
+ suite.addTest(new TestSuite(DatabaseTableIteratorTest.class));
suite.addTest(new TestSuite(DatabaseTableMetaDataTest.class));
suite.addTest(new TestSuite(QueryDataSetTest.class));
Index: DatabaseDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/database/DatabaseDataSetTest.java,v
retrieving revision 1.19.4.1
retrieving revision 1.19.4.2
diff -C2 -d -r1.19.4.1 -r1.19.4.2
*** DatabaseDataSetTest.java 6 Apr 2003 21:52:08 -0000 1.19.4.1
--- DatabaseDataSetTest.java 7 Apr 2003 02:23:37 -0000 1.19.4.2
***************
*** 30,39 ****
import org.dbunit.dataset.DefaultTableMetaData;
import org.dbunit.dataset.IDataSet;
- import org.dbunit.dataset.ITable;
import org.dbunit.dataset.ITableMetaData;
import org.dbunit.dataset.datatype.DataType;
-
- import java.util.Arrays;
- import java.util.Comparator;
/**
--- 30,35 ----
|
|
From: <mla...@us...> - 2003-04-07 02:20:14
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/database
In directory sc8-pr-cvs1:/tmp/cvs-serv21114/dbunit/src/java/org/dbunit/database
Modified Files:
Tag: branch-iterator
DatabaseDataSet.java
Added Files:
Tag: branch-iterator
DatabaseTableIterator.java
Log Message:
DatabaseDataSet improvements:
* Faster access to metadata cache.
* Keep original database table ordering.
* Use a load on demand iterator implementation.
--- NEW FILE: DatabaseTableIterator.java ---
/*
*
* The DbUnit Database Testing Framework
* Copyright (C)2002, Manuel Laflamme
*
* 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.dataset.ITableIterator;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.ITableMetaData;
import org.dbunit.dataset.ITable;
/**
* @author Manuel Laflamme
* @since Apr 6, 2003
* @version $Revision: 1.1.2.1 $
*/
class DatabaseTableIterator implements ITableIterator
{
private final String[] _tableNames;
private final DatabaseDataSet _dataSet;
private int _index = -1;
public DatabaseTableIterator(String[] tableNames, DatabaseDataSet dataSet)
{
_tableNames = tableNames;
_dataSet = dataSet;
}
////////////////////////////////////////////////////////////////////////////
// ITableIterator interface
public boolean next() throws DataSetException
{
_index++;
return _index < _tableNames.length;
}
public ITableMetaData getTableMetaData() throws DataSetException
{
return _dataSet.getTableMetaData(_tableNames[_index]);
}
public ITable getTable() throws DataSetException
{
return _dataSet.getTable(_tableNames[_index]);
}
}
Index: DatabaseDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/database/DatabaseDataSet.java,v
retrieving revision 1.19.4.1
retrieving revision 1.19.4.2
diff -C2 -d -r1.19.4.1 -r1.19.4.2
*** DatabaseDataSet.java 6 Apr 2003 13:56:32 -0000 1.19.4.1
--- DatabaseDataSet.java 7 Apr 2003 02:20:09 -0000 1.19.4.2
***************
*** 32,36 ****
* @version $Revision$
*/
! public class DatabaseDataSet implements IDataSet
{
static final String QUALIFIED_TABLE_NAMES =
--- 32,36 ----
* @version $Revision$
*/
! public class DatabaseDataSet extends AbstractDataSet
{
static final String QUALIFIED_TABLE_NAMES =
***************
*** 39,43 ****
private final IDatabaseConnection _connection;
! private Map _tableMap = null;
DatabaseDataSet(IDatabaseConnection connection) throws SQLException
--- 39,44 ----
private final IDatabaseConnection _connection;
! private final Map _tableMap = new HashMap();
! private List _nameList = null;
DatabaseDataSet(IDatabaseConnection connection) throws SQLException
***************
*** 101,109 ****
* Get all the table names form the database that are not system tables.
*/
! private Map getTableMap() throws DataSetException
{
! if (_tableMap != null)
{
! return _tableMap;
}
--- 102,110 ----
* Get all the table names form the database that are not system tables.
*/
! private void initialize() throws DataSetException
{
! if (_nameList != null)
{
! return;
}
***************
*** 119,123 ****
try
{
! Map tableMap = new HashMap();
while (resultSet.next())
{
--- 120,124 ----
try
{
! List nameList = new ArrayList();
while (resultSet.next())
{
***************
*** 129,141 ****
// prevent table name conflict
! if (tableMap.containsKey(tableName))
{
throw new AmbiguousTableNameException(tableName);
}
! tableMap.put(tableName, null);
}
! _tableMap = tableMap;
! return _tableMap;
}
finally
--- 130,142 ----
// prevent table name conflict
! if (_tableMap.containsKey(tableName.toUpperCase()))
{
throw new AmbiguousTableNameException(tableName);
}
! nameList.add(tableName);
! _tableMap.put(tableName, null);
}
! _nameList = nameList;
}
finally
***************
*** 151,196 ****
////////////////////////////////////////////////////////////////////////////
// IDataSet interface
public String[] getTableNames() throws DataSetException
{
! return (String[])getTableMap().keySet().toArray(new String[0]);
}
public ITableMetaData getTableMetaData(String tableName) throws DataSetException
{
! for (Iterator it = getTableMap().entrySet().iterator(); it.hasNext();)
{
! Map.Entry entry = (Map.Entry)it.next();
! if (tableName.equalsIgnoreCase((String)entry.getKey()))
! {
! ITableMetaData metaData = (ITableMetaData)entry.getValue();
! if (metaData != null)
! {
! return metaData;
! }
! metaData = new DatabaseTableMetaData((String)entry.getKey(), _connection);
! getTableMap().put(metaData.getTableName(), metaData);
! return metaData;
! }
}
! throw new NoSuchTableException(tableName);
! // ITableMetaData metaData = (ITableMetaData)getTableMap().get(tableName);
! // if (metaData != null)
! // {
! // return metaData;
! // }
! //
! // if (!getTableMap().containsKey(tableName))
! // {
! // throw new NoSuchTableException(tableName);
! // }
! //
! // metaData = new DatabaseTableMetaData(tableName, _connection);
! // getTableMap().put(tableName, metaData);
! // return metaData;
}
--- 152,212 ----
////////////////////////////////////////////////////////////////////////////
+ // AbstractDataSet class
+
+ protected ITableIterator createIterator(boolean reversed)
+ throws DataSetException
+ {
+ String[] names = getTableNames();
+ if (reversed)
+ {
+ names = DataSetUtils.reverseStringArray(names);
+ }
+
+ return new DatabaseTableIterator(names, this);
+ }
+
+ ////////////////////////////////////////////////////////////////////////////
// IDataSet interface
public String[] getTableNames() throws DataSetException
{
! initialize();
! return (String[])_nameList.toArray(new String[0]);
}
public ITableMetaData getTableMetaData(String tableName) throws DataSetException
{
! initialize();
!
! String upperTableName = tableName.toUpperCase();
!
! // Verify if table exist in the database
! if (!_tableMap.containsKey(upperTableName))
{
! throw new NoSuchTableException(tableName);
! }
! // Try to find cached metadata
! ITableMetaData metaData = (ITableMetaData)_tableMap.get(upperTableName);
! if (metaData != null)
! {
! return metaData;
}
! // Search for original database table name
! for (Iterator it = _nameList.iterator(); it.hasNext();)
! {
! String databaseTableName = (String)it.next();
! if (databaseTableName.equalsIgnoreCase(tableName))
! {
! // Create metadata and cache it
! metaData = new DatabaseTableMetaData(
! databaseTableName, _connection);
! _tableMap.put(upperTableName, metaData);
! break;
! }
! }
! return metaData;
}
***************
*** 228,253 ****
}
}
-
- public ITable[] getTables() throws DataSetException
- {
- String[] names = getTableNames();
- List tableList = new ArrayList(names.length);
- for (int i = 0; i < names.length; i++)
- {
- tableList.add(getTable(names[i]));
- }
- return (ITable[])tableList.toArray(new ITable[0]);
- }
-
- public ITableIterator iterator() throws DataSetException
- {
- return new DefaultTableIterator(getTables());
- }
-
- public ITableIterator reverseIterator() throws DataSetException
- {
- return new DefaultTableIterator(getTables(), true);
- }
-
}
--- 244,247 ----
|
|
From: <mla...@us...> - 2003-04-06 21:52:12
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv24188/dbunit/src/test/org/dbunit/dataset
Modified Files:
Tag: branch-iterator
AbstractDataSetTest.java AbstractTest.java
CaseInsensitiveDataSetTest.java
Log Message:
Added tests for dataset iterator() and reverseIterator() methods.
Index: AbstractDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/AbstractDataSetTest.java,v
retrieving revision 1.19.4.1
retrieving revision 1.19.4.2
diff -C2 -d -r1.19.4.1 -r1.19.4.2
*** AbstractDataSetTest.java 6 Apr 2003 20:34:42 -0000 1.19.4.1
--- AbstractDataSetTest.java 6 Apr 2003 21:52:08 -0000 1.19.4.2
***************
*** 102,118 ****
protected abstract IDataSet createDuplicateDataSet() throws Exception;
- /**
- * Many tests in this class assume a known sequence of table. For some
- * IDataSet implemntation (like DatabaseDataSet) we can't predict
- * any specific order. For supporting them, this method is called for both
- * the expected names and dataset names before comparing them.
- * <p>
- * This method should do nothing for implemntation supporting ordered names.
- * Others should sort the specified array.
- */
- protected void sort(Object[] array)
- {
- }
-
protected void assertEqualsTableName(String mesage, String expected,
String actual)
--- 102,105 ----
***************
*** 124,132 ****
{
String[] expected = getExpectedNames();
! sort(expected);
! IDataSet dataSet = removeExtraTestTables(createDataSet());
String[] names = dataSet.getTableNames();
- sort(names);
assertEquals("table count", expected.length, names.length);
--- 111,119 ----
{
String[] expected = getExpectedNames();
! assertContainsIgnoreCase("minimal names subset",
! super.getExpectedNames(), expected);
! IDataSet dataSet = createDataSet();
String[] names = dataSet.getTableNames();
assertEquals("table count", expected.length, names.length);
***************
*** 177,187 ****
{
String[] expected = getExpectedNames();
- // sort(expected);
IDataSet dataSet = createDataSet();
- // String[] names = dataSet.getTableNames();
- // sort(names);
- // assertEquals("table count",
- // expected.length, dataSet.getTableNames().length);
for (int i = 0; i < expected.length; i++)
{
--- 164,169 ----
***************
*** 207,217 ****
{
String[] expected = getExpectedNames();
! sort(expected);
! IDataSet dataSet = removeExtraTestTables(createDataSet());
! String[] names = dataSet.getTableNames();
! sort(names);
ITable[] tables = dataSet.getTables();
- sort(tables);
assertEquals("table count", expected.length, tables.length);
--- 189,197 ----
{
String[] expected = getExpectedNames();
! assertContainsIgnoreCase("minimal names subset",
! super.getExpectedNames(), expected);
! IDataSet dataSet = createDataSet();
ITable[] tables = dataSet.getTables();
assertEquals("table count", expected.length, tables.length);
***************
*** 351,354 ****
--- 331,371 ----
}
}
+
+ public void testIterator() throws Exception
+ {
+ String[] expected = getExpectedNames();
+ assertContainsIgnoreCase("minimal names subset",
+ super.getExpectedNames(), expected);
+
+ int i = 0;
+ ITableIterator iterator = createDataSet().iterator();
+ while(iterator.next())
+ {
+ assertEqualsTableName("name " + i, expected[i],
+ iterator.getTableMetaData().getTableName());
+ i++;
+ }
+
+ assertEquals("table count", expected.length, i);
+ }
+
+ public void testReverseIterator() throws Exception
+ {
+ String[] expected = DataSetUtils.reverseStringArray(getExpectedNames());
+ assertContainsIgnoreCase("minimal names subset",
+ super.getExpectedNames(), expected);
+
+ int i = 0;
+ ITableIterator iterator = createDataSet().reverseIterator();
+ while(iterator.next())
+ {
+ assertEqualsTableName("name " + i, expected[i],
+ iterator.getTableMetaData().getTableName());
+ i++;
+ }
+
+ assertEquals("table count", expected.length, i);
+ }
+
}
Index: AbstractTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/AbstractTest.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -C2 -d -r1.1.2.1 -r1.1.2.2
*** AbstractTest.java 6 Apr 2003 20:34:42 -0000 1.1.2.1
--- AbstractTest.java 6 Apr 2003 21:52:08 -0000 1.1.2.2
***************
*** 23,26 ****
--- 23,29 ----
import junit.framework.TestCase;
+ import java.util.Arrays;
+ import java.util.List;
+
/**
* @author Manuel Laflamme
***************
*** 80,82 ****
--- 83,123 ----
return AbstractTest.EXTRA_TABLE_NAME;
}
+
+ public void assertEqualsIgnoreCase(String message, String expected, String actual)
+ {
+ if (!expected.equalsIgnoreCase(actual))
+ {
+ assertEquals(message, expected, actual);
+ }
+ }
+
+ public void assertContains(String message, Object[] expected, Object[] actual)
+ {
+ List expectedList = Arrays.asList(expected);
+ List actualList = Arrays.asList(actual);
+
+ if (!expectedList.containsAll(actualList))
+ {
+ fail(message + " expected contains:<" + expectedList + "> but was:<"
+ + actualList + ">");
+ }
+ }
+
+ public void assertContainsIgnoreCase(String message, String[] expected, String[] actual)
+ {
+ String[] expectedLowerCase = new String[expected.length];
+ for (int i = 0; i < expected.length; i++)
+ {
+ expectedLowerCase[i] = expected[i].toLowerCase();
+ }
+
+ String[] actualLowerCase = new String[actual.length];
+ for (int i = 0; i < actual.length; i++)
+ {
+ actualLowerCase[i] = actual[i].toLowerCase();
+ }
+
+ assertContains(message, expectedLowerCase, actualLowerCase);
+ }
+
}
Index: CaseInsensitiveDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/CaseInsensitiveDataSetTest.java,v
retrieving revision 1.4
retrieving revision 1.4.4.1
diff -C2 -d -r1.4 -r1.4.4.1
*** CaseInsensitiveDataSetTest.java 14 Feb 2003 03:21:59 -0000 1.4
--- CaseInsensitiveDataSetTest.java 6 Apr 2003 21:52:09 -0000 1.4.4.1
***************
*** 40,50 ****
}
! protected void assertEqualsTableName(String mesage, String expected,
String actual)
{
! if (!expected.equalsIgnoreCase(actual))
! {
! super.assertEqualsTableName(mesage, expected, actual);
! }
}
}
--- 40,47 ----
}
! protected void assertEqualsTableName(String message, String expected,
String actual)
{
! assertEqualsIgnoreCase(message, expected, actual);
}
}
|