refactoring
authorAndreas Kohlbecker <a.kohlbecker@bgbm.org>
Fri, 23 Nov 2012 13:04:20 +0000 (13:04 +0000)
committerAndreas Kohlbecker <a.kohlbecker@bgbm.org>
Fri, 23 Nov 2012 13:04:20 +0000 (13:04 +0000)
cdmlib-io/SDDImportExportTest.sdd.xml
cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/sdd/in/SDDImportExportTest.java

index 3bd9ed0880cf0046b4c1b48b38f25af84d6e2cff..7009362f3129f7d45d4fa4b82dee0f8be14a081f 100644 (file)
                     <Citation location="p. 30" ref="p1"/>
                 </Scope>
                 <SummaryData>
+                    <Categorical ref="c3">
+                        <State ref="s3"/>
+                        <State ref="s4"/>
+                    </Categorical>
                     <Quantitative ref="c2">
                         <Measure type="N" value="20.0"/>
                         <Measure type="SD" value="1.3"/>
                         <Measure type="Min" value="2.3"/>
-                        <Measure type="Mean" value="5.1"/>
                         <Measure type="Max" value="7.9"/>
+                        <Measure type="Mean" value="5.1"/>
                     </Quantitative>
-                    <Categorical ref="c3">
-                        <State ref="s3"/>
-                        <State ref="s4"/>
-                    </Categorical>
-                    <Categorical ref="c1">
-                        <State ref="s1"/>
-                    </Categorical>
                     <TextChar ref="text29">
                         <Content>Free form text</Content>
                     </TextChar>
+                    <Categorical ref="c1">
+                        <State ref="s1"/>
+                    </Categorical>
                 </SummaryData>
             </CodedDescription>
         </CodedDescriptions>
index 1bbd87ae759889ad684f7714926234f6af1a10bd..2a04cab8fb19f5132bf66acbd2c21ade337012d3 100644 (file)
@@ -1,9 +1,9 @@
 // $Id$\r
 /**\r
 * Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
+* European Distributed Institute of Taxonomy\r
 * http://www.e-taxonomy.eu\r
-* \r
+*\r
 * The contents of this file are subject to the Mozilla Public License Version 1.1\r
 * See LICENSE.TXT at the top of this package for the full license terms.\r
 */\r
