}
@Test
public void testExpirationSoon() {
RenderResultCache.setAltCache(new AltCacheSimpleImpl());
RenderResult rr = new RenderResult(null, null, 0);
RenderResultCache.set(KEY1, rr, "2s");
RenderResult rrr;
try {
rrr = RenderResultCache.get(KEY1);
assertNotNull(rrr);
} catch (ShouldRefreshException e1) {
throw new RuntimeException(e1);
}
waitfor(1500);
try {
rrr = RenderResultCache.get(KEY1);
} catch (ShouldRefreshException e) {
assertNotNull(e.renderResult);
}
final AtomicBoolean b = new AtomicBoolean(false);
Thread t = new Thread(new Runnable() {
@Override
public void run() {
try {
RenderResult rrr = RenderResultCache.get(KEY1);
b.set(rrr != null);
} catch (ShouldRefreshException e) {
fail();
}