From: <lh...@us...> - 2008-04-23 17:55:59
|
Revision: 34 http://tinytim.svn.sourceforge.net/tinytim/?rev=34&view=rev Author: lheuer Date: 2008-04-23 10:55:30 -0700 (Wed, 23 Apr 2008) Log Message: ----------- - JavaDocs - More topic merge tests Modified Paths: -------------- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AbstractTMAPIIndex.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationRolesIndexImpl.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationsIndexImpl.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/OccurrencesIndexImpl.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/ScopedObjectsIndexImpl.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicMapObjectsIndexImpl.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicNamesIndexImpl.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicsIndexImpl.java tinytim/trunk/src/main/java/org/tinytim/index/tmapi/VariantsIndexImpl.java tinytim/trunk/src/test/java/org/tinytim/TestTopicMerge.java Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AbstractTMAPIIndex.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AbstractTMAPIIndex.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AbstractTMAPIIndex.java 2008-04-23 17:55:30 UTC (rev 34) @@ -33,7 +33,7 @@ * * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ abstract class AbstractTMAPIIndex implements Index { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationRolesIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationRolesIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationRolesIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -31,10 +31,10 @@ import org.tmapi.index.core.AssociationRolesIndex; /** + * Implementation of the {@link org.tmapi.index.core.AssociationRolesIndex}; * - * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class AssociationRolesIndexImpl extends AbstractTMAPIIndex implements AssociationRolesIndex { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationsIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationsIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/AssociationsIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -34,7 +34,7 @@ * Implementation of the {@link org.tmapi.index.core.AssociationsIndex}; * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class AssociationsIndexImpl extends AbstractTMAPIIndex implements AssociationsIndex { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/OccurrencesIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/OccurrencesIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/OccurrencesIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -42,7 +42,7 @@ * Implementation of the {@link org.tmapi.index.core.OccurrencesIndex}. * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class OccurrencesIndexImpl extends AbstractTMAPIIndex implements OccurrencesIndex { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/ScopedObjectsIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/ScopedObjectsIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/ScopedObjectsIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -39,7 +39,7 @@ * {@link org.tmapi.index.core.ScopedObjectsIndex} implementation. * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class ScopedObjectsIndexImpl extends AbstractTMAPIIndex implements ScopedObjectsIndex { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicMapObjectsIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicMapObjectsIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicMapObjectsIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -29,10 +29,10 @@ import org.tmapi.index.core.TopicMapObjectsIndex; /** + * Implementation of the {@link org.tmapi.index.core.TopicMapObjectsIndex}; * - * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class TopicMapObjectsIndexImpl extends AbstractTMAPIIndex implements TopicMapObjectsIndex { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicNamesIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicNamesIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicNamesIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -38,10 +38,10 @@ import org.tmapi.index.core.TopicNamesIndex; /** + * Implementation of the {@link org.tmapi.index.core.TopicNamesIndex}; * - * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class TopicNamesIndexImpl extends AbstractTMAPIIndex implements TopicNamesIndex { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicsIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicsIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/TopicsIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -35,7 +35,7 @@ * {@link org.tmapi.index.core.TopicsIndex} implementation. * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class TopicsIndexImpl extends AbstractTMAPIIndex implements TopicsIndex { Modified: tinytim/trunk/src/main/java/org/tinytim/index/tmapi/VariantsIndexImpl.java =================================================================== --- tinytim/trunk/src/main/java/org/tinytim/index/tmapi/VariantsIndexImpl.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/main/java/org/tinytim/index/tmapi/VariantsIndexImpl.java 2008-04-23 17:55:30 UTC (rev 34) @@ -41,7 +41,7 @@ * Implementation of the {@link org.tmapi.index.core.VariantsIndex}. * * @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a> - * @version $Rev:$ - $Date:$ + * @version $Rev$ - $Date$ */ public class VariantsIndexImpl extends AbstractTMAPIIndex implements VariantsIndex { Modified: tinytim/trunk/src/test/java/org/tinytim/TestTopicMerge.java =================================================================== --- tinytim/trunk/src/test/java/org/tinytim/TestTopicMerge.java 2008-04-23 16:24:46 UTC (rev 33) +++ tinytim/trunk/src/test/java/org/tinytim/TestTopicMerge.java 2008-04-23 17:55:30 UTC (rev 34) @@ -26,6 +26,7 @@ import org.tmapi.core.AssociationRole; import org.tmapi.core.Locator; import org.tmapi.core.ModelConstraintException; +import org.tmapi.core.Occurrence; import org.tmapi.core.Topic; import org.tmapi.core.TopicName; import org.tmapi.core.Variant; @@ -193,4 +194,51 @@ Variant tmpVar = (Variant) tmpName.getVariants().iterator().next(); assertEquals("tiny", tmpVar.getValue()); } + + /** + * Tests if merging detects duplicate occurrences. + */ + public void testDuplicateSuppressionOccurrence() { + Topic topic1 = _tm.createTopic(); + Topic topic2 = _tm.createTopic(); + Occurrence occ1 = topic1.createOccurrence("tinyTiM", null, null); + Occurrence occ2 = topic2.createOccurrence("tinyTiM", null, null); + Occurrence occ3 = topic2.createOccurrence("tiny Topic Maps engine", null, null); + assertEquals(1, topic1.getOccurrences().size()); + assertTrue(topic1.getOccurrences().contains(occ1)); + assertEquals(2, topic2.getOccurrences().size()); + assertTrue(topic2.getOccurrences().contains(occ2)); + assertTrue(topic2.getOccurrences().contains(occ3)); + topic1.mergeIn(topic2); + assertEquals(2, topic1.getOccurrences().size()); + } + + /** + * Tests if merging detects duplicate occurrences and moves the + * item identifiers. + */ + public void testDuplicateSuppressionOccurrenceItemIdentifiers() { + Topic topic1 = _tm.createTopic(); + Topic topic2 = _tm.createTopic(); + Locator iid1 = _tm.createLocator("http://example.org/iid-1"); + Locator iid2 = _tm.createLocator("http://example.org/iid-2"); + Occurrence occ1 = topic1.createOccurrence("tinyTiM", null, null); + occ1.addSourceLocator(iid1); + assertTrue(occ1.getSourceLocators().contains(iid1)); + Occurrence occ2 = topic2.createOccurrence("tinyTiM", null, null); + occ2.addSourceLocator(iid2); + assertTrue(occ2.getSourceLocators().contains(iid2)); + assertEquals(1, topic1.getOccurrences().size()); + assertTrue(topic1.getOccurrences().contains(occ1)); + assertEquals(1, topic2.getOccurrences().size()); + assertTrue(topic2.getOccurrences().contains(occ2)); + topic1.mergeIn(topic2); + assertEquals(1, topic1.getOccurrences().size()); + Occurrence occ = (Occurrence) topic1.getOccurrences().iterator().next(); + assertEquals(2, occ.getSourceLocators().size()); + assertTrue(occ.getSourceLocators().contains(iid1)); + assertTrue(occ.getSourceLocators().contains(iid2)); + assertEquals("tinyTiM", occ.getValue()); + } + } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |