@Test
  public void testTimeout()
      throws EncodingFailedException, L2pSecurityException, SerializationException,
          InterruptedException, AgentException {
    adam.unlockPrivateKey("adamspass");

    LocalNode testee1 = LocalNode.launchAgent(adam);
    MessageResultListener l =
        new MessageResultListener(2000) {
          public void notifyTimeout() {
            LocalNodeTest.testVariable = true;
          }
        };
    Message m = new Message(adam, eve, new PingPongContent(), 1000);

    LocalNode.setPendingTimeOut(1000);

    testee1.sendMessage(m, l);

    Thread.sleep(30000);

    assertFalse(l.isSuccess());
    assertTrue(l.isTimedOut());
    assertEquals(0, l.getResults().length);
    assertTrue(testVariable);
  }
  @Test
  public void test()
      throws AgentAlreadyRegisteredException, EncodingFailedException, L2pSecurityException,
          SerializationException, InterruptedException, AgentException, AgentNotKnownException {
    System.out.println("start: " + new Date());

    LocalNode testee = LocalNode.launchNode();

    try {
      testee.registerReceiver(eve);
      fail("L2pSecurityException expected");
    } catch (L2pSecurityException e) {
    }

    eve.unlockPrivateKey("evespass");
    adam.unlockPrivateKey("adamspass");

    testee.registerReceiver(eve);
    testee.registerReceiver(adam);

    assertFalse(eve.isLocked());
    assertFalse(adam.isLocked());

    System.out.println("check1: " + new Date());

    testVariable = false;
    MessageResultListener listener =
        new MessageResultListener(10000) {
          public void notifySuccess() {
            LocalNodeTest.testVariable = true;
          }
        };

    PingPongContent c = new PingPongContent();
    Message m = new Message(adam, eve, c);

    testee.sendMessage(m, listener);

    listener.waitForAllAnswers();

    assertFalse(listener.isTimedOut());
    assertFalse(listener.hasException());
    assertTrue(listener.isSuccess());
    assertTrue(listener.isFinished());

    Message answer = listener.getResults()[0];
    answer.open(adam, testee);
    assertTrue(c.getTimestamp() < ((PingPongContent) answer.getContent()).getTimestamp());
    assertTrue(testVariable);
  }