@Test
public void testSetMinDuration() {
try {
SLOW.setMinDuration(2, TimeUnit.SECONDS);
assertEquals(0, PERFORMANCE.getMinDuration(TimeUnit.SECONDS));
assertEquals(2, SLOW .getMinDuration(TimeUnit.SECONDS));
assertEquals(2, SLOWER .getMinDuration(TimeUnit.SECONDS));
assertEquals(5, SLOWEST .getMinDuration(TimeUnit.SECONDS));
SLOWEST.setMinDuration(1, TimeUnit.SECONDS);
assertEquals(0, PERFORMANCE.getMinDuration(TimeUnit.SECONDS));
assertEquals(1, SLOW .getMinDuration(TimeUnit.SECONDS));
assertEquals(1, SLOWER .getMinDuration(TimeUnit.SECONDS));
assertEquals(1, SLOWEST .getMinDuration(TimeUnit.SECONDS));
PERFORMANCE.setMinDuration(6, TimeUnit.SECONDS);
assertEquals(0, PERFORMANCE.getMinDuration(TimeUnit.SECONDS));
assertEquals(6, SLOW .getMinDuration(TimeUnit.SECONDS));
assertEquals(6, SLOWER .getMinDuration(TimeUnit.SECONDS));
assertEquals(6, SLOWEST .getMinDuration(TimeUnit.SECONDS));
} finally {
SLOW .setMinDuration(100, TimeUnit.MILLISECONDS);
SLOWER .setMinDuration(1, TimeUnit.SECONDS);
SLOWEST.setMinDuration(5, TimeUnit.SECONDS);
}
}