public void testConnectsInNIO() throws Throwable {
		InetAddress loopBack = InetAddress.getByName("127.0.0.1");
		InetSocketAddress serverAddr = new InetSocketAddress(loopBack, 0);
		InetSocketAddress client1Addr = new InetSocketAddress(loopBack, 0);		
		InetSocketAddress client2Addr = new InetSocketAddress(loopBack, 0);
		
		serverChannel.configureBlocking(false);
		serverChannel.socket().bind(serverAddr);
		client.socket().bind(client1Addr);
		client2.socket().bind(client2Addr);

		SocketAddress addr = serverChannel.socket().getLocalSocketAddress();
		log.info("server="+addr);
		
		serverChannel.register(selector, SelectionKey.OP_ACCEPT);		
	
		//start the thread that sleeps, and then blocks on select
		//after the below two socket connects happen
		server.start();

		client.connect(addr);
		client2.connect(addr);
		
		log.info("connected both client sockets");
		
		server.waitForBothSocketAccepts();
	
		log.info("done with test");
	}