@Test
public void shouldFetchKeysAgainAfterExpiration() throws Exception {

  KeysDownloader instance = newInstanceForTests();
  httpResponseBuilder =
      new HttpResponseBuilder().setContent("keys1").setCacheControlWithMaxAgeInSeconds(3L);
  // Fetched and cached keys
  assertEquals("keys1", instance.download());
  // Keys changed
  httpResponseBuilder = new HttpResponseBuilder().setContent("keys2");
  // 3 seconds later ...
  currentTimeInMillis += 3000L;
  // New keys are fetched and returned
  assertEquals("keys2", instance.download());
}