@Test
public void testRecoverConnectionsIsNotStartedTwice() {

    new TestKit(actorSystem) {{
        final TestProbe probe = new TestProbe(actorSystem);
        final Props props = ReconnectActor.props(probe.ref(),
                () -> Source.from(Arrays.asList(
                        ConnectionPersistenceActor.PERSISTENCE_ID_PREFIX + "connection-1",
                        ConnectionPersistenceActor.PERSISTENCE_ID_PREFIX + "connection-2",
                        ConnectionPersistenceActor.PERSISTENCE_ID_PREFIX + "connection-3")));
        final ActorRef reconnectActor = actorSystem.actorOf(props);
        reconnectActor.tell(ReconnectActor.ReconnectMessages.START_RECONNECT, getRef());
        probe.expectMsgClass(RetrieveConnectionStatus.class);
        probe.expectMsgClass(RetrieveConnectionStatus.class);
        probe.expectMsgClass(RetrieveConnectionStatus.class);
        probe.expectNoMessage();
    }};
}