public void testStatusMessagesFromRealConnection() throws ConnectionTimeout {
		/**
		 * InTrace will notify this test object with connection status updates.
		 */
		Callback tc = new Callback();
		IConnectionList cl = DefaultConnectionList.getSingleton();
		HostPort hostPort = new HostPort(ConnectionTestUtils.DEFAULT_HOST_1,ConnectionTestUtils.DEFAULT_PORT_1);
		
		try {
			cl.connect(tc, hostPort, null /* no classes to instrument */);
			assertEquals("expected one connection in the ConnectionList because we just connected.", 1, cl.size());
			assertTrue("B4 disconnect, expecting at least one message.  Is the test server started?", tc.getMessages().size() > 0 );
			
			//Just shows that we got the history of connections, where every connection starts out dead.
			assertEquals("checking first status message b4 dis-connecting", ConnectState.DISCONNECTED,tc.getConnectStates().get(0));
			
			// ...and the current state is connected.
			assertEquals("checking second status message b4 dis-connecting", ConnectState.CONNECTED, tc.getConnectState());
			
			IConnection myConn = cl.locateConnection(hostPort);
			
			assertNotNull("locateConnection was unable to find the recently-added connection, even though 'CONNECTED' was the last status", myConn );
			Assert.assertTrue("did not receive any connection status change events", tc.getMessages().size()>0 );
			boolean ynLocateMessage = ConnectionTestUtils.locateMessage( tc.getMessages(),ConnectState.CONNECTED.toString());
			Assert.assertTrue("did not receive a CONNECTED status message", ynLocateMessage );
			Assert.assertFalse(	
					"whoops...most recent message is DISCONNECTED...thought we were still connected.", 
					ConnectionTestUtils.mostRecentMessageIsDisconnect(tc.getMessages())
					);

			Assert.assertEquals("didn't find the single callback used for this test's single connection", 1, myConn.getConnCallbackSize());
			if (myConn!=null) {
				//assertEquals("expected a single connection in the ConnectionList", 1, cl.size());
				//myConn.disconnect();
				cl.disconnect(myConn, tc);
				if (cl.size()==1);
				Thread.sleep(10000);
				if (cl.size()==1);
				assertEquals("expected zero connections in the ConnectionList because we just disconnected.", 0, cl.size());
				assertEquals("checking second status message b4 dis-connecting", ConnectState.DISCONNECTED, tc.getConnectState());
				
				//System.out.println("All connection messages: [" + tc.getMessages() + "]");
				
			} else {
				Assert.fail("Simple connection test, unable to locate connection in list");
			}

			Assert.assertEquals("Now that the disconnect has happend, all callbacks should have been removed", 0, myConn.getConnCallbackSize());
		} catch (Exception e) {
			e.printStackTrace();
			fail("Exception trying to connect [" + e.getMessage() + "]");
		}
		
		//System.out.println("All connection messages: [" + tc.getMessages() + "]");
		
	}