@Test
  public void getServerConfiguration_useDynamic() {

    Mockito.when(mockStaticService.getServerConfiguration(issuer)).thenReturn(null);
    Mockito.when(mockDynamicService.getServerConfiguration(issuer)).thenReturn(mockServerConfig);

    ServerConfiguration result = hybridService.getServerConfiguration(issuer);

    Mockito.verify(mockStaticService).getServerConfiguration(issuer);
    Mockito.verify(mockDynamicService).getServerConfiguration(issuer);
    assertEquals(mockServerConfig, result);
  }
  @Test
  public void getServerConfiguration_useStatic() {

    Mockito.when(mockStaticService.getServerConfiguration(issuer)).thenReturn(mockServerConfig);

    ServerConfiguration result = hybridService.getServerConfiguration(issuer);

    Mockito.verify(mockStaticService).getServerConfiguration(issuer);
    Mockito.verify(mockDynamicService, Mockito.never())
        .getServerConfiguration(Matchers.anyString());
    assertEquals(mockServerConfig, result);
  }
  /** Checks the behavior when the issuer is not known. */
  @Test
  public void getServerConfiguration_noIssuer() {

    Mockito.when(mockStaticService.getServerConfiguration(issuer)).thenReturn(mockServerConfig);
    Mockito.when(mockDynamicService.getServerConfiguration(issuer)).thenReturn(mockServerConfig);

    String badIssuer = "www.badexample.com";

    ServerConfiguration result = hybridService.getServerConfiguration(badIssuer);

    Mockito.verify(mockStaticService).getServerConfiguration(badIssuer);
    Mockito.verify(mockDynamicService).getServerConfiguration(badIssuer);
    assertThat(result, is(nullValue()));
  }