Author: pwang
Date: 2012-05-30 17:49:00 -0700 (Wed, 30 May 2012)
New Revision: 29404

Added:
   
core3/impl/trunk/session-impl/integration-test/src/test/java/org/cytoscape/session/Cy263SimpleSessionLodingTest.java
   
core3/impl/trunk/session-impl/integration-test/src/test/resources/testData/session2x/v263SessionLarge.cys
Log:
Original creation

Added: 
core3/impl/trunk/session-impl/integration-test/src/test/java/org/cytoscape/session/Cy263SimpleSessionLodingTest.java
===================================================================
--- 
core3/impl/trunk/session-impl/integration-test/src/test/java/org/cytoscape/session/Cy263SimpleSessionLodingTest.java
                                (rev 0)
+++ 
core3/impl/trunk/session-impl/integration-test/src/test/java/org/cytoscape/session/Cy263SimpleSessionLodingTest.java
        2012-05-31 00:49:00 UTC (rev 29404)
@@ -0,0 +1,202 @@
+package org.cytoscape.session;
+
+import static org.junit.Assert.*;
+import java.awt.Color;
+import java.awt.Paint;
+import java.io.File;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Set;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyRow;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.presentation.property.BasicVisualLexicon;
+import org.cytoscape.view.presentation.property.LineTypeVisualProperty;
+import org.cytoscape.view.presentation.property.NodeShapeVisualProperty;
+import org.cytoscape.view.presentation.property.values.LineType;
+import org.cytoscape.view.presentation.property.values.NodeShape;
+import org.cytoscape.view.vizmap.VisualMappingFunction;
+import org.cytoscape.view.vizmap.VisualStyle;
+import org.cytoscape.view.vizmap.mappings.ContinuousMapping;
+import org.cytoscape.view.vizmap.mappings.DiscreteMapping;
+import org.cytoscape.view.vizmap.mappings.PassthroughMapping;
+import org.cytoscape.work.TaskIterator;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.junit.ExamReactorStrategy;
+import org.ops4j.pax.exam.junit.JUnit4TestRunner;
+import org.ops4j.pax.exam.spi.reactors.AllConfinedStagedReactorFactory;
+import org.cytoscape.model.CyTableUtil;
+import org.cytoscape.model.CyTable;
+
+/**
+ * Test for sample file in Cytoscape 2.6.3 distribution
+ * 
+ */
+@RunWith(JUnit4TestRunner.class)
+@ExamReactorStrategy(AllConfinedStagedReactorFactory.class)
+public class Cy263SimpleSessionLodingTest extends BasicIntegrationTest {
+
+       @Before
+       public void setup() throws Exception {
+               sessionFile = new 
File("./src/test/resources/testData/session2x/", "v263SessionLarge.cys");
+               checkBasicConfiguration();
+       }
+
+       @Test
+       public void testLoadSession() throws Exception {
+               final TaskIterator ti = 
openSessionTF.createTaskIterator(sessionFile);
+               tm.execute(ti);
+       }
+
+       @After
+       public void confirm() {
+               // test overall status of current session.
+               checkGlobalStatus();
+
+               checkVisualStyles();
+               
+               final Set<CyNetwork> networks = networkManager.getNetworkSet();
+               final Iterator<CyNetwork> itr = networks.iterator();
+
+               // get the parent network in the session
+               CyNetwork gdNetwork = null;
+               while (itr.hasNext()){
+                       CyNetwork network = itr.next();
+
+                       // Check title
+                       String title = network.getRow(network).get("name", 
String.class);
+                       if 
(title.equalsIgnoreCase("gene_disease_network4.txt")){
+                               gdNetwork = network;
+                               break;
+                       }
+               }               
+               
+               checkAttributes(gdNetwork);
+               checkNetwork(gdNetwork);
+       }
+
+       private void checkGlobalStatus() {
+               assertEquals(7, networkManager.getNetworkSet().size());
+               assertEquals(7, viewManager.getNetworkViewSet().size());
+
+               // Since this test runs in headless mode, this should be zero.
+               assertEquals(0, 
renderingEngineManager.getAllRenderingEngines().size());
+
+               assertEquals(42, tableManager.getAllTables(true).size());
+               assertEquals(21, tableManager.getAllTables(false).size());
+
+       }
+
+       private void checkVisualStyles() {
+
+               Set<VisualStyle> vsSet = vmm.getAllVisualStyles();
+               
+               VisualStyle gda_geneCentric = null;
+               VisualStyle gda_diseaseCentric = null;
+               VisualStyle gda_wholeNetwork = null;
+               
+               Iterator<VisualStyle> it = vsSet.iterator();
+               
+               while (it.hasNext()){
+                       VisualStyle vs = it.next();
+                       if (vs.getTitle().equalsIgnoreCase("gda_geneCentric")){
+                               gda_geneCentric = vs;
+                       }
+                       if 
(vs.getTitle().equalsIgnoreCase("gda_diseaseCentric")){
+                               gda_diseaseCentric = vs;
+                       }
+                       if (vs.getTitle().equalsIgnoreCase("gda_wholeNetwork")){
+                               gda_wholeNetwork = vs;
+                       }
+               }
+               
+               assertNotNull(gda_geneCentric);
+               assertNotNull(gda_diseaseCentric);
+               assertNotNull(gda_wholeNetwork);
+
+               checkVisualStyle(gda_wholeNetwork);             
+       }
+       
+       
+       private void checkVisualStyle(final VisualStyle style) {
+
+               //              Collection<VisualMappingFunction<?, ?>> 
mappings = style.getAllVisualMappingFunctions();
+               //              assertEquals(4, mappings.size());
+
+               // Test defaults
+               NodeShape defaultShape = 
style.getDefaultValue(BasicVisualLexicon.NODE_SHAPE);
+               Paint nodeColor = 
style.getDefaultValue(BasicVisualLexicon.NODE_FILL_COLOR);
+               Integer fontSize = 
style.getDefaultValue(BasicVisualLexicon.NODE_LABEL_FONT_SIZE);
+               Integer transparency = 
style.getDefaultValue(BasicVisualLexicon.NODE_TRANSPARENCY);
+               Double w = style.getDefaultValue(BasicVisualLexicon.NODE_WIDTH);
+               Double h = 
style.getDefaultValue(BasicVisualLexicon.NODE_HEIGHT);
+
+               Paint edgeLabelColor = 
style.getDefaultValue(BasicVisualLexicon.EDGE_LABEL_COLOR);
+
+               assertEquals(NodeShapeVisualProperty.RECTANGLE, defaultShape);
+               assertEquals(Color.WHITE, nodeColor);
+               assertEquals(Integer.valueOf(12), fontSize);
+               assertEquals(Integer.valueOf(255), transparency);
+               assertEquals(Double.valueOf(70), w);
+               assertEquals(Double.valueOf(30), h);
+
+               // Check each mapping
+               VisualMappingFunction<?, String> nodeLabelMapping = style
+                               
.getVisualMappingFunction(BasicVisualLexicon.NODE_LABEL);
+               VisualMappingFunction<?, String> edgeLabelMapping = style
+                               
.getVisualMappingFunction(BasicVisualLexicon.EDGE_LABEL);
+
+               assertTrue(nodeLabelMapping instanceof PassthroughMapping);
+
+               assertEquals("Name", nodeLabelMapping.getMappingColumnName());
+               assertEquals(String.class, 
nodeLabelMapping.getMappingColumnType());
+
+               // Node Color mapping
+               VisualMappingFunction<?, Paint> nodeColorMapping = style
+                               
.getVisualMappingFunction(BasicVisualLexicon.NODE_FILL_COLOR);
+               assertTrue(nodeColorMapping instanceof DiscreteMapping);
+               assertEquals("NodeType", 
nodeColorMapping.getMappingColumnName());
+               assertEquals(String.class, 
nodeColorMapping.getMappingColumnType());
+
+               VisualMappingFunction<?, ?> edgeWidthMapping = style
+                               
.getVisualMappingFunction(BasicVisualLexicon.EDGE_WIDTH);
+               assertTrue(edgeWidthMapping instanceof ContinuousMapping);
+               assertEquals("AsssociationCount", 
edgeWidthMapping.getMappingColumnName());
+       }
+
+       private void checkAttributes(final CyNetwork network){
+               
+               CyTable nodeTable = network.getDefaultNodeTable();
+               
+               // check attribute name
+               
assertTrue(CyTableUtil.getColumnNames(nodeTable).contains("NodeType"));
+               
assertTrue(CyTableUtil.getColumnNames(nodeTable).contains("OMIM_ID"));
+               
+               // check attribute values               
+               Object[] rows1 = nodeTable.getMatchingRows("Name", 
"Obesity").toArray();
+               CyRow row1 = (CyRow)rows1[0];           
+               assertEquals("Disease",row1.get("NodeType", String.class));     
+               assertEquals(null,row1.get("OMIM_ID", String.class));   
+
+               Object[] rows2 = nodeTable.getMatchingRows("Name", 
"ACE").toArray();
+               CyRow row2 = (CyRow)rows2[0];           
+               assertEquals("Gene",row2.get("NodeType", String.class));        
+               assertEquals(106180,row2.get("OMIM_ID", 
Integer.class).intValue());                     
+       }
+
+       
+       private void checkNetwork(final CyNetwork network) {
+               assertEquals(4133, network.getNodeCount());
+               assertEquals(14558, network.getEdgeCount());
+
+               // Selection state
+               Collection<CyRow> selectedNodes = 
network.getDefaultNodeTable().getMatchingRows(CyNetwork.SELECTED, true);
+               Collection<CyRow> selectedEdges = 
network.getDefaultEdgeTable().getMatchingRows(CyNetwork.SELECTED, true);
+               assertEquals(0, selectedNodes.size());
+               assertEquals(0, selectedEdges.size());
+       }
+}

Added: 
core3/impl/trunk/session-impl/integration-test/src/test/resources/testData/session2x/v263SessionLarge.cys
===================================================================
(Binary files differ)


Property changes on: 
core3/impl/trunk/session-impl/integration-test/src/test/resources/testData/session2x/v263SessionLarge.cys
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to