/* ================================================================== * Created [2009-4-27 下午11:32:55] by Jon.King * ================================================================== * TSS * ================================================================== * mailTo:jinpujun@hotmail.com * Copyright (c) Jon.King, 2009-2012 * ================================================================== */ package com.jinhe.tss.core.sso.context; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import junit.framework.TestCase; import org.easymock.EasyMock; import org.easymock.IMocksControl; import com.jinhe.tss.core.sso.AnonymousOperator; import com.jinhe.tss.core.sso.IdentityCard; public class ContextTest extends TestCase { private IMocksControl mocksControl; private HttpServletRequest request; private HttpSession session; protected void setUp() throws Exception { mocksControl = EasyMock.createControl(); request = mocksControl.createMock(HttpServletRequest.class); session = mocksControl.createMock(HttpSession.class); super.setUp(); } /** * Test method for * {@link com.jinhe.tss.core.sso.context.Context#getRequestContext()}. */ public final void testGetRequestContext4MultiThread() { EasyMock.expect(request.getSession()).andReturn(session).times(0, 8); EasyMock.expect(request.getHeader(RequestContext.USER_CLIENT_IP)).andReturn("127.0.0.1").times(0, 3); EasyMock.expect(request.getContextPath()).andReturn("/tss"); EasyMock.expect(request.getRequestURI()).andReturn("/tss/login.do"); EasyMock.expect(session.getId()).andReturn("1").times(0, 3); EasyMock.expect(session.getAttribute(RequestContext.USER_TOKEN)).andReturn("token").times(0, 3); IdentityCard identityCard = new IdentityCard("token", AnonymousOperator.anonymous); EasyMock.expect(session.getAttribute(RequestContext.IDENTITY_CARD)).andReturn(identityCard).times(0, 3); EasyMock.replay(request); // 让mock 准备重放记录的数据 // EasyMock.replay(session); Context.initRequestContext(request); Thread t = new ContextSupportThread() { public void runSupportContext() { TestCase.assertNotNull(Context.getToken()); } }; t.start(); } }