use of org.eclipse.scout.rt.ui.html.json.JsonStartupRequest in project scout.rt by eclipse.
the class JsonTestUtility method createAndInitializeUiSession.
public static IUiSession createAndInitializeUiSession() {
String clientSessionId = "testClientSession123";
HttpServletRequest request = Mockito.mock(HttpServletRequest.class);
HttpServletResponse response = Mockito.mock(HttpServletResponse.class);
final HttpSession httpSession = Mockito.mock(HttpSession.class);
final Object sessionMutex = new Object();
Mockito.when(request.getLocale()).thenReturn(new Locale("de_CH"));
Mockito.when(request.getHeader("User-Agent")).thenReturn("dummy");
Mockito.when(request.getSession()).thenReturn(httpSession);
Mockito.when(request.getSession(false)).thenReturn(httpSession);
Mockito.when(httpSession.getAttribute(HttpSessionMutex.SESSION_MUTEX_ATTRIBUTE_NAME)).thenReturn(sessionMutex);
final ISessionStore sessionStore = BEANS.get(HttpSessionHelper.class).getSessionStore(httpSession);
Mockito.when(httpSession.getAttribute(HttpSessionHelper.SESSION_STORE_ATTRIBUTE_NAME)).thenReturn(sessionStore);
Mockito.doAnswer(new Answer<Void>() {
@Override
public Void answer(InvocationOnMock invocation) {
((HttpSessionBindingListener) sessionStore).valueUnbound(null);
return null;
}
}).when(httpSession).invalidate();
JSONObject jsonReqObj = new JSONObject();
jsonReqObj.put(JsonStartupRequest.PROP_CLIENT_SESSION_ID, clientSessionId);
jsonReqObj.put("startup", true);
JsonStartupRequest jsonStartupRequest = new JsonStartupRequest(new JsonRequest(jsonReqObj));
IUiSession uiSession = new TestEnvironmentUiSession();
uiSession.init(request, response, jsonStartupRequest);
return uiSession;
}
Aggregations