1
1
/*
2
- * Copyright 2002-2013 the original author or authors.
2
+ * Copyright 2002-2014 the original author or authors.
3
3
*
4
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
5
* you may not use this file except in compliance with the License.
17
17
package org .springframework .web .context .request ;
18
18
19
19
import java .io .Serializable ;
20
-
21
20
import javax .servlet .http .HttpServletRequest ;
21
+ import javax .servlet .http .HttpSession ;
22
22
23
23
import org .junit .Test ;
24
+
24
25
import org .springframework .mock .web .test .MockHttpServletRequest ;
25
26
import org .springframework .mock .web .test .MockHttpSession ;
26
27
@@ -39,23 +40,12 @@ public class ServletRequestAttributesTests {
39
40
private static final Serializable VALUE = new Serializable () {
40
41
};
41
42
43
+
42
44
@ Test (expected = IllegalArgumentException .class )
43
45
public void ctorRejectsNullArg () throws Exception {
44
46
new ServletRequestAttributes (null );
45
47
}
46
48
47
- @ Test
48
- public void updateAccessedAttributes () throws Exception {
49
- MockHttpSession session = new MockHttpSession ();
50
- session .setAttribute (KEY , VALUE );
51
- MockHttpServletRequest request = new MockHttpServletRequest ();
52
- request .setSession (session );
53
- ServletRequestAttributes attrs = new ServletRequestAttributes (request );
54
- Object value = attrs .getAttribute (KEY , RequestAttributes .SCOPE_SESSION );
55
- assertSame (VALUE , value );
56
- attrs .requestCompleted ();
57
- }
58
-
59
49
@ Test
60
50
public void setRequestScopedAttribute () throws Exception {
61
51
MockHttpServletRequest request = new MockHttpServletRequest ();
@@ -162,4 +152,20 @@ public void removeSessionScopedAttributeDoesNotForceCreationOfSession() throws E
162
152
verify (request ).getSession (false );
163
153
}
164
154
155
+ @ Test
156
+ public void updateAccessedAttributes () throws Exception {
157
+ HttpServletRequest request = mock (HttpServletRequest .class );
158
+ HttpSession session = mock (HttpSession .class );
159
+ when (request .getSession (anyBoolean ())).thenReturn (session );
160
+ when (session .getAttribute (KEY )).thenReturn (VALUE );
161
+
162
+ ServletRequestAttributes attrs = new ServletRequestAttributes (request );
163
+ assertSame (VALUE , attrs .getAttribute (KEY , RequestAttributes .SCOPE_SESSION ));
164
+ attrs .requestCompleted ();
165
+
166
+ verify (session , times (2 )).getAttribute (KEY );
167
+ verify (session ).setAttribute (KEY , VALUE );
168
+ verifyNoMoreInteractions (session );
169
+ }
170
+
165
171
}
0 commit comments