⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testrequestutils.java

📁 jakarta-struts-1.2.4-src
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
                     "/context/forward",
                     result);

        // redirect=true, contextRelative=true
        forward = moduleConfig.findForwardConfig("contextRedirect");
        assertNotNull("contextRedirect found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextRedirect computed", result);
        assertEquals("contextRedirct value",
                     "/context/redirect",
                     result);

        // noslash, contextRelative=false
        forward = moduleConfig.findForwardConfig("moduleNoslash");
        assertNotNull("moduleNoslash found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("moduleNoslash computed", result);
        assertEquals("moduleNoslash value",
                     "/module/noslash",
                     result);

        // noslash, contextRelative=true
        forward = moduleConfig.findForwardConfig("contextNoslash");
        assertNotNull("contextNoslash found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextNoslash computed", result);
        assertEquals("contextNoslash value",
                     "/context/noslash",
                     result);

    }


    // Second module (default forwardPattern)
    public void testForwardURL2() {

        request.setAttribute(Globals.MODULE_KEY, moduleConfig2);
        request.setPathElements("/myapp", "/2/action.do", null, null);
        ForwardConfig forward = null;
        String result = null;

        // redirect=false, contextRelative=false
        forward = moduleConfig2.findForwardConfig("moduleForward");
        assertNotNull("moduleForward found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("moduleForward computed", result);
        assertEquals("moduleForward value",
                     "/2/module/forward",
                     result);

        // redirect=true, contextRelative=false
        forward = moduleConfig2.findForwardConfig("moduleRedirect");
        assertNotNull("moduleRedirect found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("moduleRedirect computed", result);
        assertEquals("moduleRedirect value",
                     "/2/module/redirect",
                     result);

        // redirect=false, contextRelative=true
        forward = moduleConfig2.findForwardConfig("contextForward");
        assertNotNull("contextForward found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextForward computed", result);
        assertEquals("contextForward value",
                     "/context/forward",
                     result);

        // redirect=true, contextRelative=true
        forward = moduleConfig2.findForwardConfig("contextRedirect");
        assertNotNull("contextRedirect found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextRedirect computed", result);
        assertEquals("contextRedirct value",
                     "/context/redirect",
                     result);

        // noslash, contextRelative=false
        forward = moduleConfig2.findForwardConfig("moduleNoslash");
        assertNotNull("moduleNoslash found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("moduleNoslash computed", result);
        assertEquals("moduleNoslash value",
                     "/2/module/noslash",
                     result);

        // noslash, contextRelative=true
        forward = moduleConfig2.findForwardConfig("contextNoslash");
        assertNotNull("contextNoslash found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextNoslash computed", result);
        assertEquals("contextNoslash value",
                     "/context/noslash",
                     result);

    }


    // Third module (custom forwardPattern)
    public void testForwardURL3() {

        request.setAttribute(Globals.MODULE_KEY, moduleConfig3);
        request.setPathElements("/myapp", "/3/action.do", null, null);
        ForwardConfig forward = null;
        String result = null;

        // redirect=false, contextRelative=false
        forward = moduleConfig3.findForwardConfig("moduleForward");
        assertNotNull("moduleForward found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("moduleForward computed", result);
        assertEquals("moduleForward value",
                     "/forwarding/3/module/forward",
                     result);

        // redirect=true, contextRelative=false
        forward = moduleConfig3.findForwardConfig("moduleRedirect");
        assertNotNull("moduleRedirect found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("moduleRedirect computed", result);
        assertEquals("moduleRedirect value",
                     "/forwarding/3/module/redirect",
                     result);

        // redirect=false, contextRelative=true
        forward = moduleConfig3.findForwardConfig("contextForward");
        assertNotNull("contextForward found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextForward computed", result);
        assertEquals("contextForward value",
                     "/context/forward",
                     result);

        // redirect=true, contextRelative=true
        forward = moduleConfig3.findForwardConfig("contextRedirect");
        assertNotNull("contextRedirect found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextRedirect computed", result);
        assertEquals("contextRedirct value",
                     "/context/redirect",
                     result);

        // noslash, contextRelative=false
        forward = moduleConfig3.findForwardConfig("moduleNoslash");
        assertNotNull("moduleNoslash found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("moduleNoslash computed", result);
        assertEquals("moduleNoslash value",
                     "/forwarding/3/module/noslash",
                     result);

        // noslash, contextRelative=true
        forward = moduleConfig3.findForwardConfig("contextNoslash");
        assertNotNull("contextNoslash found", forward);
        result = RequestUtils.forwardURL(request, forward, null);
        assertNotNull("contextNoslash computed", result);
        assertEquals("contextNoslash value",
                     "/context/noslash",
                     result);

    }


	// Cross module forwards
	public void testForwardURLa() {

		request.setAttribute(Globals.MODULE_KEY, moduleConfig);
		request.setPathElements("/myapp", "/action.do", null, null);
		ForwardConfig forward = null;
		String result = null;

		// redirect=false, contextRelative=false, link to module 3
		forward = moduleConfig3.findForwardConfig("moduleForward");
		assertNotNull("moduleForward found", forward);
		result = RequestUtils.forwardURL(request, forward, moduleConfig3);
		assertNotNull("moduleForward computed", result);
		assertEquals("moduleForward value",
					 "/forwarding/3/module/forward",
					 result);

		// redirect=true, contextRelative=false, link to module 3
		forward = moduleConfig3.findForwardConfig("moduleRedirect");
		assertNotNull("moduleRedirect found", forward);
		result = RequestUtils.forwardURL(request, forward, moduleConfig3);
		assertNotNull("moduleRedirect computed", result);
		assertEquals("moduleRedirect value",
					 "/forwarding/3/module/redirect",
					 result);

		// redirect=false, contextRelative=true, link to module 3
		forward = moduleConfig3.findForwardConfig("contextForward");
		assertNotNull("contextForward found", forward);
		result = RequestUtils.forwardURL(request, forward, moduleConfig3);
		assertNotNull("contextForward computed", result);
		assertEquals("contextForward value",
					 "/context/forward",
					 result);

		// redirect=true, contextRelative=true, link to module 3
		forward = moduleConfig3.findForwardConfig("contextRedirect");
		assertNotNull("contextRedirect found", forward);
		result = RequestUtils.forwardURL(request, forward, moduleConfig3);
		assertNotNull("contextRedirect computed", result);
		assertEquals("contextRedirct value",
					 "/context/redirect",
					 result);

		// noslash, contextRelative=false, link to module 3
		forward = moduleConfig3.findForwardConfig("moduleNoslash");
		assertNotNull("moduleNoslash found", forward);
		result = RequestUtils.forwardURL(request, forward, moduleConfig3);
		assertNotNull("moduleNoslash computed", result);
		assertEquals("moduleNoslash value",
					 "/forwarding/3/module/noslash",
					 result);

		// noslash, contextRelative=true, link to module 3
		forward = moduleConfig3.findForwardConfig("contextNoslash");
		assertNotNull("contextNoslash found", forward);
		result = RequestUtils.forwardURL(request, forward, moduleConfig3);
		assertNotNull("contextNoslash computed", result);
		assertEquals("contextNoslash value",
					 "/context/noslash",
					 result);

	}


    // -------------------------------------------------------------- pageURL()


    // Default module (default pagePattern)
    public void testPageURL1() {

        request.setAttribute(Globals.MODULE_KEY, moduleConfig);
        request.setPathElements("/myapp", "/action.do", null, null);
        String page = null;
        String result = null;

        // Straight substitution
        page = "/mypages/index.jsp";
        result = RequestUtils.pageURL(request, page);
        assertNotNull("straight sub found", result);
        assertEquals("straight sub value",
                     "/mypages/index.jsp", result);


    }


    // Second module (default pagePattern)
    public void testPageURL2() {

        request.setAttribute(Globals.MODULE_KEY, moduleConfig2);
        request.setPathElements("/myapp", "/2/action.do", null, null);
        String page = null;
        String result = null;

        // Straight substitution
        page = "/mypages/index.jsp";
        result = RequestUtils.pageURL(request, page);
        assertNotNull("straight sub found", result);
        assertEquals("straight sub value",
                     "/2/mypages/index.jsp", result);


    }


    // Third module (custom pagePattern)
    public void testPageURL3() {

        request.setAttribute(Globals.MODULE_KEY, moduleConfig3);
        request.setPathElements("/myapp", "/3/action.do", null, null);
        String page = null;
        String result = null;

        // Straight substitution
        page = "/mypages/index.jsp";
        result = RequestUtils.pageURL(request, page);
        assertNotNull("straight sub found", result);
        assertEquals("straight sub value",
                     "/paging/3/mypages/index.jsp", result);


    }


    // ----------------------------------------------------------- requestURL()


    public void testRequestURL() {

        request.setPathElements("/myapp", "/foo.do", null, null);
        String url = null;
        try {
            url = RequestUtils.requestURL(request).toString();
        } catch (MalformedURLException e) {
            fail("MalformedURLException: " + e);
        }
        assertNotNull("URL was returned", url);
        assertEquals("URL value",
                     "http://localhost:8080/myapp/foo.do",
                     url);

    }


    // ---------------------------------------------------- selectApplication()


    // Map to the default module -- direct
    public void testSelectApplication1a() {

        request.setPathElements("/myapp", "/noform.do", null, null);
        ModuleUtils.getInstance().selectModule(request, context);
        ModuleConfig moduleConfig = (ModuleConfig)
            request.getAttribute(Globals.MODULE_KEY);
        assertNotNull("Selected a module", moduleConfig);
        assertEquals("Selected correct module",
                     "", moduleConfig.getPrefix());
        // FIXME - check module resources?

    }


    // Map to the second module -- direct
    public void testSelectApplication1b() {
        String[] prefixes = { "/1", "/2" };
        context.setAttribute(Globals.MODULE_PREFIXES_KEY, prefixes);    
        request.setPathElements("/myapp", "/2/noform.do", null, null);
        
        ModuleUtils.getInstance().selectModule(request, context);
        ModuleConfig moduleConfig = (ModuleConfig)
            request.getAttribute(Globals.MODULE_KEY);
        assertNotNull("Selected a module", moduleConfig);
        assertEquals("Selected correct module",
                     "/2", moduleConfig.getPrefix());
        // FIXME - check module resources?

    }


    // Map to the default module -- include
    public void testSelectApplication2a() {

        request.setPathElements("/myapp", "/2/noform.do", null, null);
        request.setAttribute(RequestProcessor.INCLUDE_SERVLET_PATH,
                             "/noform.do");
        ModuleUtils.getInstance().selectModule(request, context);
        ModuleConfig moduleConfig = (ModuleConfig)
            request.getAttribute(Globals.MODULE_KEY);
        assertNotNull("Selected an application", moduleConfig);
        assertEquals("Selected correct application",
                     "", moduleConfig.getPrefix());
        // FIXME - check application resources?

    }


    // Map to the second module -- include
    public void testSelectApplication2b() {
        String[] prefixes = { "/1", "/2" };
        context.setAttribute(Globals.MODULE_PREFIXES_KEY, prefixes);    
        request.setPathElements("/myapp", "/noform.do", null, null);
        request.setAttribute(RequestProcessor.INCLUDE_SERVLET_PATH,
                             "/2/noform.do");
        ModuleUtils.getInstance().selectModule(request, context);
        ModuleConfig moduleConfig = (ModuleConfig)
            request.getAttribute(Globals.MODULE_KEY);
        assertNotNull("Selected a module", moduleConfig);
        assertEquals("Selected correct module",
                     "/2", moduleConfig.getPrefix());
        // FIXME - check application resources?

    }


    // ------------------------------------------------------------ serverURL()


    // Basic test on values in mock objects
    public void testServerURL() {

        String url = null;
        try {
            url = RequestUtils.serverURL(request).toString();
        } catch (MalformedURLException e) {
            fail("Threw MalformedURLException: " + e);
        }
        assertNotNull("serverURL is present", url);
        assertEquals("serverURL value",
                     "http://localhost:8080",
                     url);

    }


}

⌨️ 快捷键说明

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