diff options
author | nirmal070125 <nirmal070125@13f79535-47bb-0310-9956-ffa450edef68> | 2011-08-06 18:20:14 +0000 |
---|---|---|
committer | nirmal070125 <nirmal070125@13f79535-47bb-0310-9956-ffa450edef68> | 2011-08-06 18:20:14 +0000 |
commit | 94ef23a1a25f056e0bf8f96d4bb97312ebc86f8b (patch) | |
tree | 826dcc8ec895387eecec1be765c0b73f2f02d7b1 /collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/test/layout/LayoutBuilderTest.java | |
parent | 3b3beac5adfa1995a9a4c92fd92a881f024be08e (diff) |
added support to inclusion, added a test case to demonstrate layout algorithm
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1154566 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rwxr-xr-x | collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/test/layout/LayoutBuilderTest.java | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/test/layout/LayoutBuilderTest.java b/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/test/layout/LayoutBuilderTest.java new file mode 100755 index 0000000000..3c3e96c0f2 --- /dev/null +++ b/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/test/layout/LayoutBuilderTest.java @@ -0,0 +1,144 @@ +package org.apache.tuscany.sca.test.layout; + +import static org.junit.Assert.*; +import junit.framework.Assert; + +import org.apache.tuscany.sca.impl.layout.ComponentEntity; +import org.apache.tuscany.sca.impl.layout.CompositeEntity; +import org.apache.tuscany.sca.impl.layout.Entity; +import org.apache.tuscany.sca.impl.layout.LayoutBuilder; +import org.junit.Before; +import org.junit.Test; + +public class LayoutBuilderTest { + + LayoutBuilder lb; + Entity[] ents; + Entity parent; + int[][] conns; + + @Before + public void setUp() throws Exception { + parent = new CompositeEntity("composite"); + parent.setX(200); + parent.setY(100); + + ents = new Entity[5]; + for(int i=0; i<ents.length ;i++){ + ents[i] = new ComponentEntity(); + ents[i].setId(i); + ents[i].setParent(parent); + } + + + } + + @Test + public void testPlaceEntities() throws Exception { + //setUp(); + Assert.assertEquals(5, ents.length); + Assert.assertEquals(200, ents[0].getStartPosition()); + + conns = new int[5][5]; + for(int i=0; i<conns.length ;i++){ + for(int j=0; j<conns.length ;j++){ + //int x = Math.getExponent(Math.random()); + if(i==j-1) + conns[i][j] = 1; + else + conns[i][j] = 0; + } + } + + lb = new LayoutBuilder(ents, conns); + + ents = lb.placeEntities(); + + Assert.assertEquals(5, ents.length); + Assert.assertEquals(0, lb.getStartEnt().getId()); + + Assert.assertEquals(0, ents[0].getLevel()); + Assert.assertEquals(0, ents[1].getLevel()); + Assert.assertEquals(0, ents[2].getLevel()); + Assert.assertEquals(0, ents[3].getLevel()); + Assert.assertEquals(0, ents[4].getLevel()); + + Assert.assertEquals(0, ents[0].getLane()); + Assert.assertEquals(1, ents[1].getLane()); + Assert.assertEquals(2, ents[2].getLane()); + Assert.assertEquals(3, ents[3].getLane()); + Assert.assertEquals(4, ents[4].getLane()); + + + } + + @Test + public void testPlaceEntities1() throws Exception { + + conns = new int[5][5]; + for(int i=0; i<conns.length ;i++){ + for(int j=0; j<conns.length ;j++){ + //int x = Math.getExponent(Math.random()); + if(i==j-1 || i==j-4) + conns[i][j] = 1; + else + conns[i][j] = 0; + } + } + conns[3][4] = 0; + + lb = new LayoutBuilder(ents, conns); + + ents = lb.placeEntities(); + + Assert.assertEquals(5, ents.length); + Assert.assertEquals(0, lb.getStartEnt().getId()); + + Assert.assertEquals(0, ents[0].getLevel()); + Assert.assertEquals(0, ents[1].getLevel()); + Assert.assertEquals(0, ents[2].getLevel()); + Assert.assertEquals(0, ents[3].getLevel()); + Assert.assertEquals(1, ents[4].getLevel()); + + Assert.assertEquals(0, ents[0].getLane()); + Assert.assertEquals(1, ents[1].getLane()); + Assert.assertEquals(2, ents[2].getLane()); + Assert.assertEquals(3, ents[3].getLane()); + Assert.assertEquals(1, ents[4].getLane()); + + } + + @Test + public void testPlaceEntities2() throws Exception { + + conns = new int[5][5]; + for(int i=0; i<conns.length ;i++){ + for(int j=0; j<conns.length ;j++){ + if(i*j>2 && i*j<=6) + conns[i][j] = 1; + else + conns[i][j] = 0; + } + } + + lb = new LayoutBuilder(ents, conns); + + ents = lb.placeEntities(); + + Assert.assertEquals(5, ents.length); + Assert.assertEquals(1, lb.getStartEnt().getId()); + + Assert.assertEquals(2, ents[0].getLevel()); + Assert.assertEquals(0, ents[1].getLevel()); + Assert.assertEquals(0, ents[2].getLevel()); + Assert.assertEquals(0, ents[3].getLevel()); + Assert.assertEquals(1, ents[4].getLevel()); + + Assert.assertEquals(0, ents[0].getLane()); + Assert.assertEquals(0, ents[1].getLane()); + Assert.assertEquals(2, ents[2].getLane()); + Assert.assertEquals(1, ents[3].getLane()); + Assert.assertEquals(1, ents[4].getLane()); + + } +} |