@Test
public void testConnectionActorRespondsToCleanupCommand() {

    new TestKit(actorSystem) {{
        final TestProbe probe = TestProbe.apply(actorSystem);
        final ActorRef underTest =
                TestConstants.createConnectionSupervisorActor(connectionId, actorSystem, pubSubMediator,
                        proxyActor,
                        (connection, concierge, connectionActor) -> MockClientActor.props(probe.ref()));
        watch(underTest);
        // create connection
        underTest.tell(createConnection, getRef());
        probe.expectMsg(openConnection);
        expectMsg(createConnectionResponse);
        // send cleanup command
        underTest.tell(
                CleanupPersistence.of(DefaultEntityId.of(
                        ConnectionPersistenceActor.PERSISTENCE_ID_PREFIX + connectionId),
                        DittoHeaders.empty()),
                getRef());
        expectMsg(CleanupPersistenceResponse.success(
                DefaultEntityId.of(ConnectionPersistenceActor.PERSISTENCE_ID_PREFIX + connectionId),
                DittoHeaders.empty()));
    }};
}