This commit is contained in:
Rossen Stoyanchev
2014-03-06 12:28:06 -05:00
parent 2f8bc6eec1
commit 0036d9a5c9
2 changed files with 18 additions and 14 deletions

View File

@@ -30,6 +30,7 @@ import org.junit.Test;
import org.springframework.mock.web.test.MockHttpServletRequest;
import org.springframework.mock.web.test.MockHttpServletResponse;
import org.springframework.util.MultiValueMap;
import org.springframework.web.servlet.FlashMap;
import org.springframework.web.util.WebUtils;
@@ -261,6 +262,8 @@ public class FlashMapManagerTests {
assertEquals("/once/only", flashMap.getTargetRequestPath());
}
// SPR-9657, SPR-11504
@Test
public void saveOutputFlashMapDecodeParameters() throws Exception {
this.request.setCharacterEncoding("UTF-8");
@@ -274,10 +277,9 @@ public class FlashMapManagerTests {
flashMap.addTargetRequestParam("%3A%2F%3F%23%5B%5D%40", "value");
this.flashMapManager.saveOutputFlashMap(flashMap, this.request, this.response);
assertEquals(Arrays.asList("\u0410\u0410", "\u0411\u0411", "\u0412\u0412"),
flashMap.getTargetRequestParams().get("key"));
assertEquals(Arrays.asList("value"),
flashMap.getTargetRequestParams().get(":/?#[]@"));
MultiValueMap<String,String> targetRequestParams = flashMap.getTargetRequestParams();
assertEquals(Arrays.asList("\u0410\u0410", "\u0411\u0411", "\u0412\u0412"), targetRequestParams.get("key"));
assertEquals(Arrays.asList("value"), targetRequestParams.get(":/?#[]@"));
}