package eu.etaxonomy.cdm.strategy.cache.reference;\r
\r
\r
-import junit.framework.Assert;\r
-\r
import org.apache.log4j.Logger;\r
+import org.junit.Assert;\r
import org.junit.Before;\r
import org.junit.BeforeClass;\r
import org.junit.Test;\r
\r
import eu.etaxonomy.cdm.model.agent.Team;\r
-import eu.etaxonomy.cdm.model.common.TimePeriod;\r
import eu.etaxonomy.cdm.model.reference.IBook;\r
import eu.etaxonomy.cdm.model.reference.IGeneric;\r
import eu.etaxonomy.cdm.model.reference.Reference;\r
import eu.etaxonomy.cdm.model.reference.ReferenceFactory;\r
+import eu.etaxonomy.cdm.strategy.parser.TimePeriodParser;\r
\r
/**\r
* @author a.mueller\r
\r
private static IGeneric generic1;\r
private static Team team1;\r
- private static GenericDefaultCacheStrategy<Reference> defaultStrategy;\r
+ private static GenericDefaultCacheStrategy defaultStrategy;\r
private static final String detail1 = "55";\r
\r
/**\r
generic1.setTitleCache(null); //reset cache in case aspectJ is not enabled\r
Assert.assertEquals("Unexpected title cache.", "in Authorteam, My book title: 2", generic1.getNomenclaturalCitation("2"));\r
}\r
+\r
+ @Test\r
+ public void testGetInRefWithoutInRef(){\r
+ generic1.setTitle("My generic title");\r
+ generic1.setAuthorTeam(team1);\r
+ generic1.setTitleCache(null); //reset cache in case aspectJ is not enabled\r
+ Assert.assertEquals("Unexpected title cache.", "My generic title: 2", generic1.getNomenclaturalCitation("2"));\r
+ }\r
+ \r
+ @Test\r
+ public void testGetTitleCache2(){\r
+ generic1.setTitle("Part Title");\r
+ IBook book1 = ReferenceFactory.newBook();\r
+ book1.setTitle("My book title");\r
+ book1.setAuthorTeam(team1);\r
+ Reference<?> inRef = (Reference<?>)book1;\r
+ generic1.setInReference(inRef);\r
+ generic1.setTitleCache(null); //reset cache in case aspectJ is not enabled\r
+ Assert.assertEquals("Unexpected title cache.", "Part Title in Authorteam, My book title", generic1.getTitleCache());\r
+ }\r
+\r
+ @Test\r
+ public void testGetTitleCacheWithoutInRef(){\r
+ generic1.setTitle("My generic title");\r
+ generic1.setAuthorTeam(team1);\r
+ generic1.setTitleCache(null); //reset cache in case aspectJ is not enabled\r
+ Assert.assertEquals("Unexpected title cache.", "Authorteam, My generic title", generic1.getTitleCache());\r
+ }\r
+ \r
+ @Test\r
+ public void testAuthorOnly(){\r
+ generic1.setAuthorTeam(team1);\r
+ generic1.setTitleCache(null); //reset cache in case aspectJ is not enabled\r
+ Assert.assertEquals("Unexpected title cache.", "Authorteam", generic1.getTitleCache());\r
+ Assert.assertEquals("", generic1.getNomenclaturalCitation(null));\r
+ }\r
+ \r
+ @Test\r
+ public void testYearAndAuthorOnly(){\r
+ generic1.setAuthorTeam(team1);\r
+ generic1.setDatePublished(TimePeriodParser.parseString("1792"));\r
+ generic1.setTitleCache(null); //reset cache in case aspectJ is not enabled\r
+ Assert.assertEquals("Unexpected title cache.", "Authorteam, 1792", generic1.getTitleCache()); \r
+ Assert.assertEquals("1792", generic1.getNomenclaturalCitation(null));\r
+ }\r
+\r
+\r
\r
}\r