Index: trunk/test/tmcsim/cadsimulator/CADSimulatorFixture.java
===================================================================
--- trunk/test/tmcsim/cadsimulator/CADSimulatorFixture.java	(revision 19)
+++ trunk/test/tmcsim/cadsimulator/CADSimulatorFixture.java	(revision 26)
@@ -34,5 +34,5 @@
             + "ATMSProperties         = empty.txt\n"
             + "MediaProperties        = empty.txt\n";
-    static final String paramicsData = "ParamicsCommHost       = 192.168.251.45\n"
+    static final String configpData = "ParamicsCommHost = 192.168.251.45\n"
             + "ParamicsCommPort       = 4450\n"
             + "IncidentUpdateInterval = 30\n"
@@ -42,4 +42,6 @@
             + "CameraStatusInterval   = 30\n"
             + "CameraStatusFile       = camera_status.xml\n";
+    static final String paramConfig    = "SocketPort=4450\n"
+            +"WorkingDirectory=.\nGUIvisible=false";
     static final String cardfileURL = "http://pastebin.com/raw/Yr26nfp7";
     static final String smallXMLURL = "http://pastebin.com/raw/Eqj2N5qD";
@@ -58,5 +60,6 @@
         System.setOut(ps);
         writedata("config.txt", configData);
-        writedata("pconfig.txt", paramicsData);
+        writedata("pconfig.txt", configpData);
+        writedata("pmcprops.txt", paramConfig);
         writedata("empty.txt", "");
         writeScriptfiles();
