@Test
  public void testEmptyServerSet() throws Throwable {
    Status readyStatus = new Status(StatusType.READY);
    setMessageAndStats(readyStatus);
    when(deployerServerSet.getServers()).thenReturn(new HashSet<>());

    mockAllClientsToReturnSameStatus(readyStatus);

    SystemStatus systemStatus = client.getSystemStatus();

    assertThat(systemStatus.getComponents().size(), is(5));
    assertThat(systemStatus.getStatus(), is(StatusType.ERROR));

    ComponentStatus deployerComponent =
        systemStatus
            .getComponents()
            .stream()
            .filter(c -> Component.DEPLOYER.equals(c.getComponent()))
            .findFirst()
            .get();
    assertThat(deployerComponent, notNullValue());
    assertThat(deployerComponent.getStatus(), is(StatusType.UNREACHABLE));
    assertThat(deployerComponent.getMessage(), is("Empty ServerSet"));
  }