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

📄 captchaentrypointtests.java

📁 acegi构造安全的java系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.acegisecurity.captcha;import junit.framework.TestCase;import org.acegisecurity.MockPortResolver;import org.acegisecurity.util.PortMapperImpl;import org.springframework.mock.web.MockHttpServletRequest;import org.springframework.mock.web.MockHttpServletResponse;import java.net.URLEncoder;import java.util.HashMap;import java.util.Map;/** * Tests {@link CaptchaEntryPoint}. * * @author marc antoine Garrigue * @version $Id: CaptchaEntryPointTests.java 1496 2006-05-23 13:38:33Z benalex $ */public class CaptchaEntryPointTests extends TestCase {    //~ Methods ========================================================================================================    public static void main(String[] args) {        junit.textui.TestRunner.run(CaptchaEntryPointTests.class);    }    // ~ Methods    // ================================================================    public final void setUp() throws Exception {        super.setUp();    }    public void testDetectsMissingCaptchaFormUrl() throws Exception {        CaptchaEntryPoint ep = new CaptchaEntryPoint();        ep.setPortMapper(new PortMapperImpl());        ep.setPortResolver(new MockPortResolver(80, 443));        try {            ep.afterPropertiesSet();            fail("Should have thrown IllegalArgumentException");        } catch (IllegalArgumentException expected) {            assertEquals("captchaFormUrl must be specified", expected.getMessage());        }    }    public void testDetectsMissingPortMapper() throws Exception {        CaptchaEntryPoint ep = new CaptchaEntryPoint();        ep.setCaptchaFormUrl("xxx");        ep.setPortMapper(null);        try {            ep.afterPropertiesSet();            fail("Should have thrown IllegalArgumentException");        } catch (IllegalArgumentException expected) {            assertEquals("portMapper must be specified", expected.getMessage());        }    }    public void testDetectsMissingPortResolver() throws Exception {        CaptchaEntryPoint ep = new CaptchaEntryPoint();        ep.setCaptchaFormUrl("xxx");        ep.setPortResolver(null);        try {            ep.afterPropertiesSet();            fail("Should have thrown IllegalArgumentException");        } catch (IllegalArgumentException expected) {            assertEquals("portResolver must be specified", expected.getMessage());        }    }    public void testGettersSetters() {        CaptchaEntryPoint ep = new CaptchaEntryPoint();        ep.setCaptchaFormUrl("/hello");        ep.setPortMapper(new PortMapperImpl());        ep.setPortResolver(new MockPortResolver(8080, 8443));        assertEquals("/hello", ep.getCaptchaFormUrl());        assertTrue(ep.getPortMapper() != null);        assertTrue(ep.getPortResolver() != null);        assertEquals("original_requestUrl", ep.getOriginalRequestUrlParameterName());        ep.setOriginalRequestUrlParameterName("Z");        assertEquals("Z", ep.getOriginalRequestUrlParameterName());        assertEquals(true, ep.isIncludeOriginalRequest());        ep.setIncludeOriginalRequest(false);        assertEquals(false, ep.isIncludeOriginalRequest());        assertEquals(false, ep.isOutsideWebApp());        ep.setOutsideWebApp(true);        assertEquals(true, ep.isOutsideWebApp());        ep.setForceHttps(false);        assertFalse(ep.getForceHttps());        ep.setForceHttps(true);        assertTrue(ep.getForceHttps());    }    public void testHttpsOperationFromOriginalHttpUrl()        throws Exception {        MockHttpServletRequest request = new MockHttpServletRequest();        request.setRequestURI("/some_path");        request.setScheme("http");        request.setServerName("www.example.com");        request.setContextPath("/bigWebApp");        request.setServerPort(80);        MockHttpServletResponse response = new MockHttpServletResponse();        CaptchaEntryPoint ep = new CaptchaEntryPoint();        ep.setIncludeOriginalRequest(false);        ep.setCaptchaFormUrl("/hello");        ep.setPortMapper(new PortMapperImpl());        ep.setForceHttps(true);        ep.setPortMapper(new PortMapperImpl());        ep.setPortResolver(new MockPortResolver(80, 443));        ep.afterPropertiesSet();        ep.commence(request, response);        assertEquals("https://www.example.com/bigWebApp/hello", response.getRedirectedUrl());        request.setServerPort(8080);        response = new MockHttpServletResponse();        ep.setPortResolver(new MockPortResolver(8080, 8443));        ep.commence(request, response);        assertEquals("https://www.example.com:8443/bigWebApp/hello", response.getRedirectedUrl());        // Now test an unusual custom HTTP:HTTPS is handled properly        request.setServerPort(8888);        response = new MockHttpServletResponse();        ep.commence(request, response);        assertEquals("https://www.example.com:8443/bigWebApp/hello", response.getRedirectedUrl());        PortMapperImpl portMapper = new PortMapperImpl();        Map map = new HashMap();        map.put("8888", "9999");        portMapper.setPortMappings(map);        response = new MockHttpServletResponse();        ep = new CaptchaEntryPoint();        ep.setCaptchaFormUrl("/hello");        ep.setPortMapper(new PortMapperImpl());        ep.setForceHttps(true);        ep.setPortMapper(portMapper);        ep.setPortResolver(new MockPortResolver(8888, 9999));        ep.setIncludeOriginalRequest(false);        ep.afterPropertiesSet();        ep.commence(request, response);        assertEquals("https://www.example.com:9999/bigWebApp/hello", response.getRedirectedUrl());    }    public void testHttpsOperationFromOriginalHttpsUrl()        throws Exception {        MockHttpServletRequest request = new MockHttpServletRequest();        request.setRequestURI("/some_path");        request.setScheme("https");        request.setServerName("www.example.com");        request.setContextPath("/bigWebApp");        request.setServerPort(443);        MockHttpServletResponse response = new MockHttpServletResponse();        CaptchaEntryPoint ep = new CaptchaEntryPoint();        ep.setIncludeOriginalRequest(false);        ep.setCaptchaFormUrl("/hello");        ep.setPortMapper(new PortMapperImpl());        ep.setForceHttps(true);        ep.setPortMapper(new PortMapperImpl());        ep.setPortResolver(new MockPortResolver(80, 443));        ep.afterPropertiesSet();        ep.commence(request, response);        assertEquals("https://www.example.com/bigWebApp/hello", response.getRedirectedUrl());        request.setServerPort(8443);        response = new MockHttpServletResponse();

⌨️ 快捷键说明

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