- fixed the unnecessary creation of multiple references and taxon nodes in ABCD...
[cdmlib.git] / cdmlib-io / src / test / java / eu / etaxonomy / cdm / io / specimen / abcd206 / in / SpecimenImportConfiguratorTest.java
index e23c66b680bbed92a43b2c712da26b68aa084fde..0d145ef5b76bb735798f765e26f69b4a7b84261c 100644 (file)
@@ -13,7 +13,6 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;\r
 import static org.junit.Assert.assertTrue;\r
 \r
-import java.io.FileNotFoundException;\r
 import java.net.URISyntaxException;\r
 import java.net.URL;\r
 \r
@@ -24,14 +23,18 @@ import org.unitils.dbunit.annotation.DataSet;
 import org.unitils.spring.annotation.SpringBeanByName;\r
 import org.unitils.spring.annotation.SpringBeanByType;\r
 \r
+import eu.etaxonomy.cdm.api.service.ICommonService;\r
 import eu.etaxonomy.cdm.api.service.INameService;\r
 import eu.etaxonomy.cdm.api.service.IOccurrenceService;\r
+import eu.etaxonomy.cdm.api.service.ITaxonNodeService;\r
 import eu.etaxonomy.cdm.api.service.ITermService;\r
 import eu.etaxonomy.cdm.io.common.CdmApplicationAwareDefaultImport;\r
 import eu.etaxonomy.cdm.io.common.IImportConfigurator;\r
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
 import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;\r
+import eu.etaxonomy.cdm.model.taxon.TaxonNode;\r
 import eu.etaxonomy.cdm.test.integration.CdmTransactionalIntegrationTest;\r
+import eu.etaxonomy.cdm.test.unitils.CleanSweepInsertLoadStrategy;\r
 \r
 /**\r
  * @author a.mueller\r
@@ -51,101 +54,51 @@ public class SpecimenImportConfiguratorTest extends CdmTransactionalIntegrationT
        @SpringBeanByType\r
        ITermService termService;\r
 \r
+       @SpringBeanByType\r
+    ICommonService commonService;\r
+\r
+       @SpringBeanByType\r
+       ITaxonNodeService taxonNodeService;\r
+\r
 \r
        private IImportConfigurator configurator;\r
-       private IImportConfigurator configurator2;\r
 \r
        @Before\r
        public void setUp() {\r
-               String inputFile = "/eu/etaxonomy/cdm/io/specimen/abcd206/in/SpecimenImportConfiguratorTest-input.xml";\r
-               URL url = this.getClass().getResource(inputFile);\r
-               assertNotNull("URL for the test file '" + inputFile + "' does not exist", url);\r
-               try {\r
-                       configurator = Abcd206ImportConfigurator.NewInstance(url.toURI(), null,false);\r
-               } catch (URISyntaxException e) {\r
-                       e.printStackTrace();\r
-                       Assert.fail();\r
-               }\r
-               assertNotNull("Configurator could not be created", configurator);\r
-\r
-               inputFile = "/eu/etaxonomy/cdm/io/specimen/abcd206/in/ABCDImportTestCalvumPart1.xml";\r
-        url = this.getClass().getResource(inputFile);\r
+               String inputFile = "/eu/etaxonomy/cdm/io/specimen/abcd206/in/ABCDImportTestCalvumPart1.xml";\r
+        URL url = this.getClass().getResource(inputFile);\r
         assertNotNull("URL for the test file '" + inputFile + "' does not exist", url);\r
         try {\r
-            configurator2 = Abcd206ImportConfigurator.NewInstance(url.toURI(), null,false);\r
+            configurator = Abcd206ImportConfigurator.NewInstance(url.toURI(), null,false);\r
         } catch (URISyntaxException e) {\r
             e.printStackTrace();\r
             Assert.fail();\r
         }\r
-        assertNotNull("Configurator2 could not be created", configurator2);\r
-\r
-//        inputFile = "/eu/etaxonomy/cdm/io/specimen/abcd206/in/ABCDImportTestCalvumPart2.xml";\r
-//        url = this.getClass().getResource(inputFile);\r
-//        assertNotNull("URL for the test file '" + inputFile + "' does not exist", url);\r
-//        try {\r
-//            configurator3 = Abcd206ImportConfigurator.NewInstance(url.toURI(), null,false);\r
-//        } catch (URISyntaxException e) {\r
-//            e.printStackTrace();\r
-//            Assert.fail();\r
-//        }\r
-//        assertNotNull("Configurator3 could not be created", configurator3);\r
-\r
+        assertNotNull("Configurator2 could not be created", configurator);\r
        }\r
 \r
        @Test\r
        public void testInit() {\r
+           System.out.println("TEST INIT");\r
                assertNotNull("import instance should not be null", defaultImport);\r
                assertNotNull("nameService should not be null", nameService);\r
                assertNotNull("occurence service should not be null", occurrenceService);\r
                assertNotNull("term service should not be null", termService);\r
+               assertNotNull("common service should not be null", commonService);\r
        }\r
 \r
-//     @Test\r
-//     @DataSet( value="../../../BlankDataSet.xml")  //loadStrategy=CleanSweepInsertLoadStrategy.class\r
-//     public void testDoInvoke() {\r
-//             boolean result = defaultImport.invoke(configurator);\r
-//             assertTrue("Return value for import.invoke should be true", result);\r
-//             assertEquals("Number of TaxonNames is incorrect", 2, nameService.count(TaxonNameBase.class));\r
-//             assertEquals("Number of specimen is incorrect", 10, occurrenceService.count(DerivedUnitBase.class));\r
-//     }\r
-\r
        @Test\r
-    @DataSet( value="../../../BlankDataSet.xml")  //loadStrategy=CleanSweepInsertLoadStrategy.class\r
-    public void testDoInvoke2() {\r
-        boolean result = defaultImport.invoke(configurator2);\r
+    @DataSet( value="../../../BlankDataSet.xml", loadStrategy=CleanSweepInsertLoadStrategy.class)\r
+    public void testDoInvoke() {\r
+        boolean result = defaultImport.invoke(configurator);\r
         assertTrue("Return value for import.invoke should be true", result);\r
         assertEquals("Number of TaxonNames is incorrect", 2, nameService.count(TaxonNameBase.class));\r
+        /*\r
+         * Classification\r
+         * - Cichorium\r
+         *   - Cichorium calvum\r
+         */\r
+        assertEquals("Number of TaxonNodes is incorrect", 3, taxonNodeService.count(TaxonNode.class));\r
         assertEquals("Number of specimen and observation is incorrect", 10, occurrenceService.count(DerivedUnit.class));\r
