minor
[cdmlib.git] / cdmlib-model / src / test / java / eu / etaxonomy / cdm / model / name / NonViralNameTest.java
index 5660e50a839d49e11378c55fe613799a8c408fa2..522a40330c5d4396e47b9514c53a186b43d965c3 100644 (file)
@@ -1,20 +1,29 @@
 /**\r
- * \r
- */\r
+* Copyright (C) 2007 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\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
 package eu.etaxonomy.cdm.model.name;\r
 \r
-import static org.junit.Assert.*;\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertNotNull;\r
+import junit.framework.Assert;\r
 \r
 import org.apache.log4j.Logger;\r
 import org.junit.After;\r
-import org.junit.AfterClass;\r
 import org.junit.Before;\r
 import org.junit.BeforeClass;\r
-import org.junit.Ignore;\r
 import org.junit.Test;\r
 \r
 import eu.etaxonomy.cdm.model.agent.Team;\r
+import eu.etaxonomy.cdm.model.common.DefaultTermInitializer;\r
 import eu.etaxonomy.cdm.model.reference.Article;\r
+import eu.etaxonomy.cdm.model.reference.Generic;\r
+import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
 import eu.etaxonomy.cdm.test.unit.EntityTestBase;\r
 \r
 /**\r
@@ -25,21 +34,13 @@ public class NonViralNameTest extends EntityTestBase {
        private static Logger logger = Logger.getLogger(NonViralNameTest.class);\r
 \r
        \r
-       NonViralName<NonViralName> nonViralName1;\r
-       NonViralName<NonViralName> nonViralName2;\r
+       NonViralName<?> nonViralName1;\r
+       NonViralName<?> nonViralName2;\r
        \r
-       /**\r
-        * @throws java.lang.Exception\r
-        */\r
        @BeforeClass\r
-       public static void setUpBeforeClass() throws Exception {\r
-       }\r
-\r
-       /**\r
-        * @throws java.lang.Exception\r
-        */\r
-       @AfterClass\r
-       public static void tearDownAfterClass() throws Exception {\r
+       public static void setUpBeforeClass() {\r
+               DefaultTermInitializer vocabularyStore = new DefaultTermInitializer();\r
+               vocabularyStore.initialize();\r
        }\r
 \r
        /**\r
@@ -47,8 +48,8 @@ public class NonViralNameTest extends EntityTestBase {
         */\r
        @Before\r
        public void setUp() throws Exception {\r
-               nonViralName1 = new NonViralName<NonViralName>();\r
-               nonViralName2 = new NonViralName<NonViralName>();\r
+               nonViralName1 = new BotanicalName();\r
+               nonViralName2 = new BotanicalName();\r
        }\r
 \r
        /**\r
@@ -94,7 +95,7 @@ public class NonViralNameTest extends EntityTestBase {
         */\r
        @Test\r
        public final void testNonViralNameRank() {\r
-               NonViralName nonViralName = new NonViralName<NonViralName>(Rank.GENUS());\r
+               NonViralName<?> nonViralName = NonViralName.NewInstance(Rank.GENUS());\r
                assertNotNull(nonViralName);\r
        }\r
 \r
@@ -104,9 +105,11 @@ public class NonViralNameTest extends EntityTestBase {
        @Test\r
        public final void testNonViralNameRankStringStringStringAgentINomenclaturalReferenceString() {\r
                Team agent = Team.NewInstance();\r
-               Article article = new Article();\r
-               NonViralName nonViralName = new NonViralName<NonViralName>(Rank.GENUS(), "Genus", "species", "infraSpec", agent, article, "mikro");\r
+               Article article = Article.NewInstance();\r
+               HomotypicalGroup homotypicalGroup = HomotypicalGroup.NewInstance();\r
+               NonViralName<?> nonViralName = new NonViralName(Rank.GENUS(), "Genus", "infraGen", "species", "infraSpec", agent, article, "mikro", homotypicalGroup);\r
                assertEquals("Genus", nonViralName.getGenusOrUninomial() );\r
+               assertEquals("infraGen", nonViralName.getInfraGenericEpithet());\r
                assertEquals("species", nonViralName.getSpecificEpithet() );\r
                assertEquals("infraSpec", nonViralName.getInfraSpecificEpithet());\r
                assertEquals(agent, nonViralName.getCombinationAuthorTeam() );\r
@@ -228,19 +231,45 @@ public class NonViralNameTest extends EntityTestBase {
                assertEquals(null, nonViralName2.getInfraSpecificEpithet());\r
        }\r
 \r
-       /**\r
-        * Test method for {@link eu.etaxonomy.cdm.model.name.NonViralName#getAuthorshipCache()}.\r
-        */\r
-       @Test\r
-       public final void testGetAuthorshipCache() {\r
-               logger.warn("Not yet implemented"); // TODO\r
-       }\r
-\r
        /**\r
         * Test method for {@link eu.etaxonomy.cdm.model.name.NonViralName#setAuthorshipCache(java.lang.String)}.\r
+        * Test method for {@link eu.etaxonomy.cdm.model.name.NonViralName#getAuthorshipCache()}.\r
+        * NOT FINISHED YET\r
         */\r
        @Test\r
-       public final void testSetAuthorshipCache() {\r
-               logger.warn("Not yet implemented"); // TODO\r
+       public final void testGetSetAuthorshipCache() {\r
+               String strTeam1 = "Team1";\r
+               String strTeam2 = "Team2";\r
+               String strTeam3 = "Team3";\r
+               ReferenceBase<?> ref1 = Generic.NewInstance();\r
+               ref1.setTitleCache("RefTitle");\r
+               \r
+               Team team1 = Team.NewInstance();\r
+               Team team2 = Team.NewInstance();\r
+               team1.setNomenclaturalTitle(strTeam1);\r
+               team2.setNomenclaturalTitle(strTeam2);\r
+               nonViralName1.setGenusOrUninomial("Abies");\r
+               nonViralName1.setSpecificEpithet("alba");\r
+               nonViralName1.setNomenclaturalReference(ref1);\r
+               Assert.assertEquals("Abies alba", nonViralName1.getNameCache());\r
+               \r
+               nonViralName1.setCombinationAuthorTeam(team1);\r
+               assertEquals(team1, nonViralName1.getCombinationAuthorTeam());\r
+               assertEquals(strTeam1, nonViralName1.getAuthorshipCache());\r
+               Assert.assertEquals("Abies alba "+strTeam1, nonViralName1.getTitleCache());\r
+               Assert.assertEquals("Abies alba "+strTeam1+ ", RefTitle", nonViralName1.getFullTitleCache());\r
+               \r
+               nonViralName1.setAuthorshipCache(strTeam2);\r
+               assertEquals(strTeam2, nonViralName1.getAuthorshipCache());\r
+               nonViralName1.setGenusOrUninomial("Calendula");\r
+               Assert.assertEquals("Calendula alba "+strTeam2, nonViralName1.getTitleCache());\r
+               \r
+               nonViralName1.setAuthorshipCache(strTeam3);\r
+               Assert.assertEquals("Calendula alba "+strTeam3, nonViralName1.getTitleCache());\r
+               \r
+               Assert.assertEquals("Calendula alba "+strTeam3+ ", RefTitle", nonViralName1.getFullTitleCache());\r
+               \r
+               nonViralName1.setCombinationAuthorTeam(null);\r
+               assertEquals(null, nonViralName1.getCombinationAuthorTeam());\r
        }\r
 }\r