Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
2.2.3.1
-
Patch
Description
I expected that when I set attributes on the MockHttpSession from MockHttpRequest in StrutsTestCase they would be available in the invocation ActionContext.
Instead, getActionProxy does not set a SessionMap on the invocation ActionContext. This affects testing of Actions that use SessionAware and other ServletConfigInterceptor Interfaces.
Workaround:
public void testSomething() throws Exception { ActionProxy proxy = getActionProxy("/something"); proxy.getInvocation().getInvocationContext().setSession(new SessionMap(request)); }
Tiny patch to fix it:
struts-2.2.3.1/src/plugins/junit/src/main/java/org/apache/struts2/StrutsTestCase.java 39a40 > import org.apache.struts2.dispatcher.SessionMap; 141a143 > invocationContext.setSession(new SessionMap(request));