-//        try {\r
-//            writeDbUnitDataSetFile(new String[] {\r
-//                    "TAXONBASE", "TAXONNAMEBASE",\r
-//                    "REFERENCE", "DESCRIPTIONELEMENTBASE", "DESCRIPTIONBASE",\r
-//                    "AGENTBASE", "CLASSIFICATION", "CLASSIFICATION_TAXONNODE", "TAXONNODE",\r
-//                    "HOMOTYPICALGROUP", "LANGUAGESTRING","COLLECTION","SPECIMENOROBSERVATIONBASE",\r
-//                    "ORIGINALSOURCEBASE", "GATHERINGEVENT", "DETERMINATIONEVENT",\r
-//                    "DERIVATIONEVENT", "SPECIMENOROBSERVATIONBASE_DERIVATIONEVENT",\r
-//                    "HIBERNATE_SEQUENCES",\r
-//             });\r
-//        } catch (FileNotFoundException e) {\r
-//            // TODO Auto-generated catch block\r
-//            e.printStackTrace();\r
-//        }\r
-//                File file = new File("./ABCDPart1Dataset.xml");\r
-//        FileOutputStream fos;\r
-//        try {\r
-//            fos = new FileOutputStream(file);\r
-//            printDataSet(fos);\r
-//            fos.close();\r
-//        } catch (FileNotFoundException e) {\r
-//            // TODO Auto-generated catch block\r
-//            e.printStackTrace();\r
-//        } catch (IOException e) {\r
-//            // TODO Auto-generated catch block\r
-//            e.printStackTrace();\r
-//        }\r
-\r
-               assertEquals("Number of TaxonNames is incorrect", 2, nameService.count(TaxonNameBase.class));\r
-               assertEquals("Number of specimen is incorrect", 10, occurrenceService.count(DerivedUnit.class));\r
-\r
     }\r
 }\r