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-05-01 03:14:56
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv23664/src/test/org/dbunit/dataset/xml
Added Files:
Tag: branch-exml2sax
XmlProducerTest.java
Log Message:
Added new XML producer.
--- NEW FILE: XmlProducerTest.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.xml;
import org.dbunit.dataset.AbstractProducerTest;
import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.dataset.Column;
import org.xml.sax.InputSource;
import java.io.File;
/**
* @author Manuel Laflamme
* @since Apr 30, 2003
* @version $Revision: 1.1.2.1 $
*/
public class XmlProducerTest extends AbstractProducerTest
{
private static final File DATASET_FILE =
new File("src/xml/xmlProducerTest.xml");
public XmlProducerTest(String s)
{
super(s);
}
protected IDataSetProducer createProducer() throws Exception
{
String uri = DATASET_FILE.getAbsoluteFile().toURL().toString();
InputSource source = new InputSource(uri);
return new XmlProducer(source);
}
protected Column[] createExpectedColumns(Column.Nullable nullable) throws Exception
{
return super.createExpectedColumns(Column.NULLABLE_UNKNOWN);
}
}
|
|
From: <mla...@us...> - 2003-05-01 03:14:56
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv23664/src/java/org/dbunit/dataset/xml
Added Files:
Tag: branch-exml2sax
XmlProducer.java
Log Message:
Added new XML producer.
--- NEW FILE: XmlProducer.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.xml;
import org.dbunit.dataset.Column;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.DefaultConsumer;
import org.dbunit.dataset.DefaultTableMetaData;
import org.dbunit.dataset.IDataSetConsumer;
import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.dataset.ITableMetaData;
import org.dbunit.dataset.datatype.DataType;
import org.xml.sax.Attributes;
import org.xml.sax.ContentHandler;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.DefaultHandler;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import java.io.IOException;
import java.util.LinkedList;
import java.util.List;
/**
* @author Manuel Laflamme
* @since Apr 30, 2003
* @version $Revision: 1.1.2.1 $
*/
public class XmlProducer extends DefaultHandler
implements IDataSetProducer, ContentHandler
{
private static final IDataSetConsumer EMPTY_CONSUMER = new DefaultConsumer();
private static final String DATASET = "dataset";
private static final String TABLE = "table";
private static final String NAME = "name";
private static final String COLUMN = "column";
private static final String ROW = "row";
private static final String VALUE = "value";
private static final String NULL = "null";
private final InputSource _inputSource;
private XMLReader _xmlReader;
private IDataSetConsumer _consumer = EMPTY_CONSUMER;
private String _activeTableName;
private List _activeColumnNames;
private StringBuffer _activeCharacters;
private List _activeRowValues;
public XmlProducer(InputSource inputSource)
{
_inputSource = inputSource;
}
private ITableMetaData createMetaData(String tableName, List _columnNames)
{
Column[] columns = new Column[_columnNames.size()];
for (int i = 0; i < columns.length; i++)
{
String columnName = (String)_columnNames.get(i);
columns[i] = new Column(columnName, DataType.UNKNOWN);
}
DefaultTableMetaData metaData =
new DefaultTableMetaData(tableName, columns);
return metaData;
}
////////////////////////////////////////////////////////////////////////////
// IDataSetProducer interface
public void setConsumer(IDataSetConsumer consumer) throws DataSetException
{
_consumer = consumer;
}
public void produce() throws DataSetException
{
try
{
if (_xmlReader == null)
{
SAXParser saxParser = SAXParserFactory.newInstance().newSAXParser();
_xmlReader = saxParser.getXMLReader();
}
_xmlReader.setContentHandler(this);
_xmlReader.setEntityResolver(this);
_xmlReader.parse(_inputSource);
}
catch (ParserConfigurationException e)
{
throw new DataSetException(e);
}
catch (SAXException e)
{
Exception exception = e.getException() == null ? e : e.getException();
throw new DataSetException(exception);
}
catch (IOException e)
{
throw new DataSetException(e);
}
}
////////////////////////////////////////////////////////////////////////////
// EntityResolver interface
public InputSource resolveEntity(String publicId, String systemId)
throws SAXException
{
// TODO - returns dataset.dtd contents...
return null;
}
////////////////////////////////////////////////////////////////////////
// ContentHandler interface
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException
{
try
{
// dataset
if (qName.equals(DATASET))
{
_consumer.startDataSet();
return;
}
// table
if (qName.equals(TABLE))
{
_activeTableName = attributes.getValue(NAME);
_activeColumnNames = new LinkedList();
return;
}
// column
if (qName.equals(COLUMN))
{
_activeCharacters = new StringBuffer();
return;
}
// row
if (qName.equals(ROW))
{
// End of metadata at first row
if (_activeColumnNames != null)
{
ITableMetaData metaData =
createMetaData(_activeTableName, _activeColumnNames);
_consumer.startTable(metaData);
_activeColumnNames = null;
}
_activeRowValues = new LinkedList();
return;
}
// value
if (qName.equals(VALUE))
{
_activeCharacters = new StringBuffer();
return;
}
// null
if (qName.equals(NULL))
{
_activeRowValues.add(null);
return;
}
}
catch (DataSetException e)
{
throw new SAXException(e);
}
}
public void endElement(String uri, String localName, String qName) throws SAXException
{
try
{
// dataset
if (qName.equals(DATASET))
{
_consumer.endDataSet();
return;
}
// table
if (qName.equals(TABLE))
{
// End of metadata
if (_activeColumnNames != null)
{
ITableMetaData metaData =
createMetaData(_activeTableName, _activeColumnNames);
_consumer.startTable(metaData);
_activeColumnNames = null;
}
_consumer.endTable();
_activeTableName = null;
return;
}
// column
if (qName.equals(COLUMN))
{
_activeColumnNames.add(_activeCharacters.toString());
_activeCharacters = null;
}
// row
if (qName.equals(ROW))
{
_consumer.row(_activeRowValues.toArray());
_activeRowValues = null;
}
// value
if (qName.equals(VALUE))
{
_activeRowValues.add(_activeCharacters.toString());
_activeCharacters = null;
}
// null
if (qName.equals(NULL))
{
// Nothing to do, already processed in startElement()
}
}
catch (DataSetException e)
{
throw new SAXException(e);
}
}
public void characters(char ch[], int start, int length)
throws SAXException
{
// TODO - remove when EntityResolver is implemented...
if (_activeCharacters != null)
{
_activeCharacters.append(ch, start, length);
}
}
}
|
|
From: <mla...@us...> - 2003-05-01 03:14:56
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit
In directory sc8-pr-cvs1:/tmp/cvs-serv23664/src/test/org/dbunit
Modified Files:
Tag: branch-exml2sax
Main.java
Log Message:
Added new XML producer.
Index: Main.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/Main.java,v
retrieving revision 1.30.2.2
retrieving revision 1.30.2.3
diff -C2 -d -r1.30.2.2 -r1.30.2.3
*** Main.java 30 Apr 2003 00:27:47 -0000 1.30.2.2
--- Main.java 1 May 2003 03:14:53 -0000 1.30.2.3
***************
*** 60,71 ****
DatabaseEnvironment.getInstance().getConnection();
! InputSource source = new InputSource(new FileReader("src/xml/flatXmlDataSetTest.xml"));
IDataSet dataSet = new CachedDataSet(new FlatXmlProducer(source));
! DatabaseOperation.INSERT.execute(connection, dataSet);
! FileWriter writer = new FileWriter("writerTest.xml");
// FlatXmlDataSet.write(connection.createDataSet(), writer);
! new FlatXmlWriter().write(connection.createDataSet(), writer);
! writer.close();
// ITableIterator iterator = connection.createDataSet().iterator();
// while(iterator.next())
--- 60,72 ----
DatabaseEnvironment.getInstance().getConnection();
! InputSource source = new InputSource(new File("src/xml/flatXmlProducerTest.xml").toURL().toString());
IDataSet dataSet = new CachedDataSet(new FlatXmlProducer(source));
! // DatabaseOperation.INSERT.execute(connection, dataSet);
! XmlDataSet.write(dataSet, new FileWriter("writerTest.xml"));
! // FileWriter writer = new FileWriter("writerTest.xml");
// FlatXmlDataSet.write(connection.createDataSet(), writer);
! // new FlatXmlWriter().write(connection.createDataSet(), writer);
! // writer.close();
// ITableIterator iterator = connection.createDataSet().iterator();
// while(iterator.next())
|
|
From: <mla...@us...> - 2003-05-01 03:14:56
|
Update of /cvsroot/dbunit/dbunit/src/dtd
In directory sc8-pr-cvs1:/tmp/cvs-serv23664/src/dtd
Modified Files:
Tag: branch-exml2sax
dataset.dtd
Log Message:
Added new XML producer.
Index: dataset.dtd
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/dtd/dataset.dtd,v
retrieving revision 1.4
retrieving revision 1.4.6.1
diff -C2 -d -r1.4 -r1.4.6.1
*** dataset.dtd 21 Mar 2002 00:41:42 -0000 1.4
--- dataset.dtd 1 May 2003 03:14:52 -0000 1.4.6.1
***************
*** 1,6 ****
<?xml version='1.0' encoding='UTF-8' ?>
- <!--Generated by XML Authority-->
-
<!ELEMENT dataset (table+)>
--- 1,4 ----
|
|
From: <mla...@us...> - 2003-05-01 02:18:54
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv4613/src/test/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
AllTests.java
Added Files:
Tag: branch-exml2sax
DataSetProducerAdapterTest.java
Log Message:
Added more producer tests.
--- NEW FILE: DataSetProducerAdapterTest.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;
import org.dbunit.dataset.AbstractTest;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.ITableMetaData;
import org.dbunit.dataset.DataSetProducerAdapter;
import org.dbunit.dataset.IDataSetConsumer;
import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.dataset.xml.FlatXmlDataSet;
import org.dbunit.dataset.xml.FlatXmlProducer;
import org.xml.sax.InputSource;
import java.io.FileReader;
import java.io.File;
/**
* @author Manuel Laflamme
* @since Apr 17, 2003
* @version $Revision: 1.1.2.1 $
*/
public class DataSetProducerAdapterTest extends AbstractProducerTest
{
private static final File DATASET_FILE =
new File("src/xml/flatXmlProducerTest.xml");
public DataSetProducerAdapterTest(String s)
{
super(s);
}
protected IDataSetProducer createProducer() throws Exception
{
FlatXmlDataSet dataSet = new FlatXmlDataSet(DATASET_FILE);
return new DataSetProducerAdapter(dataSet);
}
}
Index: AllTests.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/AllTests.java,v
retrieving revision 1.18.2.1
retrieving revision 1.18.2.2
diff -C2 -d -r1.18.2.1 -r1.18.2.2
*** AllTests.java 23 Apr 2003 02:30:35 -0000 1.18.2.1
--- AllTests.java 1 May 2003 02:18:51 -0000 1.18.2.2
***************
*** 44,47 ****
--- 44,48 ----
suite.addTest(new TestSuite(CompositeDataSetTest.class));
suite.addTest(new TestSuite(CompositeTableTest.class));
+ suite.addTest(new TestSuite(DataSetProducerAdapterTest.class));
suite.addTest(new TestSuite(DataSetUtilsTest.class));
suite.addTest(new TestSuite(DefaultDataSetTest.class));
|
|
From: <mla...@us...> - 2003-05-01 02:18:54
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv4613/src/java/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
DataSetProducerAdapter.java
Log Message:
Added more producer tests.
Index: DataSetProducerAdapter.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/Attic/DataSetProducerAdapter.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
*** DataSetProducerAdapter.java 30 Apr 2003 00:27:45 -0000 1.1.2.1
--- DataSetProducerAdapter.java 1 May 2003 02:18:51 -0000 1.1.2.2
***************
*** 36,41 ****
public class DataSetProducerAdapter implements IDataSetProducer
{
private final ITableIterator _iterator;
! private IDataSetConsumer _consumer;
public DataSetProducerAdapter(ITableIterator iterator)
--- 36,43 ----
public class DataSetProducerAdapter implements IDataSetProducer
{
+ private static final IDataSetConsumer EMPTY_CONSUMER = new DefaultConsumer();
+
private final ITableIterator _iterator;
! private IDataSetConsumer _consumer = EMPTY_CONSUMER;
public DataSetProducerAdapter(ITableIterator iterator)
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv15860/src/test/org/dbunit/dataset/xml
Modified Files:
Tag: branch-exml2sax
AllTests.java FlatDtdDataSetTest.java FlatDtdProducerTest.java
FlatXmlProducerTest.java
Log Message:
* Removed dtdparser.jar. Now use SAX to parse DTD.
* Added more flat XML provider tests.
Index: AllTests.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/AllTests.java,v
retrieving revision 1.6.2.1
retrieving revision 1.6.2.2
diff -C2 -d -r1.6.2.1 -r1.6.2.2
*** AllTests.java 30 Apr 2003 02:17:02 -0000 1.6.2.1
--- AllTests.java 30 Apr 2003 21:12:52 -0000 1.6.2.2
***************
*** 38,41 ****
--- 38,42 ----
suite.addTest(new TestSuite(FlatDtdProducerTest.class));
suite.addTest(new TestSuite(FlatXmlDataSetTest.class));
+ suite.addTest(new TestSuite(FlatXmlProducerTest.class));
suite.addTest(new TestSuite(FlatXmlTableTest.class));
suite.addTest(new TestSuite(FlatXmlTableWriteTest.class));
Index: FlatDtdDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/FlatDtdDataSetTest.java,v
retrieving revision 1.9
retrieving revision 1.9.2.1
diff -C2 -d -r1.9 -r1.9.2.1
*** FlatDtdDataSetTest.java 9 Apr 2003 22:52:16 -0000 1.9
--- FlatDtdDataSetTest.java 30 Apr 2003 21:12:53 -0000 1.9.2.1
***************
*** 12,22 ****
import org.dbunit.DatabaseEnvironment;
- import org.dbunit.util.FileAsserts;
import org.dbunit.database.IDatabaseConnection;
import org.dbunit.dataset.AbstractDataSetTest;
import org.dbunit.dataset.FilteredDataSet;
import org.dbunit.dataset.IDataSet;
! import java.io.*;
/**
--- 12,28 ----
import org.dbunit.DatabaseEnvironment;
import org.dbunit.database.IDatabaseConnection;
import org.dbunit.dataset.AbstractDataSetTest;
import org.dbunit.dataset.FilteredDataSet;
import org.dbunit.dataset.IDataSet;
+ import org.dbunit.dataset.ITable;
+ import org.dbunit.dataset.ITableMetaData;
+ import org.dbunit.util.FileAsserts;
! import java.io.BufferedReader;
! import java.io.File;
! import java.io.FileReader;
! import java.io.FileWriter;
! import java.io.Writer;
/**
***************
*** 56,59 ****
--- 62,85 ----
////////////////////////////////////////////////////////////////////////////
// Test methods
+
+ public void testGetDuplicateTable() throws Exception
+ {
+ String expectedTableName = getDuplicateTableName();
+
+ IDataSet dataSet = createDuplicateDataSet();
+ ITable table = dataSet.getTable(expectedTableName);
+ String actualTableName = table.getTableMetaData().getTableName();
+ assertEquals("table name", expectedTableName, actualTableName);
+ }
+
+ public void testGetDuplicateTableMetaData() throws Exception
+ {
+ String expectedTableName = getDuplicateTableName();
+
+ IDataSet dataSet = createDuplicateDataSet();
+ ITableMetaData metaData = dataSet.getTableMetaData(expectedTableName);
+ String actualTableName = metaData.getTableName();
+ assertEquals("table name", expectedTableName, actualTableName);
+ }
public void testWriteFromDtd() throws Exception
Index: FlatDtdProducerTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/Attic/FlatDtdProducerTest.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
*** FlatDtdProducerTest.java 30 Apr 2003 02:17:02 -0000 1.1.2.1
--- FlatDtdProducerTest.java 30 Apr 2003 21:12:53 -0000 1.1.2.2
***************
*** 21,25 ****
package org.dbunit.dataset.xml;
! import org.dbunit.dataset.AbstractDataSetProducerTest;
import org.dbunit.dataset.Column;
import org.dbunit.dataset.IDataSetProducer;
--- 21,25 ----
package org.dbunit.dataset.xml;
! import org.dbunit.dataset.AbstractProducerTest;
import org.dbunit.dataset.Column;
import org.dbunit.dataset.IDataSetProducer;
***************
*** 37,41 ****
* @version $Revision$
*/
! public class FlatDtdProducerTest extends AbstractDataSetProducerTest
{
private static final File DTD_FILE =
--- 37,41 ----
* @version $Revision$
*/
! public class FlatDtdProducerTest extends AbstractProducerTest
{
private static final File DTD_FILE =
***************
*** 53,88 ****
}
! public void testProduce() throws Exception
! {
! // Setup consumer
! MockDataSetConsumer consumer = new MockDataSetConsumer();
! consumer.addExpectedStartDataSet();
! String[] expectedNames = getExpectedNames();
! for (int i = 0; i < expectedNames.length; i++)
! {
! // All tables except the one have nullable columns
! boolean nullable = (i + 1 < expectedNames.length);
! Column[] expectedColumns = createExpectedColumns(nullable);
!
! String expectedName = expectedNames[i];
! consumer.addExpectedStartTable(expectedName,
! expectedColumns);
! consumer.addExpectedEndTable(expectedName);
! }
! consumer.addExpectedEndDataSet();
!
! // Setup producer
! IDataSetProducer producer = createProducer();
! producer.setConsumer(consumer);
!
! // Produce and verify consumer
! producer.produce();
! consumer.verify();
! }
!
! public void testProduceWithoutConsumer() throws Exception
{
! IDataSetProducer producer = createProducer();
! producer.produce();
}
--- 53,59 ----
}
! protected int[] getExpectedRowCount() throws Exception
{
! return new int[] {0, 0, 0, 0, 0, 0};
}
***************
*** 99,103 ****
// Setup producer
String content =
! "<!ELEMENT dataset (DUPLICATE_TABLE*,TEST_TABLE*,DUPLICATE_TABLE*)>" +
"<!ELEMENT TEST_TABLE EMPTY>" +
"<!ELEMENT DUPLICATE_TABLE EMPTY>";
--- 70,74 ----
// Setup producer
String content =
! "<!ELEMENT dataset (DUPLICATE_TABLE*,TEST_TABLE+,DUPLICATE_TABLE?)>" +
"<!ELEMENT TEST_TABLE EMPTY>" +
"<!ELEMENT DUPLICATE_TABLE EMPTY>";
***************
*** 134,136 ****
--- 105,134 ----
}
+ public void testAttrListBeforeParentElement() throws Exception
+ {
+ // Setup consumer
+ MockDataSetConsumer consumer = new MockDataSetConsumer();
+ consumer.addExpectedStartDataSet();
+ Column[] expectedColumns = createExpectedColumns(Column.NULLABLE);
+ consumer.addExpectedEmptyTable("TEST_TABLE", expectedColumns);
+ consumer.addExpectedEndDataSet();
+
+ // Setup producer
+ String content =
+ "<!ELEMENT dataset (TEST_TABLE)>" +
+ "<!ATTLIST TEST_TABLE " +
+ "COLUMN0 CDATA #IMPLIED " +
+ "COLUMN1 CDATA #IMPLIED " +
+ "COLUMN2 CDATA #IMPLIED " +
+ "COLUMN3 CDATA #IMPLIED>" +
+ "<!ELEMENT TEST_TABLE EMPTY>";
+
+ InputSource source = new InputSource(new StringReader(content));
+ FlatDtdProducer producer = new FlatDtdProducer(source);
+ producer.setConsumer(consumer);
+
+ // Produce and verify consumer
+ producer.produce();
+ consumer.verify();
+ }
}
Index: FlatXmlProducerTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/Attic/FlatXmlProducerTest.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
*** FlatXmlProducerTest.java 30 Apr 2003 00:27:48 -0000 1.1.2.1
--- FlatXmlProducerTest.java 30 Apr 2003 21:12:54 -0000 1.1.2.2
***************
*** 1,13 ****
package org.dbunit.dataset.xml;
! import org.dbunit.dataset.CachedDataSet;
import org.dbunit.dataset.Column;
! import org.dbunit.dataset.IDataSet;
! import org.dbunit.dataset.ITable;
import org.xml.sax.InputSource;
import java.io.File;
! import java.io.FileInputStream;
/**
--- 1,19 ----
package org.dbunit.dataset.xml;
! import org.dbunit.dataset.AbstractProducerTest;
import org.dbunit.dataset.Column;
! import org.dbunit.dataset.IDataSetProducer;
! import org.dbunit.dataset.MockDataSetConsumer;
! import org.dbunit.dataset.DefaultDataSet;
! import org.dbunit.dataset.DefaultTable;
import org.xml.sax.InputSource;
+ import org.xml.sax.EntityResolver;
+ import org.xml.sax.SAXException;
import java.io.File;
! import java.io.StringReader;
! import java.io.IOException;
! import java.util.ArrayList;
/**
***************
*** 18,23 ****
* @version $Revision$
*/
! public class FlatXmlProducerTest extends FlatXmlDataSetTest
{
public FlatXmlProducerTest(String s)
{
--- 24,32 ----
* @version $Revision$
*/
! public class FlatXmlProducerTest extends AbstractProducerTest
{
+ private static final File DATASET_FILE =
+ new File("src/xml/flatXmlProducerTest.xml");
+
public FlatXmlProducerTest(String s)
{
***************
*** 25,67 ****
}
! protected IDataSet createDataSet() throws Exception
{
! InputSource source = new InputSource(new FileInputStream(DATASET_FILE));
! return new CachedDataSet(new FlatXmlProducer(source));
}
! protected IDataSet createDuplicateDataSet() throws Exception
{
! InputSource source = new InputSource(new FileInputStream(DUPLICATE_DATASET_FILE));
! return new CachedDataSet(new FlatXmlProducer(source));
}
! public void testMissingColumnAndEnableDtdMetadata() throws Exception
{
! File file = new File("src/xml/flatXmlTableTest.xml");
! InputSource source = new InputSource(file.toURL().toString());
! IDataSet dataSet = new CachedDataSet(new FlatXmlProducer(source));
! ITable table = dataSet.getTable("MISSING_VALUES");
! Column[] columns = table.getTableMetaData().getColumns();
! assertEquals("column count", 3, columns.length);
}
! public void testMissingColumnAndDisableDtdMetadata() throws Exception
{
! File file = new File("src/xml/flatXmlTableTest.xml");
! InputSource source = new InputSource(file.toURL().toString());
! FlatXmlProducer provider = new FlatXmlProducer(source, true);
! IDataSet dataSet = new CachedDataSet(provider);
! ITable table = dataSet.getTable("MISSING_VALUES");
! Column[] columns = table.getTableMetaData().getColumns();
! assertEquals("column count", 2, columns.length);
}
! public void testProduce() throws Exception
{
}
}
--- 34,185 ----
}
! protected IDataSetProducer createProducer() throws Exception
{
! String uri = DATASET_FILE.getAbsoluteFile().toURL().toString();
! InputSource source = new InputSource(uri);
!
! return new FlatXmlProducer(source);
}
! public void testProduceEmptyDataSet() throws Exception
{
! // Setup consumer
! MockDataSetConsumer consumer = new MockDataSetConsumer();
! consumer.addExpectedStartDataSet();
! consumer.addExpectedEndDataSet();
!
! // Setup producer
! String content =
! "<?xml version=\"1.0\"?>" +
! "<dataset/>";
! InputSource source = new InputSource(new StringReader(content));
! IDataSetProducer producer = new FlatXmlProducer(source);
! producer.setConsumer(consumer);
!
! // Produce and verify consumer
! producer.produce();
! consumer.verify();
}
! public void testProduceNoDtd() throws Exception
{
! // Setup consumer
! String tableName = "EMPTY_TABLE";
! MockDataSetConsumer consumer = new MockDataSetConsumer();
! consumer.addExpectedStartDataSet();
! Column[] expectedColumns = new Column[0];
! consumer.addExpectedEmptyTable(tableName, expectedColumns);
! consumer.addExpectedEndDataSet();
! // Setup producer
! String content =
! "<?xml version=\"1.0\"?>" +
! "<dataset>" +
! "<EMPTY_TABLE/>" +
! "</dataset>";
! InputSource source = new InputSource(new StringReader(content));
! IDataSetProducer producer = new FlatXmlProducer(source);
! producer.setConsumer(consumer);
! // Produce and verify consumer
! producer.produce();
! consumer.verify();
}
! public void testProduceIgnoreDtd() throws Exception
{
! // Setup consumer
! String tableName = "EMPTY_TABLE";
! MockDataSetConsumer consumer = new MockDataSetConsumer();
! consumer.addExpectedStartDataSet();
! Column[] expectedColumns = new Column[0];
! consumer.addExpectedEmptyTable(tableName, expectedColumns);
! consumer.addExpectedEndDataSet();
! // Setup producer
! String content =
! "<?xml version=\"1.0\"?>" +
! "<!DOCTYPE dataset SYSTEM \"urn:/dummy.dtd\">" +
! "<dataset>" +
! "<EMPTY_TABLE/>" +
! "</dataset>";
! InputSource source = new InputSource(new StringReader(content));
! IDataSetProducer producer = new FlatXmlProducer(source, true);
! producer.setConsumer(consumer);
! // Produce and verify consumer
! producer.produce();
! consumer.verify();
}
! public void testProduceMetaDataSet() throws Exception
! {
! // Setup consumer
! String tableName = "EMPTY_TABLE";
! MockDataSetConsumer consumer = new MockDataSetConsumer();
! consumer.addExpectedStartDataSet();
! Column[] expectedColumns = createExpectedColumns(Column.NULLABLE);
! consumer.addExpectedEmptyTable(tableName, expectedColumns);
! consumer.addExpectedEndDataSet();
!
! // Setup producer
! String content =
! "<?xml version=\"1.0\"?>" +
! "<!DOCTYPE dataset SYSTEM \"urn:/dummy.dtd\">" +
! "<dataset>" +
! "<EMPTY_TABLE/>" +
! "</dataset>";
! InputSource source = new InputSource(new StringReader(content));
! DefaultDataSet metaDataSet = new DefaultDataSet();
! metaDataSet.addTable(
! new DefaultTable(tableName, expectedColumns, new ArrayList()));
! IDataSetProducer producer = new FlatXmlProducer(source, metaDataSet);
! producer.setConsumer(consumer);
!
! // Produce and verify consumer
! producer.produce();
! consumer.verify();
! }
!
! public void testProduceCustomEntityResolver() throws Exception
{
+ // Setup consumer
+ String tableName = "EMPTY_TABLE";
+ MockDataSetConsumer consumer = new MockDataSetConsumer();
+ consumer.addExpectedStartDataSet();
+ Column[] expectedColumns = createExpectedColumns(Column.NULLABLE);
+ consumer.addExpectedEmptyTable(tableName, expectedColumns);
+ consumer.addExpectedEndDataSet();
+
+ // Setup producer
+ String dtdContent =
+ "<!ELEMENT dataset (EMPTY_TABLE)>" +
+ "<!ATTLIST EMPTY_TABLE " +
+ "COLUMN0 CDATA #IMPLIED " +
+ "COLUMN1 CDATA #IMPLIED " +
+ "COLUMN2 CDATA #IMPLIED " +
+ "COLUMN3 CDATA #IMPLIED>" +
+ "<!ELEMENT TEST_TABLE EMPTY>";
+ final InputSource dtdSource = new InputSource(new StringReader(dtdContent));
+
+ String xmlContent =
+ "<?xml version=\"1.0\"?>" +
+ "<!DOCTYPE dataset SYSTEM \"urn:/dummy.dtd\">" +
+ "<dataset>" +
+ "<EMPTY_TABLE/>" +
+ "</dataset>";
+ InputSource xmlSource = new InputSource(new StringReader(xmlContent));
+ IDataSetProducer producer = new FlatXmlProducer(xmlSource, new EntityResolver(){
+ public InputSource resolveEntity(String s, String s1) throws SAXException, IOException
+ {
+ return dtdSource;
+ }
+ });
+ producer.setConsumer(consumer);
+
+ // Produce and verify consumer
+ producer.produce();
+ consumer.verify();
}
+
}
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv15860/src/test/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
MockDataSetConsumer.java
Added Files:
Tag: branch-exml2sax
AbstractProducerTest.java
Removed Files:
Tag: branch-exml2sax
AbstractDataSetProducerTest.java
Log Message:
* Removed dtdparser.jar. Now use SAX to parse DTD.
* Added more flat XML provider tests.
--- NEW FILE: AbstractProducerTest.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;
import org.dbunit.dataset.datatype.DataType;
import junit.framework.TestCase;
/**
* @author Manuel Laflamme
* @since Apr 29, 2003
* @version $Revision: 1.1.2.1 $
*/
public abstract class AbstractProducerTest extends TestCase
{
private static final String[] TABLE_NAMES = {
"DUPLICATE_TABLE",
"SECOND_TABLE",
"TEST_TABLE",
"DUPLICATE_TABLE",
"NOT_NULL_TABLE",
"EMPTY_TABLE",
};
public AbstractProducerTest(String s)
{
super(s);
}
protected String[] getExpectedNames() throws Exception
{
return (String[])TABLE_NAMES.clone();
}
protected int[] getExpectedRowCount() throws Exception
{
return new int[] {1, 2, 3, 2, 1, 0};
}
protected String getNotNullTableName() throws Exception
{
return "NOT_NULL_TABLE";
}
protected Column[] createExpectedColumns(Column.Nullable nullable) throws Exception
{
Column[] columns = new Column[4];
for (int i = 0; i < columns.length; i++)
{
columns[i] = new Column("COLUMN" + i, DataType.UNKNOWN, nullable);
}
return columns;
}
protected Object[] createExpectedRow(int row) throws Exception
{
Object[] values = new Object[4];
for (int i = 0; i < values.length; i++)
{
values[i] = "row " + row + " col " + i;
}
return values;
}
protected abstract IDataSetProducer createProducer() throws Exception;
public void testProduce() throws Exception
{
// Setup consumer
MockDataSetConsumer consumer = new MockDataSetConsumer();
consumer.addExpectedStartDataSet();
String[] expectedNames = getExpectedNames();
int[] rowCounts = getExpectedRowCount();
for (int i = 0; i < expectedNames.length; i++)
{
String expectedName = expectedNames[i];
Column.Nullable nullable = expectedName.equals(getNotNullTableName()) ?
Column.NO_NULLS : Column.NULLABLE;
Column[] expectedColumns = createExpectedColumns(nullable);
consumer.addExpectedStartTable(expectedName, expectedColumns);
for (int j = 0; j < rowCounts[i]; j++)
{
consumer.addExpectedRow(expectedName, createExpectedRow(j));
}
consumer.addExpectedEndTable(expectedName);
}
consumer.addExpectedEndDataSet();
// Setup producer
IDataSetProducer producer = createProducer();
producer.setConsumer(consumer);
// Produce and verify consumer
producer.produce();
consumer.verify();
}
public void testProduceWithoutConsumer() throws Exception
{
IDataSetProducer producer = createProducer();
producer.produce();
}
}
Index: MockDataSetConsumer.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/MockDataSetConsumer.java,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -C2 -d -r1.1.2.3 -r1.1.2.4
*** MockDataSetConsumer.java 30 Apr 2003 02:17:01 -0000 1.1.2.3
--- MockDataSetConsumer.java 30 Apr 2003 21:12:51 -0000 1.1.2.4
***************
*** 21,25 ****
private final ExpectationList _expectedList = new ExpectationList("");
private String _actualTableName;
- private int _actualTableRow = 0;
public void addExpectedStartDataSet() throws Exception
--- 21,24 ----
***************
*** 48,51 ****
--- 47,56 ----
}
+ public void addExpectedEmptyTable(String tableName, Column[] columns) throws Exception
+ {
+ addExpectedStartTable(tableName, columns);
+ addExpectedEndTable(tableName);
+ }
+
public void addExpectedEmptyTableIgnoreColumns(String tableName) throws Exception
{
***************
*** 59,65 ****
}
! public void addExpectedRow(String tableName, int row, Object[] values) throws Exception
{
! _expectedList.addExpected(new RowEvent(tableName, row, values));
}
--- 64,70 ----
}
! public void addExpectedRow(String tableName, Object[] values) throws Exception
{
! _expectedList.addExpected(new RowEvent(tableName, values));
}
***************
*** 89,93 ****
_expectedList.addActual(new StartTableEvent(metaData, false));
_actualTableName = metaData.getTableName();
- _actualTableRow = 0;
}
--- 94,97 ----
***************
*** 96,100 ****
_expectedList.addActual(new EndTableEvent(_actualTableName));
_actualTableName = null;
- _actualTableRow = 0;
}
--- 100,103 ----
***************
*** 102,107 ****
{
_expectedList.addActual(
! new RowEvent(_actualTableName, _actualTableRow, values));
! _actualTableRow++;
}
--- 105,109 ----
{
_expectedList.addActual(
! new RowEvent(_actualTableName, values));
}
***************
*** 237,248 ****
{
private final String _tableName;
- private final int _row;
private final Object[] _values;
! public RowEvent(String tableName, int row, Object[] values)
{
super("row()");
_tableName = tableName;
- _row = row;
_values = values;
}
--- 239,248 ----
{
private final String _tableName;
private final Object[] _values;
! public RowEvent(String tableName, Object[] values)
{
super("row()");
_tableName = tableName;
_values = values;
}
***************
*** 256,260 ****
final RowEvent rowItem = (RowEvent)o;
- if (_row != rowItem._row) return false;
if (!_tableName.equals(rowItem._tableName)) return false;
// Probably incorrect - comparing Object[] arrays with Arrays.equals
--- 256,259 ----
***************
*** 268,272 ****
int result = super.hashCode();
result = 29 * result + _tableName.hashCode();
- result = 29 * result + _row;
return result;
}
--- 267,270 ----
***************
*** 274,279 ****
public String toString()
{
! return _name + ": table=" + _tableName + ", row=" + _row +
! ", values=" + Arrays.asList(_values);
}
--- 272,276 ----
public String toString()
{
! return _name + ": table=" + _tableName + ", values=" + Arrays.asList(_values);
}
--- AbstractDataSetProducerTest.java DELETED ---
|
|
From: <mla...@us...> - 2003-04-30 21:13:26
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv15860/src/java/org/dbunit/dataset/xml
Modified Files:
Tag: branch-exml2sax
FlatDtdDataSet.java FlatDtdProducer.java FlatXmlProducer.java
Log Message:
* Removed dtdparser.jar. Now use SAX to parse DTD.
* Added more flat XML provider tests.
Index: FlatDtdDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml/FlatDtdDataSet.java,v
retrieving revision 1.7
retrieving revision 1.7.2.1
diff -C2 -d -r1.7 -r1.7.2.1
*** FlatDtdDataSet.java 9 Apr 2003 22:52:10 -0000 1.7
--- FlatDtdDataSet.java 30 Apr 2003 21:12:49 -0000 1.7.2.1
***************
*** 12,29 ****
import org.dbunit.dataset.*;
- import org.dbunit.dataset.datatype.DataType;
! import com.wutka.dtd.DTD;
! import com.wutka.dtd.DTDAttlist;
! import com.wutka.dtd.DTDAttribute;
! import com.wutka.dtd.DTDContainer;
! import com.wutka.dtd.DTDDecl;
! import com.wutka.dtd.DTDItem;
! import com.wutka.dtd.DTDName;
! import com.wutka.dtd.DTDParser;
import java.io.IOException;
import java.io.InputStream;
- import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
--- 12,20 ----
import org.dbunit.dataset.*;
! import org.xml.sax.InputSource;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
***************
*** 36,40 ****
import java.util.List;
import java.util.Map;
- import java.util.Vector;
/**
--- 27,30 ----
***************
*** 42,85 ****
* @version $Revision$
*/
! public class FlatDtdDataSet extends AbstractDataSet
{
private static final List EMPTY_LIST = Arrays.asList(new Object[0]);
private final List _tableNames = new ArrayList();
private final Map _tableMap = new HashMap();
/**
* @deprecated Use Reader overload instead
*/
! public FlatDtdDataSet(InputStream in) throws IOException
{
! this(new InputStreamReader(in));
}
! public FlatDtdDataSet(Reader in) throws IOException
{
! DTDParser dtdParser = new DTDParser(in);
! DTD dtd = dtdParser.parse(true);
!
! // table names
! DTDContainer contents = (DTDContainer)dtd.rootElement.getContent();
! DTDItem[] items = contents.getItems();
!
! for (int i = 0; i < items.length; i++)
! {
! DTDName tableName = (DTDName)items[i];
! _tableNames.add(tableName.getValue());
! }
! // table metadata
! Vector attrLists = dtd.getItemsByType(DTDAttlist.class);
! for (int i = 0; i < attrLists.size(); i++)
! {
! DTDAttlist attrList = (DTDAttlist)attrLists.elementAt(i);
! if (_tableNames.contains(attrList.getName()))
! {
! _tableMap.put(attrList.getName(), new DefaultTable(
! createTableMetaData(attrList), EMPTY_LIST));
! }
! }
}
--- 32,64 ----
* @version $Revision$
*/
! public class FlatDtdDataSet extends AbstractDataSet implements IDataSetConsumer
{
private static final List EMPTY_LIST = Arrays.asList(new Object[0]);
+
private final List _tableNames = new ArrayList();
private final Map _tableMap = new HashMap();
+ private boolean _ready = false;
+
+ public FlatDtdDataSet()
+ {
+ }
/**
* @deprecated Use Reader overload instead
*/
! public FlatDtdDataSet(InputStream in) throws DataSetException, IOException
{
! this(new FlatDtdProducer(new InputSource(in)));
}
! public FlatDtdDataSet(Reader reader) throws DataSetException, IOException
{
! this(new FlatDtdProducer(new InputSource(reader)));
! }
! public FlatDtdDataSet(IDataSetProducer producer) throws DataSetException
! {
! producer.setConsumer(this);
! producer.produce();
}
***************
*** 151,170 ****
}
- private ITableMetaData createTableMetaData(DTDAttlist attrList)
- {
- DTDAttribute[] attributes = attrList.getAttribute();
- Column[] columns = new Column[attributes.length];
- for (int i = 0; i < attributes.length; i++)
- {
- DTDAttribute attribute = attributes[i];
- Column.Nullable nullable = (attribute.getDecl() == DTDDecl.REQUIRED) ?
- Column.NO_NULLS : Column.NULLABLE;
- columns[i] = new Column(attribute.getName(), DataType.UNKNOWN,
- nullable);
- }
-
- return new DefaultTableMetaData(attrList.getName(), columns);
- }
-
////////////////////////////////////////////////////////////////////////////
// AbstractDataSet class
--- 130,133 ----
***************
*** 173,176 ****
--- 136,145 ----
throws DataSetException
{
+ // Verify producer notifications completed
+ if (!_ready)
+ {
+ throw new IllegalStateException("Not ready!");
+ }
+
String[] names = (String[])_tableNames.toArray(new String[0]);
ITable[] tables = new ITable[names.length];
***************
*** 195,200 ****
--- 164,241 ----
public String[] getTableNames() throws DataSetException
{
+ // Verify producer notifications completed
+ if (!_ready)
+ {
+ throw new IllegalStateException("Not ready!");
+ }
+
return (String[])_tableNames.toArray(new String[0]);
}
+
+ public ITableMetaData getTableMetaData(String tableName) throws DataSetException
+ {
+ // Verify producer notifications completed
+ if (!_ready)
+ {
+ throw new IllegalStateException("Not ready!");
+ }
+
+ String upperTableName = tableName.toUpperCase();
+ if (_tableMap.containsKey(upperTableName))
+ {
+ ITable table = (ITable)_tableMap.get(upperTableName);
+ return table.getTableMetaData();
+ }
+
+ throw new NoSuchTableException(tableName);
+ }
+
+ public ITable getTable(String tableName) throws DataSetException
+ {
+ // Verify producer notifications completed
+ if (!_ready)
+ {
+ throw new IllegalStateException("Not ready!");
+ }
+
+ String upperTableName = tableName.toUpperCase();
+ if (_tableMap.containsKey(upperTableName))
+ {
+ return (ITable)_tableMap.get(upperTableName);
+ }
+
+ throw new NoSuchTableException(tableName);
+ }
+
+ ////////////////////////////////////////////////////////////////////////
+ // IDataSetConsumer interface
+
+ public void startDataSet() throws DataSetException
+ {
+ _ready = false;
+ }
+
+ public void endDataSet() throws DataSetException
+ {
+ _ready = true;
+ }
+
+ public void startTable(ITableMetaData metaData) throws DataSetException
+ {
+ String tableName = metaData.getTableName();
+ _tableNames.add(tableName);
+ _tableMap.put(tableName.toUpperCase(), new DefaultTable(metaData, EMPTY_LIST));
+ }
+
+ public void endTable() throws DataSetException
+ {
+ // no op
+ }
+
+ public void row(Object[] values) throws DataSetException
+ {
+ // no op
+ }
+
}
Index: FlatDtdProducer.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml/Attic/FlatDtdProducer.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -d -r1.1.2.2 -r1.1.2.3
*** FlatDtdProducer.java 30 Apr 2003 02:17:00 -0000 1.1.2.2
--- FlatDtdProducer.java 30 Apr 2003 21:12:50 -0000 1.1.2.3
***************
*** 23,30 ****
import org.dbunit.dataset.Column;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.DefaultTableMetaData;
import org.dbunit.dataset.IDataSetConsumer;
import org.dbunit.dataset.IDataSetProducer;
- import org.dbunit.dataset.DefaultConsumer;
import org.dbunit.dataset.datatype.DataType;
--- 23,30 ----
import org.dbunit.dataset.Column;
import org.dbunit.dataset.DataSetException;
+ import org.dbunit.dataset.DefaultConsumer;
import org.dbunit.dataset.DefaultTableMetaData;
import org.dbunit.dataset.IDataSetConsumer;
import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.dataset.datatype.DataType;
***************
*** 57,62 ****
{
private static final IDataSetConsumer EMPTY_CONSUMER = new DefaultConsumer();
private static final String XML_CONTENT =
! "<?xml version=\"1.0\"?>\n<!DOCTYPE dataset SYSTEM \"urn:/dummy.dtd\">\n<dataset/>";
private static final String DECL_HANDLER_PROPERTY_NAME =
"http://xml.org/sax/properties/declaration-handler";
--- 57,65 ----
{
private static final IDataSetConsumer EMPTY_CONSUMER = new DefaultConsumer();
+
private static final String XML_CONTENT =
! "<?xml version=\"1.0\"?>" +
! "<!DOCTYPE dataset SYSTEM \"urn:/dummy.dtd\">" +
! "<dataset/>";
private static final String DECL_HANDLER_PROPERTY_NAME =
"http://xml.org/sax/properties/declaration-handler";
***************
*** 95,98 ****
--- 98,106 ----
}
+ private List createColumnList()
+ {
+ return new LinkedList();
+ }
+
////////////////////////////////////////////////////////////////////////////
// IDataSetProducer interface
***************
*** 150,157 ****
_rootModel = model;
}
! // Other elements
! else
{
! _columnListMap.put(name, new LinkedList());
}
}
--- 158,164 ----
_rootModel = model;
}
! else if (!_columnListMap.containsKey(name))
{
! _columnListMap.put(name, createColumnList());
}
}
***************
*** 165,168 ****
--- 172,179 ----
Column column = new Column(attributeName, DataType.UNKNOWN, nullable);
+ if (!_columnListMap.containsKey(elementName))
+ {
+ _columnListMap.put(elementName, createColumnList());
+ }
List columnList = (List)_columnListMap.get(elementName);
columnList.add(column);
Index: FlatXmlProducer.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml/Attic/FlatXmlProducer.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
*** FlatXmlProducer.java 30 Apr 2003 00:27:46 -0000 1.1.2.1
--- FlatXmlProducer.java 30 Apr 2003 21:12:50 -0000 1.1.2.2
***************
*** 21,25 ****
package org.dbunit.dataset.xml;
- import org.dbunit.dataset.CachedDataSet;
import org.dbunit.dataset.Column;
import org.dbunit.dataset.DataSetException;
--- 21,24 ----
***************
*** 29,32 ****
--- 28,32 ----
import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.dataset.ITableMetaData;
+ import org.dbunit.dataset.DefaultConsumer;
import org.dbunit.dataset.datatype.DataType;
***************
*** 36,39 ****
--- 36,40 ----
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
+ import org.xml.sax.EntityResolver;
import org.xml.sax.helpers.DefaultHandler;
***************
*** 52,63 ****
implements IDataSetProducer, ContentHandler
{
private static final String DATASET = "dataset";
private final InputSource _inputSource;
private XMLReader _xmlReader;
private IDataSet _metaDataSet;
- boolean _ignoreDtd = false;
! private IDataSetConsumer _consumer;
private ITableMetaData _activeMetaData;
--- 53,66 ----
implements IDataSetProducer, ContentHandler
{
+ private static final IDataSetConsumer EMPTY_CONSUMER = new DefaultConsumer();
private static final String DATASET = "dataset";
private final InputSource _inputSource;
+ private final EntityResolver _resolver;
+ private final boolean _ignoreDtd;
private XMLReader _xmlReader;
private IDataSet _metaDataSet;
! private IDataSetConsumer _consumer = EMPTY_CONSUMER;
private ITableMetaData _activeMetaData;
***************
*** 65,68 ****
--- 68,73 ----
{
_inputSource = xmlSource;
+ _ignoreDtd = false;
+ _resolver = this;
}
***************
*** 71,74 ****
--- 76,80 ----
_inputSource = xmlSource;
_ignoreDtd = ignoreDtd;
+ _resolver = this;
}
***************
*** 78,81 ****
--- 84,95 ----
_metaDataSet = metaDataSet;
_ignoreDtd = true;
+ _resolver = this;
+ }
+
+ public FlatXmlProducer(InputSource xmlSource, EntityResolver resolver)
+ {
+ _inputSource = xmlSource;
+ _ignoreDtd = false;
+ _resolver = resolver;
}
***************
*** 131,135 ****
_xmlReader.setContentHandler(this);
! _xmlReader.setEntityResolver(this);
_xmlReader.parse(_inputSource);
}
--- 145,149 ----
_xmlReader.setContentHandler(this);
! _xmlReader.setEntityResolver(_resolver);
_xmlReader.parse(_inputSource);
}
***************
*** 249,253 ****
{
// Cache the DTD content to use it as metadata
! CachedDataSet metaDataSet = new CachedDataSet();
this.setConsumer(metaDataSet);
_metaDataSet = metaDataSet;
--- 263,267 ----
{
// Cache the DTD content to use it as metadata
! FlatDtdDataSet metaDataSet = new FlatDtdDataSet();
this.setConsumer(metaDataSet);
_metaDataSet = metaDataSet;
|
|
From: <mla...@us...> - 2003-04-30 21:13:23
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv15860/src/java/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
CachedDataSet.java
Log Message:
* Removed dtdparser.jar. Now use SAX to parse DTD.
* Added more flat XML provider tests.
Index: CachedDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/Attic/CachedDataSet.java,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -C2 -d -r1.1.2.4 -r1.1.2.5
*** CachedDataSet.java 30 Apr 2003 00:27:45 -0000 1.1.2.4
--- CachedDataSet.java 30 Apr 2003 21:12:48 -0000 1.1.2.5
***************
*** 52,59 ****
}
! public CachedDataSet(IDataSetProducer provider) throws DataSetException
{
! provider.setConsumer(this);
! provider.produce();
}
--- 52,59 ----
}
! public CachedDataSet(IDataSetProducer producer) throws DataSetException
{
! producer.setConsumer(this);
! producer.produce();
}
|
|
From: <mla...@us...> - 2003-04-30 21:13:22
|
Update of /cvsroot/dbunit/dbunit/src/dtd
In directory sc8-pr-cvs1:/tmp/cvs-serv15860/src/dtd
Modified Files:
Tag: branch-exml2sax
flatDtdProducerTest.dtd
Log Message:
* Removed dtdparser.jar. Now use SAX to parse DTD.
* Added more flat XML provider tests.
Index: flatDtdProducerTest.dtd
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/dtd/Attic/flatDtdProducerTest.dtd,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -C2 -d -r1.1.2.1 -r1.1.2.2
*** flatDtdProducerTest.dtd 30 Apr 2003 02:17:02 -0000 1.1.2.1
--- flatDtdProducerTest.dtd 30 Apr 2003 21:12:47 -0000 1.1.2.2
***************
*** 4,7 ****
--- 4,8 ----
TEST_TABLE*,
DUPLICATE_TABLE*,
+ NOT_NULL_TABLE*,
EMPTY_TABLE*)>
***************
*** 30,38 ****
>
! <!ELEMENT EMPTY_TABLE EMPTY>
! <!ATTLIST EMPTY_TABLE
COLUMN0 CDATA #REQUIRED
COLUMN1 CDATA #REQUIRED
COLUMN2 CDATA #REQUIRED
COLUMN3 CDATA #REQUIRED
! >
\ No newline at end of file
--- 31,47 ----
>
! <!ELEMENT NOT_NULL_TABLE EMPTY>
! <!ATTLIST NOT_NULL_TABLE
COLUMN0 CDATA #REQUIRED
COLUMN1 CDATA #REQUIRED
COLUMN2 CDATA #REQUIRED
COLUMN3 CDATA #REQUIRED
! >
!
! <!ELEMENT EMPTY_TABLE EMPTY>
! <!ATTLIST EMPTY_TABLE
! COLUMN0 CDATA #IMPLIED
! COLUMN1 CDATA #IMPLIED
! COLUMN2 CDATA #IMPLIED
! COLUMN3 CDATA #IMPLIED
! >
|
|
From: <mla...@us...> - 2003-04-30 21:13:00
|
Update of /cvsroot/dbunit/dbunit/lib
In directory sc8-pr-cvs1:/tmp/cvs-serv15860/lib
Removed Files:
Tag: branch-exml2sax
dtdparser.jar
Log Message:
* Removed dtdparser.jar. Now use SAX to parse DTD.
* Added more flat XML provider tests.
--- dtdparser.jar DELETED ---
|
|
From: <mla...@us...> - 2003-04-30 21:12:59
|
Update of /cvsroot/dbunit/dbunit/src/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv15860/src/xml
Added Files:
Tag: branch-exml2sax
flatXmlProducerTest.xml
Log Message:
* Removed dtdparser.jar. Now use SAX to parse DTD.
* Added more flat XML provider tests.
--- NEW FILE: flatXmlProducerTest.xml ---
<!DOCTYPE dataset SYSTEM "../dtd/flatDtdProducerTest.dtd">
<dataset>
<DUPLICATE_TABLE COLUMN0="row 0 col 0" COLUMN1="row 0 col 1" COLUMN2="row 0 col 2" COLUMN3="row 0 col 3"/>
<SECOND_TABLE COLUMN0="row 0 col 0" COLUMN1="row 0 col 1" COLUMN2="row 0 col 2" COLUMN3="row 0 col 3"/>
<SECOND_TABLE COLUMN0="row 1 col 0" COLUMN1="row 1 col 1" COLUMN2="row 1 col 2" COLUMN3="row 1 col 3"/>
<TEST_TABLE COLUMN0="row 0 col 0" COLUMN1="row 0 col 1" COLUMN2="row 0 col 2" COLUMN3="row 0 col 3"/>
<TEST_TABLE COLUMN0="row 1 col 0" COLUMN1="row 1 col 1" COLUMN2="row 1 col 2" COLUMN3="row 1 col 3"/>
<TEST_TABLE COLUMN0="row 2 col 0" COLUMN1="row 2 col 1" COLUMN2="row 2 col 2" COLUMN3="row 2 col 3"/>
<DUPLICATE_TABLE COLUMN0="row 0 col 0" COLUMN1="row 0 col 1" COLUMN2="row 0 col 2" COLUMN3="row 0 col 3"/>
<DUPLICATE_TABLE COLUMN0="row 1 col 0" COLUMN1="row 1 col 1" COLUMN2="row 1 col 2" COLUMN3="row 1 col 3"/>
<NOT_NULL_TABLE COLUMN0="row 0 col 0" COLUMN1="row 0 col 1" COLUMN2="row 0 col 2" COLUMN3="row 0 col 3"/>
<EMPTY_TABLE/>
</dataset>
|
|
From: <mla...@us...> - 2003-04-30 02:17:34
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv8945/src/java/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
Column.java
Added Files:
Tag: branch-exml2sax
DefaultConsumer.java
Log Message:
Added flat DTD producer tests.
--- NEW FILE: DefaultConsumer.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;
/**
* This class provides no op implementations for all of the callbacks in the
* {@link IDataSetConsumer} interface.
*
* @author Manuel Laflamme
* @since Apr 29, 2003
* @version $Revision: 1.1.2.1 $
*/
public class DefaultConsumer implements IDataSetConsumer
{
public void startDataSet() throws DataSetException
{
// no op
}
public void endDataSet() throws DataSetException
{
// no op
}
public void startTable(ITableMetaData metaData) throws DataSetException
{
// no op
}
public void endTable() throws DataSetException
{
// no op
}
public void row(Object[] values) throws DataSetException
{
// no op
}
}
Index: Column.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/Column.java,v
retrieving revision 1.10.6.1
retrieving revision 1.10.6.2
diff -C2 -d -r1.10.6.1 -r1.10.6.2
*** Column.java 29 Apr 2003 21:27:01 -0000 1.10.6.1
--- Column.java 30 Apr 2003 02:16:59 -0000 1.10.6.2
***************
*** 150,153 ****
--- 150,163 ----
}
+ /**
+ * Returns the appropriate Nullable constant.
+ *
+ * @param nullable <code>true</code> if null is allowed
+ */
+ public static Nullable nullableValue(boolean nullable)
+ {
+ return nullable ? NULLABLE : NO_NULLS;
+ }
+
////////////////////////////////////////////////////////////////////////////
// Object class
|
|
From: <mla...@us...> - 2003-04-30 02:17:05
|
Update of /cvsroot/dbunit/dbunit/src/dtd
In directory sc8-pr-cvs1:/tmp/cvs-serv8945/src/dtd
Added Files:
Tag: branch-exml2sax
flatDtdProducerTest.dtd
Log Message:
Added flat DTD producer tests.
--- NEW FILE: flatDtdProducerTest.dtd ---
<!ELEMENT dataset (
DUPLICATE_TABLE*,
SECOND_TABLE*,
TEST_TABLE*,
DUPLICATE_TABLE*,
EMPTY_TABLE*)>
<!ELEMENT TEST_TABLE EMPTY>
<!ATTLIST TEST_TABLE
COLUMN0 CDATA #IMPLIED
COLUMN1 CDATA #IMPLIED
COLUMN2 CDATA #IMPLIED
COLUMN3 CDATA #IMPLIED
>
<!ELEMENT SECOND_TABLE EMPTY>
<!ATTLIST SECOND_TABLE
COLUMN0 CDATA #IMPLIED
COLUMN1 CDATA #IMPLIED
COLUMN2 CDATA #IMPLIED
COLUMN3 CDATA #IMPLIED
>
<!ELEMENT DUPLICATE_TABLE EMPTY>
<!ATTLIST DUPLICATE_TABLE
COLUMN0 CDATA #IMPLIED
COLUMN1 CDATA #IMPLIED
COLUMN2 CDATA #IMPLIED
COLUMN3 CDATA #IMPLIED
>
<!ELEMENT EMPTY_TABLE EMPTY>
<!ATTLIST EMPTY_TABLE
COLUMN0 CDATA #REQUIRED
COLUMN1 CDATA #REQUIRED
COLUMN2 CDATA #REQUIRED
COLUMN3 CDATA #REQUIRED
>
|
|
From: <mla...@us...> - 2003-04-30 02:17:05
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv8945/src/test/org/dbunit/dataset/xml
Modified Files:
Tag: branch-exml2sax
AllTests.java
Added Files:
Tag: branch-exml2sax
FlatDtdProducerTest.java
Log Message:
Added flat DTD producer tests.
--- NEW FILE: FlatDtdProducerTest.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.xml;
import org.dbunit.dataset.AbstractDataSetProducerTest;
import org.dbunit.dataset.Column;
import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.dataset.MockDataSetConsumer;
import org.xml.sax.InputSource;
import java.io.File;
import java.io.FileInputStream;
import java.io.StringReader;
/**
* @author Manuel Laflamme
* @since Apr 29, 2003
* @version $Revision: 1.1.2.1 $
*/
public class FlatDtdProducerTest extends AbstractDataSetProducerTest
{
private static final File DTD_FILE =
new File("src/dtd/flatDtdProducerTest.dtd");
public FlatDtdProducerTest(String s)
{
super(s);
}
protected IDataSetProducer createProducer() throws Exception
{
InputSource source = new InputSource(new FileInputStream(DTD_FILE));
return new FlatDtdProducer(source);
}
public void testProduce() throws Exception
{
// Setup consumer
MockDataSetConsumer consumer = new MockDataSetConsumer();
consumer.addExpectedStartDataSet();
String[] expectedNames = getExpectedNames();
for (int i = 0; i < expectedNames.length; i++)
{
// All tables except the one have nullable columns
boolean nullable = (i + 1 < expectedNames.length);
Column[] expectedColumns = createExpectedColumns(nullable);
String expectedName = expectedNames[i];
consumer.addExpectedStartTable(expectedName,
expectedColumns);
consumer.addExpectedEndTable(expectedName);
}
consumer.addExpectedEndDataSet();
// Setup producer
IDataSetProducer producer = createProducer();
producer.setConsumer(consumer);
// Produce and verify consumer
producer.produce();
consumer.verify();
}
public void testProduceWithoutConsumer() throws Exception
{
IDataSetProducer producer = createProducer();
producer.produce();
}
public void testSequenceModel() throws Exception
{
// Setup consumer
MockDataSetConsumer consumer = new MockDataSetConsumer();
consumer.addExpectedStartDataSet();
consumer.addExpectedEmptyTableIgnoreColumns("DUPLICATE_TABLE");
consumer.addExpectedEmptyTableIgnoreColumns("TEST_TABLE");
consumer.addExpectedEmptyTableIgnoreColumns("DUPLICATE_TABLE");
consumer.addExpectedEndDataSet();
// Setup producer
String content =
"<!ELEMENT dataset (DUPLICATE_TABLE*,TEST_TABLE*,DUPLICATE_TABLE*)>" +
"<!ELEMENT TEST_TABLE EMPTY>" +
"<!ELEMENT DUPLICATE_TABLE EMPTY>";
InputSource source = new InputSource(new StringReader(content));
FlatDtdProducer producer = new FlatDtdProducer(source);
producer.setConsumer(consumer);
// Produce and verify consumer
producer.produce();
consumer.verify();
}
public void testChoicesModel() throws Exception
{
// Setup consumer
MockDataSetConsumer consumer = new MockDataSetConsumer();
consumer.addExpectedStartDataSet();
consumer.addExpectedEmptyTableIgnoreColumns("TEST_TABLE");
consumer.addExpectedEmptyTableIgnoreColumns("SECOND_TABLE");
consumer.addExpectedEndDataSet();
// Setup producer
String content =
"<!ELEMENT dataset (TEST_TABLE|SECOND_TABLE)>" +
"<!ELEMENT TEST_TABLE EMPTY>" +
"<!ELEMENT SECOND_TABLE EMPTY>";
InputSource source = new InputSource(new StringReader(content));
FlatDtdProducer producer = new FlatDtdProducer(source);
producer.setConsumer(consumer);
// Produce and verify consumer
producer.produce();
consumer.verify();
}
}
Index: AllTests.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml/AllTests.java,v
retrieving revision 1.6
retrieving revision 1.6.2.1
diff -C2 -d -r1.6 -r1.6.2.1
*** AllTests.java 13 Apr 2003 02:40:11 -0000 1.6
--- AllTests.java 30 Apr 2003 02:17:02 -0000 1.6.2.1
***************
*** 36,39 ****
--- 36,40 ----
TestSuite suite = new TestSuite();
suite.addTest(new TestSuite(FlatDtdDataSetTest.class));
+ suite.addTest(new TestSuite(FlatDtdProducerTest.class));
suite.addTest(new TestSuite(FlatXmlDataSetTest.class));
suite.addTest(new TestSuite(FlatXmlTableTest.class));
|
|
From: <mla...@us...> - 2003-04-30 02:17:05
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv8945/src/test/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
MockDataSetConsumer.java
Added Files:
Tag: branch-exml2sax
AbstractDataSetProducerTest.java
Log Message:
Added flat DTD producer tests.
--- NEW FILE: AbstractDataSetProducerTest.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;
import org.dbunit.dataset.datatype.DataType;
import junit.framework.TestCase;
/**
* @author Manuel Laflamme
* @since Apr 29, 2003
* @version $Revision: 1.1.2.1 $
*/
public abstract class AbstractDataSetProducerTest extends TestCase
{
private static final String[] TABLE_NAMES = {
"DUPLICATE_TABLE",
"SECOND_TABLE",
"TEST_TABLE",
"DUPLICATE_TABLE",
"EMPTY_TABLE",
};
public AbstractDataSetProducerTest(String s)
{
super(s);
}
protected String[] getExpectedNames() throws Exception
{
return (String[])TABLE_NAMES.clone();
}
protected Column[] createExpectedColumns(boolean nullable) throws Exception
{
Column[] columns = new Column[4];
for (int i = 0; i < columns.length; i++)
{
columns[i] = new Column("COLUMN" + i, DataType.UNKNOWN,
Column.nullableValue(nullable));
}
return columns;
}
public abstract void testProduce() throws Exception;
public abstract void testProduceWithoutConsumer() throws Exception;
}
Index: MockDataSetConsumer.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/MockDataSetConsumer.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -d -r1.1.2.2 -r1.1.2.3
*** MockDataSetConsumer.java 30 Apr 2003 00:27:48 -0000 1.1.2.2
--- MockDataSetConsumer.java 30 Apr 2003 02:17:01 -0000 1.1.2.3
***************
*** 1,13 ****
package org.dbunit.dataset;
- import com.mockobjects.Verifiable;
import com.mockobjects.ExpectationList;
- import java.util.List;
- import java.util.ArrayList;
import java.util.Arrays;
- import junit.framework.Assert;
-
/**
*
--- 1,9 ----
package org.dbunit.dataset;
import com.mockobjects.ExpectationList;
+ import com.mockobjects.Verifiable;
import java.util.Arrays;
/**
*
***************
*** 39,43 ****
public void addExpectedStartTable(ITableMetaData metaData) throws Exception
{
! _expectedList.addExpected(new StartTableEvent(metaData));
}
--- 35,39 ----
public void addExpectedStartTable(ITableMetaData metaData) throws Exception
{
! _expectedList.addExpected(new StartTableEvent(metaData, false));
}
***************
*** 47,50 ****
--- 43,57 ----
}
+ public void addExpectedStartTableIgnoreColumns(String tableName) throws Exception
+ {
+ _expectedList.addExpected(new StartTableEvent(tableName, true));
+ }
+
+ public void addExpectedEmptyTableIgnoreColumns(String tableName) throws Exception
+ {
+ addExpectedStartTableIgnoreColumns(tableName);
+ addExpectedEndTable(tableName);
+ }
+
public void addExpectedEndTable(String tableName) throws Exception
{
***************
*** 80,84 ****
public void startTable(ITableMetaData metaData) throws DataSetException
{
! _expectedList.addActual(new StartTableEvent(metaData));
_actualTableName = metaData.getTableName();
_actualTableRow = 0;
--- 87,91 ----
public void startTable(ITableMetaData metaData) throws DataSetException
{
! _expectedList.addActual(new StartTableEvent(metaData, false));
_actualTableName = metaData.getTableName();
_actualTableRow = 0;
***************
*** 138,147 ****
private final String _tableName;
private final Column[] _columns;
! public StartTableEvent(ITableMetaData metaData) throws DataSetException
{
super("startTable()");
_tableName = metaData.getTableName();
_columns = metaData.getColumns();
}
--- 145,164 ----
private final String _tableName;
private final Column[] _columns;
+ private final boolean _ignoreColumns;
! public StartTableEvent(ITableMetaData metaData, boolean ignoreColumns) throws DataSetException
{
super("startTable()");
_tableName = metaData.getTableName();
_columns = metaData.getColumns();
+ _ignoreColumns = ignoreColumns;
+ }
+
+ public StartTableEvent(String tableName, boolean ignoreColumns) throws DataSetException
+ {
+ super("startTable()");
+ _tableName = tableName;
+ _columns = new Column[0];
+ _ignoreColumns = ignoreColumns;
}
***************
*** 154,159 ****
final StartTableEvent startTableItem = (StartTableEvent)o;
- if (!Arrays.equals(_columns, startTableItem._columns)) return false;
if (!_tableName.equals(startTableItem._tableName)) return false;
return true;
--- 171,179 ----
final StartTableEvent startTableItem = (StartTableEvent)o;
if (!_tableName.equals(startTableItem._tableName)) return false;
+ if (!_ignoreColumns)
+ {
+ if (!Arrays.equals(_columns, startTableItem._columns)) return false;
+ }
return true;
***************
*** 169,173 ****
public String toString()
{
! return _name + ": table=" + _tableName + ", columns=" + Arrays.asList(_columns);
}
}
--- 189,198 ----
public String toString()
{
! String string = _name + ": table=" + _tableName;
! if (!_ignoreColumns)
! {
! string += ", columns=" + Arrays.asList(_columns);
! }
! return string;
}
}
|
|
From: <mla...@us...> - 2003-04-30 02:17:04
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv8945/src/java/org/dbunit/dataset/xml
Modified Files:
Tag: branch-exml2sax
FlatDtdProducer.java
Log Message:
Added flat DTD producer tests.
Index: FlatDtdProducer.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/xml/Attic/FlatDtdProducer.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
*** FlatDtdProducer.java 30 Apr 2003 00:27:46 -0000 1.1.2.1
--- FlatDtdProducer.java 30 Apr 2003 02:17:00 -0000 1.1.2.2
***************
*** 26,29 ****
--- 26,30 ----
import org.dbunit.dataset.IDataSetConsumer;
import org.dbunit.dataset.IDataSetProducer;
+ import org.dbunit.dataset.DefaultConsumer;
import org.dbunit.dataset.datatype.DataType;
***************
*** 55,58 ****
--- 56,60 ----
public class FlatDtdProducer implements IDataSetProducer, EntityResolver, DeclHandler, LexicalHandler
{
+ private static final IDataSetConsumer EMPTY_CONSUMER = new DefaultConsumer();
private static final String XML_CONTENT =
"<?xml version=\"1.0\"?>\n<!DOCTYPE dataset SYSTEM \"urn:/dummy.dtd\">\n<dataset/>";
***************
*** 66,70 ****
private InputSource _inputSource;
! private IDataSetConsumer _consumer;
private String _rootName;
--- 68,72 ----
private InputSource _inputSource;
! private IDataSetConsumer _consumer = EMPTY_CONSUMER;
private String _rootName;
***************
*** 205,211 ****
// Parse the root element model to determine the table sequence.
! // This implementation does not support choices yet and will never
! // support mixed model.
! StringTokenizer tokenizer = new StringTokenizer(rootModel, ",");
while (tokenizer.hasMoreTokens())
{
--- 207,213 ----
// Parse the root element model to determine the table sequence.
! // Support all sequence or choices model but not the mix of both.
! String delim = (rootModel.indexOf(",") != -1) ? "," : "|";
! StringTokenizer tokenizer = new StringTokenizer(rootModel, delim);
while (tokenizer.hasMoreTokens())
{
|
|
From: <mla...@us...> - 2003-04-30 00:56:33
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv9273/src/test/org/dbunit/dataset/xml
Added Files:
Tag: branch-exml2sax
FlatXmlTableWriteTest.java
Removed Files:
Tag: branch-exml2sax
FlatXmlDataSetProviderTest.java
Log Message:
Oups! Deleted the wrong file.
--- FlatXmlDataSetProviderTest.java DELETED ---
|
|
From: <mla...@us...> - 2003-04-30 00:28:21
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv30700/src/java/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
CachedDataSet.java CompositeDataSet.java StreamingDataSet.java
StreamingIterator.java
Added Files:
Tag: branch-exml2sax
DataSetProducerAdapter.java IDataSetProducer.java
Removed Files:
Tag: branch-exml2sax
DefaultDataSetProvider.java IDataSetProvider.java
Log Message:
More class renaming. Renamed IDataSetProvider to IDataSetProducer.
Subclasses have also been renamed to follow the same pattern.
My initial intent to rename Source to Producer but for some strange
reasons this ended up as Provider. Are you confused? Me I was!
--- NEW FILE: DataSetProducerAdapter.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;
import org.dbunit.dataset.ITableIterator;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.ITableMetaData;
import org.dbunit.dataset.ITable;
import org.dbunit.dataset.Column;
import org.dbunit.dataset.RowOutOfBoundsException;
import org.dbunit.dataset.IDataSet;
/**
* @author Manuel Laflamme
* @since Apr 17, 2003
* @version $Revision: 1.1.2.1 $
*/
public class DataSetProducerAdapter implements IDataSetProducer
{
private final ITableIterator _iterator;
private IDataSetConsumer _consumer;
public DataSetProducerAdapter(ITableIterator iterator)
{
_iterator = iterator;
}
public DataSetProducerAdapter(IDataSet dataSet) throws DataSetException
{
_iterator = dataSet.iterator();
}
////////////////////////////////////////////////////////////////////////////
// IDataSetProducer interface
public void setConsumer(IDataSetConsumer consumer) throws DataSetException
{
_consumer = consumer;
}
public void produce() throws DataSetException
{
_consumer.startDataSet();
while(_iterator.next())
{
ITable table = _iterator.getTable();
ITableMetaData metaData = table.getTableMetaData();
_consumer.startTable(metaData);
try
{
Column[] columns = metaData.getColumns();
if (columns.length == 0)
{
_consumer.endTable();
continue;
}
for (int i = 0; ; i++)
{
Object[] values = new Object[columns.length];
for (int j = 0; j < columns.length; j++)
{
Column column = columns[j];
values[j] = table.getValue(i, column.getColumnName());
}
_consumer.row(values);
}
}
catch (RowOutOfBoundsException e)
{
// end of table
_consumer.endTable();
}
}
_consumer.endDataSet();
}
}
--- NEW FILE: IDataSetProducer.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;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.IDataSetConsumer;
/**
* Interface for reading a dataset using callback.
*
* @author Manuel Laflamme
* @since Apr 17, 2003
* @version $Revision: 1.1.2.1 $
*/
public interface IDataSetProducer
{
public void setConsumer(IDataSetConsumer consumer) throws DataSetException;
/**
* Process this dataset source. During the processing, the IDataSetProducer
* will provide information about the dataset through the specified event
* listener.
* <p>
* This method is synchronous: it will not return until processing has ended.
* If a client application wants to terminate parsing early, it should
* throw an exception from the listener.
*/
public void produce() throws DataSetException;
}
Index: CachedDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/Attic/CachedDataSet.java,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -C2 -d -r1.1.2.3 -r1.1.2.4
*** CachedDataSet.java 28 Apr 2003 21:23:34 -0000 1.1.2.3
--- CachedDataSet.java 30 Apr 2003 00:27:45 -0000 1.1.2.4
***************
*** 52,59 ****
}
! public CachedDataSet(IDataSetProvider provider) throws DataSetException
{
provider.setConsumer(this);
! provider.process();
}
--- 52,59 ----
}
! public CachedDataSet(IDataSetProducer provider) throws DataSetException
{
provider.setConsumer(this);
! provider.produce();
}
Index: CompositeDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/CompositeDataSet.java,v
retrieving revision 1.12
retrieving revision 1.12.2.1
diff -C2 -d -r1.12 -r1.12.2.1
*** CompositeDataSet.java 9 Apr 2003 22:52:08 -0000 1.12
--- CompositeDataSet.java 30 Apr 2003 00:27:45 -0000 1.12.2.1
***************
*** 128,132 ****
List tableList = new ArrayList();
! // process each table
for (int j = 0; j < tables.length; j++)
{
--- 128,132 ----
List tableList = new ArrayList();
! // produce each table
for (int j = 0; j < tables.length; j++)
{
Index: StreamingDataSet.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/Attic/StreamingDataSet.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -d -r1.1.2.2 -r1.1.2.3
*** StreamingDataSet.java 28 Apr 2003 12:11:03 -0000 1.1.2.2
--- StreamingDataSet.java 30 Apr 2003 00:27:45 -0000 1.1.2.3
***************
*** 26,30 ****
import org.dbunit.dataset.ITableIterator;
import org.dbunit.dataset.ITableMetaData;
! import org.dbunit.dataset.IDataSetProvider;
/**
--- 26,30 ----
import org.dbunit.dataset.ITableIterator;
import org.dbunit.dataset.ITableMetaData;
! import org.dbunit.dataset.IDataSetProducer;
/**
***************
*** 35,42 ****
public class StreamingDataSet extends AbstractDataSet
{
! private IDataSetProvider _source;
private int _iteratorCount;
! public StreamingDataSet(IDataSetProvider source)
{
_source = source;
--- 35,42 ----
public class StreamingDataSet extends AbstractDataSet
{
! private IDataSetProducer _source;
private int _iteratorCount;
! public StreamingDataSet(IDataSetProducer source)
{
_source = source;
Index: StreamingIterator.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/Attic/StreamingIterator.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -d -r1.1.2.2 -r1.1.2.3
*** StreamingIterator.java 28 Apr 2003 12:11:07 -0000 1.1.2.2
--- StreamingIterator.java 30 Apr 2003 00:27:45 -0000 1.1.2.3
***************
*** 29,33 ****
import org.dbunit.dataset.RowOutOfBoundsException;
import org.dbunit.dataset.IDataSetConsumer;
! import org.dbunit.dataset.IDataSetProvider;
import org.dbunit.util.concurrent.BoundedBuffer;
--- 29,33 ----
import org.dbunit.dataset.RowOutOfBoundsException;
import org.dbunit.dataset.IDataSetConsumer;
! import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.util.concurrent.BoundedBuffer;
***************
*** 50,54 ****
private boolean _eod = false;
! public StreamingIterator(IDataSetProvider source) throws DataSetException
{
Channel channel = new BoundedBuffer(30);
--- 50,54 ----
private boolean _eod = false;
! public StreamingIterator(IDataSetProducer source) throws DataSetException
{
Channel channel = new BoundedBuffer(30);
***************
*** 198,205 ****
private static class AsynchronousConsumer implements Runnable, IDataSetConsumer
{
! private final IDataSetProvider _producer;
private final Puttable _channel;
! public AsynchronousConsumer(IDataSetProvider source, Puttable channel)
{
_producer = source;
--- 198,205 ----
private static class AsynchronousConsumer implements Runnable, IDataSetConsumer
{
! private final IDataSetProducer _producer;
private final Puttable _channel;
! public AsynchronousConsumer(IDataSetProducer source, Puttable channel)
{
_producer = source;
***************
*** 215,219 ****
{
_producer.setConsumer(this);
! _producer.process();
// System.out.println("End of thread! - " + System.currentTimeMillis());
}
--- 215,219 ----
{
_producer.setConsumer(this);
! _producer.produce();
// System.out.println("End of thread! - " + System.currentTimeMillis());
}
--- DefaultDataSetProvider.java DELETED ---
--- IDataSetProvider.java DELETED ---
|
|
From: <mla...@us...> - 2003-04-30 00:28:20
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter
In directory sc8-pr-cvs1:/tmp/cvs-serv30700/src/java/org/dbunit/dataset/filter
Modified Files:
Tag: branch-exml2sax
IncludeTableFilter.java
Log Message:
More class renaming. Renamed IDataSetProvider to IDataSetProducer.
Subclasses have also been renamed to follow the same pattern.
My initial intent to rename Source to Producer but for some strange
reasons this ended up as Provider. Are you confused? Me I was!
Index: IncludeTableFilter.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/dataset/filter/IncludeTableFilter.java,v
retrieving revision 1.4
retrieving revision 1.4.4.1
diff -C2 -d -r1.4 -r1.4.4.1
*** IncludeTableFilter.java 20 Mar 2003 03:05:13 -0000 1.4
--- IncludeTableFilter.java 30 Apr 2003 00:27:46 -0000 1.4.4.1
***************
*** 207,211 ****
}
! // process pattern between stars. padIdxStart and patIdxEnd point
// always to a '*'.
while (patIdxStart != patIdxEnd && strIdxStart <= strIdxEnd)
--- 207,211 ----
}
! // produce pattern between stars. padIdxStart and patIdxEnd point
// always to a '*'.
while (patIdxStart != patIdxEnd && strIdxStart <= strIdxEnd)
|
|
From: <mla...@us...> - 2003-04-30 00:27:53
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/xml
In directory sc8-pr-cvs1:/tmp/cvs-serv30700/src/test/org/dbunit/dataset/xml
Added Files:
Tag: branch-exml2sax
FlatXmlProducerTest.java
Removed Files:
Tag: branch-exml2sax
FlatXmlTableWriteTest.java
Log Message:
More class renaming. Renamed IDataSetProvider to IDataSetProducer.
Subclasses have also been renamed to follow the same pattern.
My initial intent to rename Source to Producer but for some strange
reasons this ended up as Provider. Are you confused? Me I was!
--- NEW FILE: FlatXmlProducerTest.java ---
package org.dbunit.dataset.xml;
import org.dbunit.dataset.CachedDataSet;
import org.dbunit.dataset.Column;
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.ITable;
import org.xml.sax.InputSource;
import java.io.File;
import java.io.FileInputStream;
/**
*
* <p> Copyright (c) 2002 OZ.COM. All Rights Reserved. </p>
* @author manuel.laflamme$
* @since Apr 28, 2003$
* @version $Revision: 1.1.2.1 $
*/
public class FlatXmlProducerTest extends FlatXmlDataSetTest
{
public FlatXmlProducerTest(String s)
{
super(s);
}
protected IDataSet createDataSet() throws Exception
{
InputSource source = new InputSource(new FileInputStream(DATASET_FILE));
return new CachedDataSet(new FlatXmlProducer(source));
}
protected IDataSet createDuplicateDataSet() throws Exception
{
InputSource source = new InputSource(new FileInputStream(DUPLICATE_DATASET_FILE));
return new CachedDataSet(new FlatXmlProducer(source));
}
public void testMissingColumnAndEnableDtdMetadata() throws Exception
{
File file = new File("src/xml/flatXmlTableTest.xml");
InputSource source = new InputSource(file.toURL().toString());
IDataSet dataSet = new CachedDataSet(new FlatXmlProducer(source));
ITable table = dataSet.getTable("MISSING_VALUES");
Column[] columns = table.getTableMetaData().getColumns();
assertEquals("column count", 3, columns.length);
}
public void testMissingColumnAndDisableDtdMetadata() throws Exception
{
File file = new File("src/xml/flatXmlTableTest.xml");
InputSource source = new InputSource(file.toURL().toString());
FlatXmlProducer provider = new FlatXmlProducer(source, true);
IDataSet dataSet = new CachedDataSet(provider);
ITable table = dataSet.getTable("MISSING_VALUES");
Column[] columns = table.getTableMetaData().getColumns();
assertEquals("column count", 2, columns.length);
}
public void testProduce() throws Exception
{
}
}
--- FlatXmlTableWriteTest.java DELETED ---
|
|
From: <mla...@us...> - 2003-04-30 00:27:51
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation
In directory sc8-pr-cvs1:/tmp/cvs-serv30700/src/java/org/dbunit/operation
Modified Files:
Tag: branch-exml2sax
AbstractBatchOperation.java RefreshOperation.java
Log Message:
More class renaming. Renamed IDataSetProvider to IDataSetProducer.
Subclasses have also been renamed to follow the same pattern.
My initial intent to rename Source to Producer but for some strange
reasons this ended up as Provider. Are you confused? Me I was!
Index: AbstractBatchOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/AbstractBatchOperation.java,v
retrieving revision 1.18
retrieving revision 1.18.2.1
diff -C2 -d -r1.18 -r1.18.2.1
*** AbstractBatchOperation.java 13 Apr 2003 16:49:58 -0000 1.18
--- AbstractBatchOperation.java 30 Apr 2003 00:27:47 -0000 1.18.2.1
***************
*** 126,130 ****
ITable table = iterator.getTable();
! // Do not process empty table
if (isEmpty(table))
{
--- 126,130 ----
ITable table = iterator.getTable();
! // Do not produce empty table
if (isEmpty(table))
{
Index: RefreshOperation.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/operation/RefreshOperation.java,v
retrieving revision 1.25
retrieving revision 1.25.2.1
diff -C2 -d -r1.25 -r1.25.2.1
*** RefreshOperation.java 13 Apr 2003 16:49:58 -0000 1.25
--- RefreshOperation.java 30 Apr 2003 00:27:47 -0000 1.25.2.1
***************
*** 77,81 ****
ITable table = iterator.getTable();
! // Do not process empty table
if (isEmpty(table))
{
--- 77,81 ----
ITable table = iterator.getTable();
! // Do not produce empty table
if (isEmpty(table))
{
|
|
From: <mla...@us...> - 2003-04-30 00:27:51
|
Update of /cvsroot/dbunit/dbunit/src/java/org/dbunit/util/concurrent
In directory sc8-pr-cvs1:/tmp/cvs-serv30700/src/java/org/dbunit/util/concurrent
Modified Files:
Tag: branch-exml2sax
Channel.java
Log Message:
More class renaming. Renamed IDataSetProvider to IDataSetProducer.
Subclasses have also been renamed to follow the same pattern.
My initial intent to rename Source to Producer but for some strange
reasons this ended up as Provider. Are you confused? Me I was!
Index: Channel.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/java/org/dbunit/util/concurrent/Attic/Channel.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
*** Channel.java 23 Apr 2003 02:09:04 -0000 1.1.2.1
--- Channel.java 30 Apr 2003 00:27:47 -0000 1.1.2.2
***************
*** 97,101 ****
* Object item = channel.poll(0);
* if (item != null)
! * process(item);
* else
* break;
--- 97,101 ----
* Object item = channel.poll(0);
* if (item != null)
! * produce(item);
* else
* break;
***************
*** 143,147 ****
* // special actions; perhaps terminate
* else
! * // process normally
* </pre>
* <p>
--- 143,147 ----
* // special actions; perhaps terminate
* else
! * // produce normally
* </pre>
* <p>
|
Update of /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset
In directory sc8-pr-cvs1:/tmp/cvs-serv30700/src/test/org/dbunit/dataset
Modified Files:
Tag: branch-exml2sax
CachedDataSetTest.java MockDataSetConsumer.java
StreamingDataSetTest.java StreamingTableTest.java
Log Message:
More class renaming. Renamed IDataSetProvider to IDataSetProducer.
Subclasses have also been renamed to follow the same pattern.
My initial intent to rename Source to Producer but for some strange
reasons this ended up as Provider. Are you confused? Me I was!
Index: CachedDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/CachedDataSetTest.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -d -r1.1.2.2 -r1.1.2.3
*** CachedDataSetTest.java 28 Apr 2003 12:11:12 -0000 1.1.2.2
--- CachedDataSetTest.java 30 Apr 2003 00:27:48 -0000 1.1.2.3
***************
*** 22,26 ****
import org.dbunit.dataset.xml.FlatXmlDataSet;
! import org.dbunit.dataset.xml.FlatXmlProvider;
import org.xml.sax.InputSource;
--- 22,26 ----
import org.dbunit.dataset.xml.FlatXmlDataSet;
! import org.dbunit.dataset.xml.FlatXmlProducer;
import org.xml.sax.InputSource;
***************
*** 43,49 ****
{
FileReader reader = new FileReader("src/xml/flatXmlDataSetTest.xml");
! return new CachedDataSet(new FlatXmlProvider(new InputSource(reader)));
// return new CachedDataSet(
! // new StreamingDataSet(new FlatXmlProvider(new InputSource(reader))));
// return new CachedDataSet(new ForwardOnlyDataSet(new FlatXmlDataSet(reader)));
}
--- 43,49 ----
{
FileReader reader = new FileReader("src/xml/flatXmlDataSetTest.xml");
! return new CachedDataSet(new FlatXmlProducer(new InputSource(reader)));
// return new CachedDataSet(
! // new StreamingDataSet(new FlatXmlProducer(new InputSource(reader))));
// return new CachedDataSet(new ForwardOnlyDataSet(new FlatXmlDataSet(reader)));
}
Index: MockDataSetConsumer.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/MockDataSetConsumer.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
*** MockDataSetConsumer.java 29 Apr 2003 21:27:05 -0000 1.1.2.1
--- MockDataSetConsumer.java 30 Apr 2003 00:27:48 -0000 1.1.2.2
***************
*** 18,23 ****
public class MockDataSetConsumer implements Verifiable, IDataSetConsumer
{
! private static final Item START_DATASET = new Item("startDataSet()");
! private static final Item END_DATASET = new Item("endDataSet()");
private final ExpectationList _expectedList = new ExpectationList("");
--- 18,25 ----
public class MockDataSetConsumer implements Verifiable, IDataSetConsumer
{
! private static final ProducerEvent START_DATASET_EVENT =
! new ProducerEvent("startDataSet()");
! private static final ProducerEvent END_DATASET_EVENT =
! new ProducerEvent("endDataSet()");
private final ExpectationList _expectedList = new ExpectationList("");
***************
*** 27,41 ****
public void addExpectedStartDataSet() throws Exception
{
! _expectedList.addExpected(START_DATASET);
}
public void addExpectedEndDataSet() throws Exception
{
! _expectedList.addExpected(END_DATASET);
}
public void addExpectedStartTable(ITableMetaData metaData) throws Exception
{
! _expectedList.addExpected(new StartTableItem(metaData));
}
--- 29,43 ----
public void addExpectedStartDataSet() throws Exception
{
! _expectedList.addExpected(START_DATASET_EVENT);
}
public void addExpectedEndDataSet() throws Exception
{
! _expectedList.addExpected(END_DATASET_EVENT);
}
public void addExpectedStartTable(ITableMetaData metaData) throws Exception
{
! _expectedList.addExpected(new StartTableEvent(metaData));
}
***************
*** 47,56 ****
public void addExpectedEndTable(String tableName) throws Exception
{
! _expectedList.addExpected(new EndTableItem(tableName));
}
public void addExpectedRow(String tableName, int row, Object[] values) throws Exception
{
! _expectedList.addExpected(new RowItem(tableName, row, values));
}
--- 49,58 ----
public void addExpectedEndTable(String tableName) throws Exception
{
! _expectedList.addExpected(new EndTableEvent(tableName));
}
public void addExpectedRow(String tableName, int row, Object[] values) throws Exception
{
! _expectedList.addExpected(new RowEvent(tableName, row, values));
}
***************
*** 68,82 ****
public void startDataSet() throws DataSetException
{
! _expectedList.addActual(START_DATASET);
}
public void endDataSet() throws DataSetException
{
! _expectedList.addActual(END_DATASET);
}
public void startTable(ITableMetaData metaData) throws DataSetException
{
! _expectedList.addActual(new StartTableItem(metaData));
_actualTableName = metaData.getTableName();
_actualTableRow = 0;
--- 70,84 ----
public void startDataSet() throws DataSetException
{
! _expectedList.addActual(START_DATASET_EVENT);
}
public void endDataSet() throws DataSetException
{
! _expectedList.addActual(END_DATASET_EVENT);
}
public void startTable(ITableMetaData metaData) throws DataSetException
{
! _expectedList.addActual(new StartTableEvent(metaData));
_actualTableName = metaData.getTableName();
_actualTableRow = 0;
***************
*** 85,89 ****
public void endTable() throws DataSetException
{
! _expectedList.addActual(new EndTableItem(_actualTableName));
_actualTableName = null;
_actualTableRow = 0;
--- 87,91 ----
public void endTable() throws DataSetException
{
! _expectedList.addActual(new EndTableEvent(_actualTableName));
_actualTableName = null;
_actualTableRow = 0;
***************
*** 93,97 ****
{
_expectedList.addActual(
! new RowItem(_actualTableName, _actualTableRow, values));
_actualTableRow++;
}
--- 95,99 ----
{
_expectedList.addActual(
! new RowEvent(_actualTableName, _actualTableRow, values));
_actualTableRow++;
}
***************
*** 100,108 ****
//
! private static class Item
{
protected final String _name;
! public Item(String name)
{
_name = name;
--- 102,110 ----
//
! private static class ProducerEvent
{
protected final String _name;
! public ProducerEvent(String name)
{
_name = name;
***************
*** 112,118 ****
{
if (this == o) return true;
! if (!(o instanceof Item)) return false;
! final Item item = (Item)o;
if (!_name.equals(item._name)) return false;
--- 114,120 ----
{
if (this == o) return true;
! if (!(o instanceof ProducerEvent)) return false;
! final ProducerEvent item = (ProducerEvent)o;
if (!_name.equals(item._name)) return false;
***************
*** 132,141 ****
}
! private static class StartTableItem extends Item
{
private final String _tableName;
private final Column[] _columns;
! public StartTableItem(ITableMetaData metaData) throws DataSetException
{
super("startTable()");
--- 134,143 ----
}
! private static class StartTableEvent extends ProducerEvent
{
private final String _tableName;
private final Column[] _columns;
! public StartTableEvent(ITableMetaData metaData) throws DataSetException
{
super("startTable()");
***************
*** 147,154 ****
{
if (this == o) return true;
! if (!(o instanceof StartTableItem)) return false;
if (!super.equals(o)) return false;
! final StartTableItem startTableItem = (StartTableItem)o;
if (!Arrays.equals(_columns, startTableItem._columns)) return false;
--- 149,156 ----
{
if (this == o) return true;
! if (!(o instanceof StartTableEvent)) return false;
if (!super.equals(o)) return false;
! final StartTableEvent startTableItem = (StartTableEvent)o;
if (!Arrays.equals(_columns, startTableItem._columns)) return false;
***************
*** 171,179 ****
}
! private static class EndTableItem extends Item
{
private final String _tableName;
! public EndTableItem(String tableName)
{
super("endTable()");
--- 173,181 ----
}
! private static class EndTableEvent extends ProducerEvent
{
private final String _tableName;
! public EndTableEvent(String tableName)
{
super("endTable()");
***************
*** 184,191 ****
{
if (this == o) return true;
! if (!(o instanceof EndTableItem)) return false;
if (!super.equals(o)) return false;
! final EndTableItem endTableItem = (EndTableItem)o;
if (!_tableName.equals(endTableItem._tableName)) return false;
--- 186,193 ----
{
if (this == o) return true;
! if (!(o instanceof EndTableEvent)) return false;
if (!super.equals(o)) return false;
! final EndTableEvent endTableItem = (EndTableEvent)o;
if (!_tableName.equals(endTableItem._tableName)) return false;
***************
*** 207,211 ****
}
! private static class RowItem extends Item
{
private final String _tableName;
--- 209,213 ----
}
! private static class RowEvent extends ProducerEvent
{
private final String _tableName;
***************
*** 213,217 ****
private final Object[] _values;
! public RowItem(String tableName, int row, Object[] values)
{
super("row()");
--- 215,219 ----
private final Object[] _values;
! public RowEvent(String tableName, int row, Object[] values)
{
super("row()");
***************
*** 224,231 ****
{
if (this == o) return true;
! if (!(o instanceof RowItem)) return false;
if (!super.equals(o)) return false;
! final RowItem rowItem = (RowItem)o;
if (_row != rowItem._row) return false;
--- 226,233 ----
{
if (this == o) return true;
! if (!(o instanceof RowEvent)) return false;
if (!super.equals(o)) return false;
! final RowEvent rowItem = (RowEvent)o;
if (_row != rowItem._row) return false;
Index: StreamingDataSetTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/StreamingDataSetTest.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -d -r1.1.2.2 -r1.1.2.3
*** StreamingDataSetTest.java 28 Apr 2003 12:11:13 -0000 1.1.2.2
--- StreamingDataSetTest.java 30 Apr 2003 00:27:48 -0000 1.1.2.3
***************
*** 21,30 ****
package org.dbunit.dataset;
! import org.dbunit.dataset.DefaultDataSetProvider;
import org.dbunit.dataset.ForwardOnlyDataSetTest;
import org.dbunit.dataset.IDataSet;
! import org.dbunit.dataset.IDataSetProvider;
import org.dbunit.dataset.StreamingDataSet;
! import org.dbunit.dataset.xml.FlatXmlProvider;
import org.xml.sax.InputSource;
--- 21,30 ----
package org.dbunit.dataset;
! import org.dbunit.dataset.DataSetProducerAdapter;
import org.dbunit.dataset.ForwardOnlyDataSetTest;
import org.dbunit.dataset.IDataSet;
! import org.dbunit.dataset.IDataSetProducer;
import org.dbunit.dataset.StreamingDataSet;
! import org.dbunit.dataset.xml.FlatXmlProducer;
import org.xml.sax.InputSource;
***************
*** 46,54 ****
protected IDataSet createDataSet() throws Exception
{
! IDataSetProvider source = new FlatXmlProvider(
new InputSource(new FileReader("src/xml/flatXmlDataSetTest.xml")));
return new StreamingDataSet(source);
// return new StreamingDataSet(
! // new DefaultDataSetProvider(super.createDataSet()));
}
--- 46,54 ----
protected IDataSet createDataSet() throws Exception
{
! IDataSetProducer source = new FlatXmlProducer(
new InputSource(new FileReader("src/xml/flatXmlDataSetTest.xml")));
return new StreamingDataSet(source);
// return new StreamingDataSet(
! // new DataSetProducerAdapter(super.createDataSet()));
}
***************
*** 56,60 ****
{
return new StreamingDataSet(
! new DefaultDataSetProvider(super.createDuplicateDataSet()));
}
}
--- 56,60 ----
{
return new StreamingDataSet(
! new DataSetProducerAdapter(super.createDuplicateDataSet()));
}
}
Index: StreamingTableTest.java
===================================================================
RCS file: /cvsroot/dbunit/dbunit/src/test/org/dbunit/dataset/Attic/StreamingTableTest.java,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -d -r1.1.2.2 -r1.1.2.3
*** StreamingTableTest.java 28 Apr 2003 12:11:14 -0000 1.1.2.2
--- StreamingTableTest.java 30 Apr 2003 00:27:48 -0000 1.1.2.3
***************
*** 21,25 ****
package org.dbunit.dataset;
! import org.dbunit.dataset.xml.FlatXmlProvider;
import org.xml.sax.InputSource;
--- 21,25 ----
package org.dbunit.dataset;
! import org.dbunit.dataset.xml.FlatXmlProducer;
import org.xml.sax.InputSource;
***************
*** 45,50 ****
FileReader reader = new FileReader("src/xml/flatXmlDataSetTest.xml");
! // IDataSetProvider source = new DefaultDataSetProvider(new FlatXmlDataSet(reader));
! IDataSetProvider source = new FlatXmlProvider(new InputSource(reader));
ITableIterator iterator = new StreamingDataSet(source).iterator();
while(iterator.next())
--- 45,50 ----
FileReader reader = new FileReader("src/xml/flatXmlDataSetTest.xml");
! // IDataSetProducer source = new DataSetProducerAdapter(new FlatXmlDataSet(reader));
! IDataSetProducer source = new FlatXmlProducer(new InputSource(reader));
ITableIterator iterator = new StreamingDataSet(source).iterator();
while(iterator.next())
|