@Override
    public void setUp() throws Exception {
        networkManagerStub = new NetworkManagerStub();
        networkManagerStub.setPort(PORT);
        Injector injector = LimeTestUtils.createInjector(MyActivityCallback.class, new LimeTestUtils.NetworkManagerStubModule(networkManagerStub));
        super.setUp(injector);

        DownloadManagerImpl downloadManager = (DownloadManagerImpl)injector.getInstance(DownloadManager.class);
        callback = (MyActivityCallback) injector.getInstance(ActivityCallback.class);
        
        downloadManager.clearAllDownloads();
        
        //      Turn off by default, explicitly test elsewhere.
        networkManagerStub.setIncomingTLSEnabled(false);
        networkManagerStub.setOutgoingTLSEnabled(false);
        // duplicate queries are sent out each time, so avoid the DuplicateFilter
        Thread.sleep(2000);        

        // send a MessagesSupportedMessage
        testUP[0].send(injector.getInstance(MessagesSupportedVendorMessage.class));
        testUP[0].flush();
        
        // we expect to get a PushProxy request
        Message m;
        do {
            m = testUP[0].receive(TIMEOUT);
        } while (!(m instanceof PushProxyRequest));

        // we should answer the push proxy request
        PushProxyAcknowledgement ack = new PushProxyAcknowledgement(InetAddress
                .getLocalHost(), 6355, new GUID(m.getGUID()));
        testUP[0].send(ack);
        testUP[0].flush();
    }
 @Override
 protected void setUp() throws Exception {
   Injector injector = LimeTestUtils.createInjector(Stage.PRODUCTION);
   super.setUp(injector);
   connectionManager = injector.getInstance(ConnectionManager.class);
   queryRequestFactory = injector.getInstance(QueryRequestFactory.class);
   simppManager = injector.getInstance(SimppManager.class);
   staticMessages = injector.getInstance(StaticMessages.class);
 }
  @Override
  public void setUp() throws Exception {
    networkManagerStub = new NetworkManagerStub();
    Injector injector =
        LimeTestUtils.createInjector(
            Stage.PRODUCTION,
            MyCallback.class,
            new LimeTestUtils.NetworkManagerStubModule(networkManagerStub));
    super.setUp(injector);

    fileManager = injector.getInstance(FileManager.class);
    messagesSupportedVendorMessage = injector.getInstance(MessagesSupportedVendorMessage.class);
    searchServices = injector.getInstance(SearchServices.class);
    responseFactory = injector.getInstance(ResponseFactory.class);
    queryReplyFactory = injector.getInstance(QueryReplyFactory.class);
    replyNumberVendorMessageFactory = injector.getInstance(ReplyNumberVendorMessageFactory.class);
    queryRequestFactory = injector.getInstance(QueryRequestFactory.class);
    downloadServices = injector.getInstance(DownloadServices.class);
    messageRouter = injector.getInstance(MessageRouter.class);
    messageFactory = injector.getInstance(MessageFactory.class);
    pingReplyFactory = injector.getInstance(PingReplyFactory.class);
    onDemandUnicaster = injector.getInstance(OnDemandUnicaster.class);
    callback = (MyCallback) injector.getInstance(ActivityCallback.class);
    macManager = injector.getInstance(MACCalculatorRepositoryManager.class);
    remoteFileDescFactory = injector.getInstance(RemoteFileDescFactory.class);
    pushEndpointFactory = injector.getInstance(PushEndpointFactory.class);

    networkManagerStub.setAcceptedIncomingConnection(true);
    networkManagerStub.setCanReceiveSolicited(true);
    networkManagerStub.setCanReceiveUnsolicited(true);
    networkManagerStub.setOOBCapable(true);
    networkManagerStub.setPort(SERVER_PORT);

    File file = TestUtils.getResourceFile("com/limegroup/gnutella/metadata/metadata.mp3");
    assertNotNull(fileManager.getGnutellaFileList().add(file).get(1, TimeUnit.SECONDS));

    UDP_ACCESS = new DatagramSocket[10];
    for (int i = 0; i < UDP_ACCESS.length; i++) UDP_ACCESS[i] = new DatagramSocket();

    for (int i = 0; i < testUP.length; i++) {
      assertTrue("should be open", testUP[i].isOpen());
      assertTrue(
          "should be up -> leaf",
          testUP[i].getConnectionCapabilities().isSupernodeClientConnection());
      BlockingConnectionUtils.drain(testUP[i], 100);
      // OOB client side needs server side leaf guidance
      testUP[i].send(messagesSupportedVendorMessage);
      testUP[i].flush();
    }

    Thread.sleep(250);

    // we should now be guess capable and tcp incoming capable....
    // test on acceptor since network manager is stubbed out
    //        assertTrue(injector.getInstance(Acceptor.class).acceptedIncoming());
  }
 @Override
 protected void setUp() throws Exception {
   networkManagerStub = new NetworkManagerStub();
   networkManagerStub.setAcceptedIncomingConnection(true);
   networkManagerStub.setPort(SERVER_PORT);
   networkManagerStub.setExternalAddress(new byte[] {(byte) 129, 1, 4, 10});
   Injector injector =
       LimeTestUtils.createInjector(
           MyActivityCallback.class,
           new LimeTestUtils.NetworkManagerStubModule(networkManagerStub));
   super.setUp(injector);
   callback = (MyActivityCallback) injector.getInstance(ActivityCallback.class);
   searchServices = injector.getInstance(SearchServices.class);
   responseFactory = injector.getInstance(ResponseFactory.class);
   queryReplyFactory = injector.getInstance(QueryReplyFactory.class);
 }
  @Override
  public void setUp() throws Exception {
    Injector injector = LimeTestUtils.createInjector(Stage.PRODUCTION);
    acceptor = (AcceptorImpl) injector.getInstance(Acceptor.class);

    // set values before everything is initialized
    acceptor.setIncomingExpireTime(MY_EXPIRE_TIME);
    acceptor.setWaitTimeAfterRequests(MY_WAIT_TIME);
    acceptor.setTimeBetweenValidates(MY_VALIDATE_TIME);

    super.setUp(injector);

    messagesSupportedVendorMessage = injector.getInstance(MessagesSupportedVendorMessage.class);
    networkManager = injector.getInstance(NetworkManager.class);
    udpService = injector.getInstance(UDPService.class);
    connectionManager = injector.getInstance(ConnectionManager.class);
    pingRequestFactory = injector.getInstance(PingRequestFactory.class);
    replyNumberVendorMessageFactory = injector.getInstance(ReplyNumberVendorMessageFactory.class);

    exchangeSupportedMessages();
  }