@Test
public void shouldRunTheSystemCommandIfSupported() throws Exception {

    final UUID commandId = randomUUID();
    final TestCommand testCommand = new TestCommand();
    when(systemCommandLocator.forName(testCommand.getName())).thenReturn(of(testCommand));
    when(asynchronousCommandRunner.run(testCommand)).thenReturn(commandId);
    assertThat(systemCommander.call("TEST_COMMAND"), is(commandId));
    final InOrder inOrder = inOrder(logger, asynchronousCommandRunner);
    inOrder.verify(logger).info("Received System Command 'TEST_COMMAND'");
    inOrder.verify(asynchronousCommandRunner).run(testCommand);
}