SPR-6464 Add getInputFlashMap and getOutputFlashMap methods to RequestContextUtils

This commit is contained in:
Rossen Stoyanchev
2011-08-15 21:01:52 +00:00
parent f0db3d0992
commit 152add37d5
9 changed files with 95 additions and 88 deletions

View File

@@ -1469,7 +1469,7 @@ public class ServletAnnotationControllerHandlerMethodTests extends AbstractServl
assertEquals(200, response.getStatus());
assertEquals("messages/new", response.getForwardedUrl());
assertTrue(RequestContextUtils.getFlashMap(request).isEmpty());
assertTrue(RequestContextUtils.getOutputFlashMap(request).isEmpty());
// POST -> success
request = new MockHttpServletRequest("POST", "/messages");
@@ -1480,7 +1480,7 @@ public class ServletAnnotationControllerHandlerMethodTests extends AbstractServl
assertEquals(200, response.getStatus());
assertEquals("/messages/1?name=value", response.getRedirectedUrl());
assertEquals("yay!", RequestContextUtils.getFlashMap(request).get("successMessage"));
assertEquals("yay!", RequestContextUtils.getOutputFlashMap(request).get("successMessage"));
// GET after POST
request = new MockHttpServletRequest("GET", "/messages/1");
@@ -1491,7 +1491,7 @@ public class ServletAnnotationControllerHandlerMethodTests extends AbstractServl
assertEquals(200, response.getStatus());
assertEquals("Got: yay!", response.getContentAsString());
assertTrue(RequestContextUtils.getFlashMap(request).isEmpty());
assertTrue(RequestContextUtils.getOutputFlashMap(request).isEmpty());
}
/*

View File

@@ -54,7 +54,7 @@ public class DefaultFlashMapManagerTests {
boolean initialized = this.flashMapManager.requestStarted(this.request);
assertTrue("Current FlashMap not initialized on first call", initialized);
assertNotNull("Current FlashMap not found", RequestContextUtils.getFlashMap(request));
assertNotNull("Current FlashMap not found", RequestContextUtils.getOutputFlashMap(request));
initialized = this.flashMapManager.requestStarted(this.request);
@@ -62,38 +62,39 @@ public class DefaultFlashMapManagerTests {
}
@Test
public void lookupPreviousFlashMap() {
public void lookupInputFlashMap() {
FlashMap flashMap = new FlashMap();
flashMap.put("key", "value");
List<FlashMap> allMaps = createFlashMapsSessionAttribute();
allMaps.add(flashMap);
this.flashMapManager.requestStarted(this.request);
assertSame(flashMap, request.getAttribute(DefaultFlashMapManager.PREVIOUS_FLASH_MAP_ATTRIBUTE));
assertEquals("Previous FlashMap should have been removed", 0, allMaps.size());
assertEquals(flashMap, request.getAttribute(DefaultFlashMapManager.INPUT_FLASH_MAP_ATTRIBUTE));
assertEquals("Input FlashMap should have been removed", 0, allMaps.size());
}
@Test
public void lookupPreviousFlashMapExpectedUrlPath() {
public void lookupInputFlashMapExpectedUrlPath() {
FlashMap emptyFlashMap = new FlashMap();
FlashMap oneFlashMap = new FlashMap();
oneFlashMap.setExpectedRequestUri(null, "/one");
FlashMap oneOtherFlashMap = new FlashMap();
oneOtherFlashMap.setExpectedRequestUri(null, "/one/other");
FlashMap secondFlashMap = new FlashMap();
secondFlashMap.setExpectedRequestUri(null, "/one/two");
List<FlashMap> allMaps = createFlashMapsSessionAttribute();
allMaps.add(emptyFlashMap);
allMaps.add(oneFlashMap);
allMaps.add(oneOtherFlashMap);
allMaps.add(secondFlashMap);
Collections.shuffle(allMaps);
this.request.setRequestURI("/one");
this.flashMapManager.requestStarted(this.request);
assertSame(oneFlashMap, request.getAttribute(DefaultFlashMapManager.PREVIOUS_FLASH_MAP_ATTRIBUTE));
assertEquals(oneFlashMap, request.getAttribute(DefaultFlashMapManager.INPUT_FLASH_MAP_ATTRIBUTE));
}
@Test
@@ -116,7 +117,7 @@ public class DefaultFlashMapManagerTests {
public void saveFlashMap() throws InterruptedException {
FlashMap flashMap = new FlashMap();
flashMap.put("name", "value");
request.setAttribute(DefaultFlashMapManager.CURRENT_FLASH_MAP_ATTRIBUTE, flashMap);
request.setAttribute(DefaultFlashMapManager.OUTPUT_FLASH_MAP_ATTRIBUTE, flashMap);
this.flashMapManager.setFlashMapTimeout(0);
this.flashMapManager.requestCompleted(this.request);
@@ -132,7 +133,7 @@ public class DefaultFlashMapManagerTests {
@Test
public void saveFlashMapIsEmpty() throws InterruptedException {
request.setAttribute(DefaultFlashMapManager.CURRENT_FLASH_MAP_ATTRIBUTE, new FlashMap());
request.setAttribute(DefaultFlashMapManager.OUTPUT_FLASH_MAP_ATTRIBUTE, new FlashMap());
this.flashMapManager.requestCompleted(this.request);
assertNull(getFlashMapsSessionAttribute());

View File

@@ -115,7 +115,7 @@ public class RedirectViewTests {
MockHttpServletResponse response = new MockHttpServletResponse();
FlashMap flashMap = new FlashMap();
flashMap.put("successMessage", "yay!");
request.setAttribute(FlashMapManager.CURRENT_FLASH_MAP_ATTRIBUTE, flashMap);
request.setAttribute(FlashMapManager.OUTPUT_FLASH_MAP_ATTRIBUTE, flashMap);
rv.render(new ModelMap("id", "1"), request, response);
assertEquals(303, response.getStatus());
assertEquals("http://url.somewhere.com/path?id=1", response.getHeader("Location"));