print dataset with filter
authorAndreas Müller <a.mueller@bgbm.org>
Tue, 3 Jul 2012 21:55:48 +0000 (21:55 +0000)
committerAndreas Müller <a.mueller@bgbm.org>
Tue, 3 Jul 2012 21:55:48 +0000 (21:55 +0000)
cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/test/integration/CdmIntegrationTest.java

index fe994edf4b58c1de9743e783bc4583821178ee7d..8d11d78897942db49565ab1fdf4ead3421d8406d 100644 (file)
@@ -42,6 +42,7 @@ import org.dbunit.dataset.filter.ExcludeTableFilter;
 import org.dbunit.dataset.filter.ITableFilterSimple;\r
 import org.dbunit.dataset.xml.FlatDtdDataSet;\r
 import org.dbunit.dataset.xml.FlatXmlDataSet;\r
+import org.dbunit.dataset.xml.FlatXmlWriter;\r
 import org.dbunit.dataset.xml.XmlDataSetWriter;\r
 import org.dbunit.ext.h2.H2DataTypeFactory;\r
 import org.dbunit.operation.DatabaseOperation;\r
@@ -251,6 +252,43 @@ public abstract class CdmIntegrationTest extends UnitilsJUnit4 {
             connection = getConnection();\r
             IDataSet actualDataSet = connection.createDataSet(tableNames);\r
             FlatXmlDataSet.write(actualDataSet, out);\r
+\r
+            \r
+        } catch (Exception e) {\r
+            logger.error(e);\r
+        } finally {\r
+            try {\r
+                connection.close();\r
+            } catch (SQLException sqle) {\r
+                logger.error(sqle);\r
+            }\r
+        }\r
+    }\r
+\r
+    /**\r
+     * Prints the named tables to an output stream, using dbunit's\r
+     * {@link org.dbunit.dataset.xml.FlatXmlWriter}.\r
+     *\r
+     * @see {@link #printDataSet(OutputStream)}\r
+     * @param out\r
+     * @param filter\r
+     */\r
+    public void printDataSet(OutputStream out, ITableFilterSimple filter) {\r
+        if (filter == null){\r
+               filter = new ExcludeTableFilter();\r
+        }\r
+        \r
+       IDatabaseConnection connection = null;\r
+\r
+        try {\r
+            connection = getConnection();\r
+//            FlatXmlDataSet.write(actualDataSet, out);\r
+\r
+            IDataSet dataSet = new DatabaseDataSet(connection, false, filter);\r
+\r
+            FlatXmlWriter writer = new FlatXmlWriter(out);\r
+            writer.write(dataSet);\r
+            \r
         } catch (Exception e) {\r
             logger.error(e);\r
         } finally {\r
@@ -262,6 +300,7 @@ public abstract class CdmIntegrationTest extends UnitilsJUnit4 {
         }\r
     }\r
 \r
+    \r
     /**\r
      * Prints a dtd to an output stream, using dbunit's\r
      * {@link org.dbunit.dataset.xml.FlatDtdDataSet}.\r