@Test
public void sendMessageToPostponedActorThenReceiveItWhenTheActorRegisters() throws Exception {

    final ActorSystemInstance actorSystem = ActorSystemInstance
            .getInstance("sendMessageToPostponedActorThenReceiveItWhenTheActorRegisters");
    MockActor actor = new TestAsync<MockActor>(50).apply(new Function<CountDownLatch, MockActor>() {
        @Override
        public MockActor apply(@NonNull CountDownLatch countDownLatch) {
            Message message = new Message(1, 1);
            MockActorNine actor = new MockActorNine(countDownLatch);
            actorSystem.register(actor);
            actorSystem.postpone(actor);
            ActorScheduler.after(10, actorSystem).send(message, MockActorNine.class);
            return actor;
        }
    });
    actorSystem.register(actor);
    assertTrue(actor.message.getContent().equals(1));
}