@Override
  public boolean isDetected() {
    return "true".equals(system.envVariable("SEMAPHORE")) && isNotEmpty(system.envVariable("SEMAPHORE_PROJECT_ID"));
  }
@Test
  public void isDetected() {
    setEnvVariable("SEMAPHORE", "true");
    setEnvVariable("SEMAPHORE_PROJECT_ID", "d782a107-aaf9-494d-8153-206b1a6bc8e9");
    assertThat(underTest.isDetected()).isTrue();

    setEnvVariable("SEMAPHORE", "true");
    setEnvVariable("SEMAPHORE_PROJECT_ID", null);
    assertThat(underTest.isDetected()).isFalse();

    setEnvVariable("SEMAPHORE", null);
    setEnvVariable("SEMAPHORE_PROJECT_ID", "d782a107-aaf9-494d-8153-206b1a6bc8e9");
    assertThat(underTest.isDetected()).isFalse();

    setEnvVariable("SEMAPHORE", "foo");
    setEnvVariable("SEMAPHORE_PROJECT_ID", "d782a107-aaf9-494d-8153-206b1a6bc8e9");
    assertThat(underTest.isDetected()).isFalse();
  }