r321 - trunk/echobase-entities/src/test/java/fr/ifremer/echobase/entities
Author: tchemit Date: 2012-02-17 19:30:48 +0100 (Fri, 17 Feb 2012) New Revision: 321 Url: http://forge.codelutin.com/repositories/revision/echobase/321 Log: push back tests where they should be Modified: trunk/echobase-entities/src/test/java/fr/ifremer/echobase/entities/EntitiesUtilTest.java Modified: trunk/echobase-entities/src/test/java/fr/ifremer/echobase/entities/EntitiesUtilTest.java =================================================================== --- trunk/echobase-entities/src/test/java/fr/ifremer/echobase/entities/EntitiesUtilTest.java 2012-02-16 23:50:49 UTC (rev 320) +++ trunk/echobase-entities/src/test/java/fr/ifremer/echobase/entities/EntitiesUtilTest.java 2012-02-17 18:30:48 UTC (rev 321) @@ -24,15 +24,25 @@ package fr.ifremer.echobase.entities; import com.google.common.collect.Lists; +import com.google.common.collect.Sets; import fr.ifremer.echobase.entities.data.Voyage; import fr.ifremer.echobase.entities.references.Mission; import junit.framework.Assert; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.junit.Test; +import org.nuiton.topia.TopiaException; import org.nuiton.topia.persistence.TopiaEntity; +import org.nuiton.topia.persistence.TopiaEntityEnum; +import org.nuiton.topia.replication.TopiaReplicationModelBuilder; +import org.nuiton.topia.replication.model.ReplicationModel; +import org.nuiton.topia.replication.model.ReplicationNode; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collection; import java.util.List; +import java.util.Set; /** * To test the class {@link EntitiesUtil}. @@ -42,6 +52,9 @@ */ public class EntitiesUtilTest { + /** Logger. */ + private static final Log log = LogFactory.getLog(EntitiesUtilTest.class); + @Test public void getReferenceTypes() { @@ -110,6 +123,91 @@ } Assert.assertEquals(expectedTypes.size(), types.size()); } + + @Test + public void testGetReferentielCopyModel() throws TopiaException { + + EchoBaseEntityEnum[] types = EntitiesUtil.getReferenceTypesForCopy(); + Set<TopiaEntityEnum> dones = Sets.newHashSet(); + + ReplicationModel model = new ReplicationModel(types, false); + new TopiaReplicationModelBuilder().initModel(model, false); + List<ReplicationNode> order = model.getOrder(); + + StringBuilder buffer = new StringBuilder(); + for (ReplicationNode node : order) { + TopiaEntityEnum type = node.getContract(); + Assert.assertTrue(type + " was already treated.", dones.add(type)); + Collection<ReplicationNode> dependencies = node.getDependencies().values(); + for (ReplicationNode dependency : node.getDependencies().values()) { + TopiaEntityEnum dependencyType = dependency.getContract(); + Assert.assertTrue(dependencyType + + " was detected as a dependency of node " + + type + " but was not still registred", + dones.contains(dependencyType)); + } + Collection<ReplicationNode> assocations = node.getAssociations().values(); + for (ReplicationNode assocation : assocations) { + TopiaEntityEnum assocationType = assocation.getContract(); + Assert.assertTrue(assocationType + + " was detected as a association of node " + + type + " but was not still registred", + dones.contains(assocationType)); + } + buffer.append('\n'); + buffer.append(type); + buffer.append(" - "); + buffer.append(dependencies); + buffer.append(" - "); + buffer.append(assocations); + } + if (log.isInfoEnabled()) { + log.info(buffer.toString()); + } + } + + @Test + public void testGetDataCopyModel() throws TopiaException { + + EchoBaseEntityEnum[] types = EntitiesUtil.getDataTypesForCopy(); + Set<TopiaEntityEnum> dones = Sets.newHashSet(); + + ReplicationModel model = new ReplicationModel(types, false); + new TopiaReplicationModelBuilder().initModel(model, false); + List<ReplicationNode> order = model.getOrder(); + + StringBuilder buffer = new StringBuilder(); + for (ReplicationNode node : order) { + TopiaEntityEnum type = node.getContract(); + Assert.assertTrue(type + " was already treated.", dones.add(type)); + Collection<ReplicationNode> dependencies = node.getDependencies().values(); + for (ReplicationNode dependency : node.getDependencies().values()) { + TopiaEntityEnum dependencyType = dependency.getContract(); + Assert.assertTrue(dependencyType + + " was detected as a dependency of node " + + type + " but was not still registred", + dones.contains(dependencyType)); + } + Collection<ReplicationNode> assocations = node.getAssociations().values(); + for (ReplicationNode assocation : assocations) { + TopiaEntityEnum assocationType = assocation.getContract(); + Assert.assertTrue(assocationType + + " was detected as a association of node " + + type + " but was not still registred", + dones.contains(assocationType)); + } + buffer.append('\n'); + buffer.append(type); + buffer.append(" - "); + buffer.append(dependencies); + buffer.append(" - "); + buffer.append(assocations); + } + if (log.isInfoEnabled()) { + log.info(buffer.toString()); + } + } + /** * Used to get all contract of a package *
participants (1)
-
tchemit@users.forge.codelutin.com