Index: trunk/test/tmcsim/cadsimulator/CADSimulatorNetworkTest.java
===================================================================
--- trunk/test/tmcsim/cadsimulator/CADSimulatorNetworkTest.java	(revision 26)
+++ trunk/test/tmcsim/cadsimulator/CADSimulatorNetworkTest.java	(revision 26)
@@ -0,0 +1,172 @@
+package tmcsim.cadsimulator;
+
+import java.io.File;
+import java.rmi.RemoteException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import static junit.framework.Assert.assertEquals;
+import static junit.framework.Assert.fail;
+import static org.mockito.Mockito.*;
+import org.uispec4j.*;
+import org.uispec4j.interception.WindowInterceptor;
+import tmcsim.cadsimulator.managers.ParamicsSimulationManager;
+import tmcsim.common.CADEnums;
+import tmcsim.common.ScriptException;
+import tmcsim.common.SimulationException;
+import tmcsim.interfaces.CADClientInterface;
+import tmcsim.interfaces.SimulationManagerInterface;
+import tmcsim.paramicscommunicator.ParamicsCommunicator;
+
+/**
+ * Test of CADSimulator GUI
+ *
+ * @author jdalbey
+ */
+public class CADSimulatorNetworkTest extends UISpecTestCase
+{
+
+    static final String configData =
+            "CADClientPort          = 4444 \n"
+            + "CoordinatorRMIPort     = 4445 \n"
+            + "CADRmiPort             = 4446 \n"
+            + "UserInterface          = tmcsim.cadsimulator.viewer.CADSimulatorViewer\n"
+            + "ParamicsProperties     = pconfig.txt\n"
+            + "ATMSProperties         = empty.txt\n"
+            + "MediaProperties        = empty.txt\n";
+
+    public CADSimulatorNetworkTest(String testName)
+    {
+        super(testName);
+    }
+
+    @Override
+    public void tearDown() throws java.io.IOException
+    {
+        File removeMe = new File("config.txt");
+        removeMe.delete();
+        removeMe = new File("pconfig.txt");
+        removeMe.delete();
+        removeMe = new File("empty.txt");
+        removeMe.delete();
+        removeMe = new File("pmcprops.txt");
+        removeMe.delete();
+    }
+
+    /**
+     * Test of getCADTime method, of class CADSimulator.
+     */
+    public void testGetCADTime()
+    {
+        System.out.println("getCADTime");
+        String result = CADSimulator.getCADTime();
+        // Just test length for now
+        assertEquals(4, result.length());
+    }
+
+    /**
+     * Test of getCADDate method, of class CADSimulator.
+     */
+    public void testGetCADDate()
+    {
+        System.out.println("getCADDate");
+        String result = CADSimulator.getCADDate();
+        // Just test length for now
+        assertEquals(6, result.length());
+    }
+    /**
+     * Test of main method, of class CADSimulator.
+     */
+    CADSimulator app;
+
+    public void testConstructor() throws SimulationException, RemoteException, ScriptException
+    {
+        CADSimulatorFixture.writeConfigData();
+        CADSimulatorFixture.writedata("config.txt", configData);
+        System.out.println("CADSimulator constructor");
+        System.setProperty("CAD_SIM_PROPERTIES", "config.txt");
+        Window cadwindow = null;
+        if (System.getProperty("CAD_SIM_PROPERTIES") != null)
+        {
+            cadwindow = WindowInterceptor.run(new Trigger()
+            {
+                public void run()
+                {
+                    try
+                    {
+                        app = new CADSimulator(System.getProperty("CAD_SIM_PROPERTIES"));
+                    } catch (Exception e)
+                    {
+                        fail("Couldn't launch CADSimulator" + e.getMessage());
+                    }
+                }
+            });
+        } else
+        {
+            fail("CAD_SIM_PROPERTIES system property not defined.");
+        }
+        assertEquals("CAD Simulator", cadwindow.getTitle());
+        Panel mainPanel = cadwindow.getPanel("contentPane");
+        TextBox txtStatus = mainPanel.getTextBox("simulationStatus");
+        assertEquals("No Script", txtStatus.getText());
+        TextBox terminals = mainPanel.getTextBox("termConnectedTF");
+        assertEquals("0", terminals.getText().trim());
+        assertEquals("No", mainPanel.getTextBox("managerConnectedTF").getText().trim());
+        assertEquals("0:00:00", mainPanel.getTextBox("simulationClockLabel").getText());
+
+        CADClientInterface ci = mock (CADClientInterface.class);
+        app.theCoordinator.registerForCallback(ci);
+        assertEquals("1", terminals.getText().trim());
+        app.theCoordinator.registerForCallback(ci);
+        assertEquals("2", terminals.getText().trim());
+
+        SimulationManagerInterface si = mock(SimulationManagerInterface.class);
+        app.theCoordinator.registerForCallback(si);
+        assertEquals("Yes", mainPanel.getTextBox("managerConnectedTF").getText().trim());
+
+
+        app.theCoordinator.setParamicsStatus(CADEnums.PARAMICS_STATUS.CONNECTED);
+        CADSimulatorFixture.pause(500);
+        assertEquals("Yes", mainPanel.getTextBox("paramicsConnectedTF").getText().trim());
+        assertEquals("None", mainPanel.getTextBox("networkLoadedTF").getText().trim());
+
+String loadedXML = "<Paramics>\n"
+    + "<Network_Status>LOADED</Network_Status>"
+    + "<Network_ID>1</Network_ID>"
+    + "</Paramics>";
+
+//         Thread pmc = new Thread(new ParamicsCommunicator("pmcprops.txt"));
+//        pmc.start();
+//        pmc.stop();
+        /*
+         * Start Paramics Controller.
+         * app.theCoordinator.connectToParamics();
+        CADSimulatorFixture.pause(500);
+        assertEquals("Yes", mainPanel.getTextBox("paramicsConnectedTF").getText().trim());
+           theCoorInt.loadParamicsNetwork(networkID);
+         * Optional: assert Status is "Sending Network ID" in Sim Mgr
+         * When "
+         * paramics_status.xml becomes 
+<Paramics>
+<Network_Status>WARMING</Network_Status>
+<Network_ID>1</Network_ID>
+</Paramics>
+*          then Sim Mgr status becomes "Warming up"
+ When paramics_status.xml becomes loadedXML
+CADSimulatorFixture.writedata(loadedXML, "paramics_status.xml");
+pause()
+       then Sim MGr status becomes Network Loaded and
+ CADSimulator Netowrk Loaded field says "1".
+* 
+         */
+        ParamicsSimulationManager psm = mock(ParamicsSimulationManager.class);
+        when(psm.isConnected()).thenReturn(Boolean.TRUE);
+        app.theParamicsSimMgr = psm;
+        app.theCoordinator.loadParamicsNetwork(1);
+        // Load a script file
+        String autoloadScriptname = "scripts/one-incident.xml";
+        app.theCoordinator.loadScriptFile(new File(autoloadScriptname));
+        // The status should now say Ready
+        assertEquals("Ready", mainPanel.getTextBox("simulationStatus").getText().trim());
+    }
+
+}