@@ -51,109 +51,116 @@ import eu.etaxonomy.cdm.test.integration.CdmTransactionalIntegrationTest;
  */\r
 public class SDDImportExportTest extends CdmTransactionalIntegrationTest {\r
 \r
-       @SpringBeanByType\r
+    @SpringBeanByType\r
     SDDImport sddImport;\r
 \r
     private SDDImportConfigurator importConfigurator;\r
-    \r
-       @SpringBeanByType\r
-       SDDCdmExporter sddCdmExporter;\r
-       \r
-       @SpringBeanByType\r
-       INameService nameService;\r
-       \r
-       @SpringBeanByType\r
-       ITaxonService taxonService;\r
-       \r
-       @SpringBeanByType\r
-       IClassificationService classificationService;\r
-       \r
-       private IExportConfigurator exportConfigurator;\r
+\r
+    @SpringBeanByType\r
+    SDDCdmExporter sddCdmExporter;\r
+\r
+    @SpringBeanByType\r
+    INameService nameService;\r
+\r
+    @SpringBeanByType\r
+    ITaxonService taxonService;\r
+\r
+    @SpringBeanByType\r
+    IClassificationService classificationService;\r
+\r
+    private IExportConfigurator exportConfigurator;\r
 \r
     @Before\r
     public void setUp() throws URISyntaxException, MalformedURLException {\r
+        // input data\r
         URL url = this.getClass().getResource("/eu/etaxonomy/cdm/io/sdd/SDDImportTest-input.xml");\r
-               URI uri = url.toURI();\r
-//             URI     uri = URI.create("file:///C:/localCopy/Data/xper/Cichorieae-DA2.sdd.xml");\r
+        URI uri = url.toURI();\r
+\r
+        // export data\r
+        String exporturlStr = "SDDImportExportTest.sdd.xml";\r
+        File f = new File(exporturlStr);\r
+        exporturlStr = f.toURI().toURL().toString();\r
+        logger.debug("LORNA the exporturlStr is " + exporturlStr);\r
+\r
+        // URI.create("file:///C:/localCopy/Data/xper/Cichorieae-DA2.sdd.xml");\r
+\r
         Assert.assertNotNull(url);\r
-        \r
-        logger.setLevel(Level.DEBUG);\r
-               //ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance("192.168.2.10", "cdm_test_niels2", 3306, "edit", password, code);\r
-        String dataSourceName = "test";\r
-               String password = CdmUtils.readInputLine("Password: ");\r
-               ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance("127.0.0.1", "cdm_test", 3306, "ljm", password, NomenclaturalCode.ICBN);\r
-               //ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance("160.45.63.201", "cdm_test", 3306, "edit", password, NomenclaturalCode.ICBN);\r
-               boolean connectionAvailable;\r
-               try {\r
-                       connectionAvailable = dataSource.testConnection();\r
-                       logger.debug("LORNA connection avaiable " + connectionAvailable);\r
-                       Assert.assertTrue("Testdatabase is not available", connectionAvailable);\r
-                       \r
-               } catch (ClassNotFoundException e1) {\r
-                       // TODO Auto-generated catch block\r
-                       e1.printStackTrace();\r
-               } catch (SQLException e1) {\r
-                       // TODO Auto-generated catch block\r
-                       e1.printStackTrace();\r
-               }\r
-               \r
-               CdmPersistentDataSource.save(dataSourceName, dataSource);\r
-\r
-               try {\r
-                       CdmPersistentDataSource loadedDataSource = CdmPersistentDataSource.NewInstance(dataSourceName);\r
-//                     CdmApplicationController.NewInstance(loadedDataSource, DbSchemaValidation.CREATE);\r
 \r
-                       NomenclaturalCode loadedCode = loadedDataSource.getNomenclaturalCode();\r
-                       \r
-                       Assert.assertEquals(NomenclaturalCode.ICBN, loadedCode);\r
-                       \r
-                       //importConfigurator = SDDImportConfigurator.NewInstance(uri, null);\r
-                       //importConfigurator = SDDImportConfigurator.NewInstance(uri, dataSource);\r
-                       importConfigurator = SDDImportConfigurator.NewInstance(uri, loadedDataSource);\r
-                       \r
-                       String exporturlStr ="SDDImportExportTest.sdd.xml";\r
-                       \r
-                       File f =  new File(exporturlStr);\r
-\r
-                       exporturlStr  = f.toURI().toURL().toString();\r
-                       logger.debug("LORNA the exporturlStr is " + exporturlStr);\r
-                       //exportConfigurator = SDDExportConfigurator.NewInstance(null, exporturlStr);\r
-                       exportConfigurator = SDDExportConfigurator.NewInstance(loadedDataSource, exporturlStr);\r
-                       //exportConfigurator = SDDExportConfigurator.NewInstance(null, "file:///C:/Users/l.morris/workspace/cdmlib/cdmlib-io/SDDImportExportTest.sdd.xml");\r
-                       //exportConfigurator = SDDExportConfigurator.NewInstance(null, "SDDImportExportTest.sdd.xml", "file:/C:/Users/l.morris/workspace/cdmlib/cdmlib-io");\r
-          \r
-                       CdmPersistentDataSource.delete(loadedDataSource);//lorna - where should i put this\r
-\r
-               } catch (DataSourceNotFoundException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-               \r
-                }\r
+        CdmPersistentDataSource loadedDataSource = null;\r
+\r
+        /*\r
+         * enable below line if you wish to use a custom data source\r
+         */\r
+//        loadedDataSource = customDataSource();\r
+\r
+        importConfigurator = SDDImportConfigurator.NewInstance(uri, loadedDataSource);\r
+        exportConfigurator = SDDExportConfigurator.NewInstance(loadedDataSource, exporturlStr);\r
+\r
+    }\r
+\r
 \r
     @Test\r
-    public void testInit() {\r
+    public void testDoInvoke() {\r
+\r
         assertNotNull("sddImport should not be null", sddImport);\r
         assertNotNull("sddCdmExporter should not be null", sddCdmExporter);\r
-    }\r
 \r
-    @Test\r
-       public void testDoInvoke() {\r
-       \r
-       //printDataSet(System.err, new String[]{"DEFINEDTERMBASE"});\r
-       \r
+        setDefaultRollback(false);\r
+\r
+        //printDataSet(System.err, new String[]{"DEFINEDTERMBASE"});\r
+\r
         sddImport.doInvoke(new SDDImportState(importConfigurator));\r
-       \r
-        logger.setLevel(Level.WARN);\r
+\r
+        logger.setLevel(Level.DEBUG);\r
         commitAndStartNewTransaction(new String[]{"DEFINEDTERMBASE"});\r
         logger.setLevel(Level.DEBUG);\r
-        \r
+\r
         logger.debug("Name count: " + (nameService.count(null)));\r
         logger.debug("Classification count: " + (classificationService.count(Classification.class)));\r
         logger.debug("Taxon count: " + (taxonService.count(Taxon.class)));\r
-        \r
+\r
         //sddCdmExporter.doInvoke(null);\r
-               sddCdmExporter.doInvoke(new SDDExportState((SDDExportConfigurator) exportConfigurator));\r
+        sddCdmExporter.doInvoke(new SDDExportState((SDDExportConfigurator) exportConfigurator));\r
         assertEquals("Number of TaxonNames should be 1", 1, nameService.count(null));\r
     }\r
+\r
+    /**\r
+     * @param loadedDataSource\r
+     * @return\r
+     */\r
+    private CdmPersistentDataSource customDataSource() {\r
+\r
+         CdmPersistentDataSource loadedDataSource = null;\r
+        //ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance("192.168.2.10", "cdm_test_niels2", 3306, "edit", password, code);\r
+        String dataSourceName = "test";\r
+        String password = CdmUtils.readInputLine("Password: ");\r
+        ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance("127.0.0.1", "cdm_test", 3306, "ljm", password, NomenclaturalCode.ICBN);\r
+        //ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance("160.45.63.201", "cdm_test", 3306, "edit", password, NomenclaturalCode.ICBN);\r
+        boolean connectionAvailable;\r
+        try {\r
+            connectionAvailable = dataSource.testConnection();\r
+            logger.debug("LORNA connection avaiable " + connectionAvailable);\r
+            Assert.assertTrue("Testdatabase is not available", connectionAvailable);\r
+\r
+        } catch (ClassNotFoundException e1) {\r
+            // TODO Auto-generated catch block\r
+            e1.printStackTrace();\r
+        } catch (SQLException e1) {\r
+            // TODO Auto-generated catch block\r
+            e1.printStackTrace();\r
+        }\r
+\r
+        CdmPersistentDataSource.save(dataSourceName, dataSource);\r
+        try {\r
+            loadedDataSource = CdmPersistentDataSource.NewInstance(dataSourceName);\r
+//                     CdmApplicationController.NewInstance(loadedDataSource, DbSchemaValidation.CREATE);\r
+            NomenclaturalCode loadedCode = loadedDataSource.getNomenclaturalCode();\r
+\r
+            Assert.assertEquals(NomenclaturalCode.ICBN, loadedCode);\r
+        } catch (DataSourceNotFoundException e) {\r
+            // TODO Auto-generated catch block\r
+            e.printStackTrace();\r
+        }\r
+        return loadedDataSource;\r
+    }\r
 }\r