testusercontainer.java

来自「A Java web application, based on Struts 」· Java 代码 · 共 56 行

JAVA
56
字号
package net.sf.irunninglog.servlet;

import javax.servlet.http.HttpSessionBindingEvent;

import net.sf.irunninglog.junit.BaseTestCase;
import net.sf.irunninglog.junit.MockHttpServletRequest;
import net.sf.irunninglog.junit.MockHttpSession;
import net.sf.irunninglog.junit.MockPrincipal;

public class TestUserContainer extends BaseTestCase {

    public TestUserContainer(String arg0) {
        super(arg0);
    }

    public void testGetUserContainer() {
        try {
            UserContainer.getUserContainer(null);
            failTest();
        } catch (Exception ex) {
            assertTrue(true);
        }

        try {
            UserContainer.getUserContainer(new MockHttpServletRequest());
            failTest();
        } catch (Exception ex) {
            assertTrue(true);
        }

        MockHttpServletRequest request = new MockHttpServletRequest(new MockPrincipal(), new MockHttpSession());
        UserContainer container = UserContainer.getUserContainer(request);
        assertNotNull(container);
        assertNotNull(container.getUserName());
    }

    public void testSessionBinding() {
        MockHttpSession session = new MockHttpSession();
        MockHttpServletRequest request = new MockHttpServletRequest(new MockPrincipal(), session);
        UserContainer container = UserContainer.getUserContainer(request);
        assertNotNull(container.getCRUDService());
        assertNotNull(container.getQueryService());
        assertNotNull(container.getUserName());

        container.valueBound(new HttpSessionBindingEvent(session, null));
        assertNotNull(container.getCRUDService());
        assertNotNull(container.getQueryService());
        assertNotNull(container.getUserName());

        container.valueUnbound(new HttpSessionBindingEvent(session, null));
        assertNull(container.getCRUDService());
        assertNull(container.getQueryService());
        assertNotNull(container.getUserName());
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?