Parameterize DeferredResult

Issue: SPR-9579
This commit is contained in:
Rossen Stoyanchev
2012-07-18 09:43:03 -04:00
parent 55bd99fa16
commit eab6e1d134
6 changed files with 85 additions and 87 deletions

View File

@@ -144,7 +144,7 @@ public class AsyncExecutionChainTests {
this.chain.addDelegatingCallable(new IntegerIncrementingCallable());
this.chain.addDelegatingCallable(new IntegerIncrementingCallable());
DeferredResult deferredResult = new DeferredResult();
DeferredResult<Integer> deferredResult = new DeferredResult<Integer>();
this.chain.startDeferredResultProcessing(deferredResult);
assertTrue(this.asyncWebRequest.isAsyncStarted());
@@ -159,7 +159,7 @@ public class AsyncExecutionChainTests {
this.asyncWebRequest.startAsync();
this.asyncWebRequest.complete();
DeferredResult deferredResult = new DeferredResult();
DeferredResult<Integer> deferredResult = new DeferredResult<Integer>();
this.chain.startDeferredResultProcessing(deferredResult);
deferredResult.set(1);
}

View File

@@ -20,8 +20,8 @@ import static org.easymock.EasyMock.createMock;
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.reset;
import static org.easymock.EasyMock.verify;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.fail;
import org.junit.Test;
@@ -34,16 +34,10 @@ import org.springframework.web.context.request.async.DeferredResult.DeferredResu
*/
public class DeferredResultTests {
@Test
public void canHandleTimeout() {
assertFalse(new DeferredResult().canHandleTimeout());
assertTrue(new DeferredResult("foo").canHandleTimeout());
}
@Test
public void set() {
DeferredResultHandler resultHandler = createMock(DeferredResultHandler.class);
DeferredResult deferredResult = new DeferredResult();
DeferredResult<String> deferredResult = new DeferredResult<String>();
deferredResult.init(resultHandler);
resultHandler.handle("foo");
@@ -54,35 +48,36 @@ public class DeferredResultTests {
verify(resultHandler);
}
@Test
public void getTimeoutHandler() {
assertNull(new DeferredResult<String>().getTimeoutHandler());
assertNotNull(new DeferredResult<String>("foo").getTimeoutHandler());
}
@Test
public void handleTimeout() {
DeferredResultHandler resultHandler = createMock(DeferredResultHandler.class);
DeferredResult deferredResult = new DeferredResult("foo");
deferredResult.init(resultHandler);
resultHandler.handle("foo");
replay(resultHandler);
deferredResult.handleTimeout();
DeferredResult<String> deferredResult = new DeferredResult<String>("foo");
deferredResult.init(resultHandler);
deferredResult.getTimeoutHandler().run();
verify(resultHandler);
}
@Test(expected=IllegalStateException.class)
public void handleTimeout_timeoutResultNone() {
new DeferredResult().handleTimeout();
}
@Test
public void setAfterHandleTimeout() {
public void setAfterTimeoutValueUsed() {
DeferredResultHandler resultHandler = createMock(DeferredResultHandler.class);
DeferredResult deferredResult = new DeferredResult("foo");
deferredResult.init(resultHandler);
resultHandler.handle("foo");
replay(resultHandler);
deferredResult.handleTimeout();
DeferredResult<String> deferredResult = new DeferredResult<String>("foo");
deferredResult.init(resultHandler);
deferredResult.getTimeoutHandler().run();
verify(resultHandler);
@@ -96,14 +91,13 @@ public class DeferredResultTests {
}
@Test
public void setBeforeHandleTimeout() {
public void setBeforeTimeoutValueUsed() {
DeferredResultHandler resultHandler = createMock(DeferredResultHandler.class);
DeferredResult deferredResult = new DeferredResult("foo");
deferredResult.init(resultHandler);
resultHandler.handle("foo");
replay(resultHandler);
DeferredResult<String> deferredResult = new DeferredResult<String>("foo");
deferredResult.init(resultHandler);
deferredResult.set("foo");
verify(resultHandler);
@@ -111,7 +105,7 @@ public class DeferredResultTests {
reset(resultHandler);
replay(resultHandler);
deferredResult.handleTimeout();
deferredResult.getTimeoutHandler().run();
verify(resultHandler);
}