类org.apache.hadoop.util.FakeTimer源码实例Demo

下面列出了怎么用org.apache.hadoop.util.FakeTimer的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: hadoop-ozone   文件: TestHddsVolumeChecker.java
/**
 * Test {@link HddsVolumeChecker#checkAllVolumes} propagates
 * checks for all volumes to the delegate checker.
 *
 * @throws Exception
 */
@Test
public void testCheckAllVolumes() throws Exception {
  LOG.info("Executing {}", testName.getMethodName());

  final List<HddsVolume> volumes = makeVolumes(
      NUM_VOLUMES, expectedVolumeHealth);
  final HddsVolumeChecker checker =
      new HddsVolumeChecker(new OzoneConfiguration(), new FakeTimer());
  checker.setDelegateChecker(new DummyChecker());

  Set<HddsVolume> failedVolumes = checker.checkAllVolumes(volumes);
  LOG.info("Got back {} failed volumes", failedVolumes.size());

  if (expectedVolumeHealth == null || expectedVolumeHealth == FAILED) {
    assertThat(failedVolumes.size(), is(NUM_VOLUMES));
  } else {
    assertTrue(failedVolumes.isEmpty());
  }

  // Ensure each volume's check() method was called exactly once.
  for (HddsVolume volume : volumes) {
    verify(volume, times(1)).check(anyObject());
  }
}
 
源代码2 项目: hadoop   文件: TestGroupsCaching.java
@Test
public void testCacheEntriesExpire() throws Exception {
  conf.setLong(
    CommonConfigurationKeys.HADOOP_SECURITY_GROUPS_CACHE_SECS, 1);
  FakeTimer timer = new FakeTimer();
  final Groups groups = new Groups(conf, timer);
  groups.cacheGroupsAdd(Arrays.asList(myGroups));
  groups.refresh();
  FakeGroupMapping.clearBlackList();

  // We make an entry
  groups.getGroups("me");
  int startingRequestCount = FakeGroupMapping.getRequestCount();

  timer.advance(20 * 1000);

  // Cache entry has expired so it results in a new fetch
  groups.getGroups("me");
  assertEquals(startingRequestCount + 1, FakeGroupMapping.getRequestCount());
}
 
源代码3 项目: big-c   文件: TestGroupsCaching.java
@Test
public void testCacheEntriesExpire() throws Exception {
  conf.setLong(
    CommonConfigurationKeys.HADOOP_SECURITY_GROUPS_CACHE_SECS, 1);
  FakeTimer timer = new FakeTimer();
  final Groups groups = new Groups(conf, timer);
  groups.cacheGroupsAdd(Arrays.asList(myGroups));
  groups.refresh();
  FakeGroupMapping.clearBlackList();

  // We make an entry
  groups.getGroups("me");
  int startingRequestCount = FakeGroupMapping.getRequestCount();

  timer.advance(20 * 1000);

  // Cache entry has expired so it results in a new fetch
  groups.getGroups("me");
  assertEquals(startingRequestCount + 1, FakeGroupMapping.getRequestCount());
}
 
源代码4 项目: hadoop-ozone   文件: TestHddsVolumeChecker.java
/**
 * Test {@link HddsVolumeChecker#checkVolume} propagates the
 * check to the delegate checker.
 *
 * @throws Exception
 */
@Test
public void testCheckOneVolume() throws Exception {
  LOG.info("Executing {}", testName.getMethodName());
  final HddsVolume volume = makeVolumes(1, expectedVolumeHealth).get(0);
  final HddsVolumeChecker checker =
      new HddsVolumeChecker(new OzoneConfiguration(), new FakeTimer());
  checker.setDelegateChecker(new DummyChecker());
  final AtomicLong numCallbackInvocations = new AtomicLong(0);

  /**
   * Request a check and ensure it triggered {@link HddsVolume#check}.
   */
  boolean result =
      checker.checkVolume(volume, (healthyVolumes, failedVolumes) -> {
        numCallbackInvocations.incrementAndGet();
        if (expectedVolumeHealth != null &&
            expectedVolumeHealth != FAILED) {
          assertThat(healthyVolumes.size(), is(1));
          assertThat(failedVolumes.size(), is(0));
        } else {
          assertThat(healthyVolumes.size(), is(0));
          assertThat(failedVolumes.size(), is(1));
        }
      });

  GenericTestUtils.waitFor(() -> numCallbackInvocations.get() > 0, 5, 10000);

  // Ensure that the check was invoked at least once.
  verify(volume, times(1)).check(anyObject());
  if (result) {
    assertThat(numCallbackInvocations.get(), is(1L));
  }
}
 
 类所在包
 类方法
 同包方法