/**\r
* Copyright (C) 2007 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
\r
import org.junit.Assert;\r
import org.junit.Before;\r
+import org.junit.Ignore;\r
import org.junit.Test;\r
import org.unitils.dbunit.annotation.DataSet;\r
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.IReferenceService;\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.DerivedUnitBase;\r
+import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;\r
+import eu.etaxonomy.cdm.model.occurrence.FieldUnit;\r
+import eu.etaxonomy.cdm.model.reference.Reference;\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
* @created 29.01.2009\r
- * @version 1.0\r
*/\r
public class SpecimenImportConfiguratorTest extends CdmTransactionalIntegrationTest {\r
- \r
+\r
@SpringBeanByName\r
CdmApplicationAwareDefaultImport<?> defaultImport;\r
- \r
+\r
@SpringBeanByType\r
INameService nameService;\r
\r
@SpringBeanByType\r
IOccurrenceService occurrenceService;\r
\r
+ @SpringBeanByType\r
+ ITermService termService;\r
+\r
+ @SpringBeanByType\r
+ ICommonService commonService;\r
+\r
+ @SpringBeanByType\r
+ ITaxonNodeService taxonNodeService;\r
\r
+ @SpringBeanByType\r
+ private IReferenceService referenceService;\r
+\r
+\r
+\r
private IImportConfigurator configurator;\r
- \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
+ 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
+ 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", configurator);\r
+ \r
+ //test2\r
+ String inputFile2 = "/eu/etaxonomy/cdm/io/specimen/abcd206/in/Campanula_ABCD_import_3_taxa_11_units.xml";\r
+ URL url2 = this.getClass().getResource(inputFile2);\r
+ assertNotNull("URL for the test file '" + inputFile2 + "' does not exist", url2);\r
try {\r
- configurator = Abcd206ImportConfigurator.NewInstance(url.toURI(), null);\r
+ configurator2 = Abcd206ImportConfigurator.NewInstance(url2.toURI(), null,false);\r
} catch (URISyntaxException e) {\r
e.printStackTrace();\r
Assert.fail();\r
}\r
- assertNotNull("Configurator could not be created", configurator);\r
+ assertNotNull("Configurator could not be created", configurator2);\r
}\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
+ /*\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
+ }\r
\r
+\r
@Test\r
- @DataSet( loadStrategy=CleanSweepInsertLoadStrategy.class) //value="../../../BlankDataSet.xml")\r
- public void testDoInvoke() {\r
- boolean result = defaultImport.invoke(configurator);\r
+ @DataSet(value="SpecimenImportConfiguratorTest.doInvoke2.xml", loadStrategy=CleanSweepInsertLoadStrategy.class)\r
+ public void testDoInvoke2() {\r
+ boolean result = defaultImport.invoke(configurator2);\r
assertTrue("Return value for import.invoke should be true", result);\r
- \r
- assertEquals("Number of TaxonNames is incorrect", 11, nameService.count(TaxonNameBase.class));\r
- assertEquals("Number of specimen is incorrect", 10, occurrenceService.count(DerivedUnitBase.class));\r
-\r
- \r
+ assertEquals("Number of TaxonNames is incorrect", 4, nameService.count(TaxonNameBase.class));\r
+ /*\r
+ * 5 taxon nodes:\r
+ *\r
+ * Classification\r
+ * - Campanula\r
+ * - Campanula patula\r
+ * - Campanula tridentata\r
+ * - Campanula lactiflora\r
+ */\r
+ assertEquals("Number of TaxonNodes is incorrect", 5, taxonNodeService.count(TaxonNode.class));\r
+ assertEquals("Number of derived units is incorrect", 11, occurrenceService.count(DerivedUnit.class));\r
+ assertEquals("Number of field units is incorrect", 11, occurrenceService.count(FieldUnit.class));\r
+ assertEquals("Number of field units is incorrect", 1, referenceService.count(Reference.class));\r
}\r
-\r
}\r