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

📄 imagecaptchaservlettest.java

📁 anewssystem新闻发布系统集成使用了spring hibernate freemarker EXTJS等开源框架 可以作为学习参考
💻 JAVA
字号:
package anni.core.security.jcaptcha;

import java.awt.image.BufferedImage;

import java.io.*;

import java.util.*;

import javax.servlet.*;
import javax.servlet.http.*;

import anni.core.security.resource.*;

import com.octo.captcha.service.image.ImageCaptchaService;

import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;

import junit.framework.TestCase;
import static org.easymock.EasyMock.*;

import org.easymock.classextension.EasyMock;

import org.springframework.web.context.WebApplicationContext;


public class ImageCaptchaServletTest extends TestCase {
    ImageCaptchaServlet servlet = null;

    @Override
    protected void setUp() {
        servlet = new ImageCaptchaServlet();
    }

    @Override
    protected void tearDown() {
    }

    public void testTrue() {
        assertTrue(true);
    }

    public void testInit() throws Exception {
        ServletConfig mockConfig = createMock(ServletConfig.class);

        expect(mockConfig.getInitParameter("captchaServiceName"))
            .andReturn("");
        replay(mockConfig);

        servlet.init(mockConfig);
        verify();
    }

    public void testInit2() throws Exception {
        ServletConfig mockConfig = createMock(ServletConfig.class);

        expect(mockConfig.getInitParameter("captchaServiceName"))
            .andReturn("captchaService").times(2);
        replay(mockConfig);

        servlet.init(mockConfig);
        verify();
    }

    public void testDoGet() throws Exception {
        ServletConfig mockConfig = createMock(ServletConfig.class);
        ServletContext mockContext = createMock(ServletContext.class);
        HttpServletRequest request = createMock(HttpServletRequest.class);
        HttpServletResponse response = createMock(HttpServletResponse.class);
        WebApplicationContext wac = createMock(WebApplicationContext.class);
        HttpSession mockSession = createMock(HttpSession.class);
        ImageCaptchaService mockImageCaptchaService = createMock(ImageCaptchaService.class);

        BufferedImage bi = new BufferedImage(100, 100,
                BufferedImage.TYPE_INT_RGB);
        TestServletOutputStream tsos = new TestServletOutputStream();

        expect(mockConfig.getServletContext()).andReturn(mockContext)
            .anyTimes();
        expect(mockConfig.getInitParameter("captchaServiceName"))
            .andReturn("captchaService").anyTimes();
        expect(mockContext.getAttribute(
                "org.springframework.web.context.WebApplicationContext.ROOT"))
            .andReturn(wac);
        expect(request.getSession()).andReturn(mockSession);
        expect(wac.getBean("captchaService"))
            .andReturn(mockImageCaptchaService);
        expect(mockSession.getId()).andReturn("mock session id");
        expect(request.getLocale()).andReturn(Locale.CHINA);
        expect(mockImageCaptchaService.getImageChallengeForID(
                "mock session id", Locale.CHINA)).andReturn(bi);
        response.setHeader("Cache-Control", "no-store");
        response.setHeader("Pragma", "no-cache");
        response.setDateHeader("Expires", 0);
        response.setContentType("image/jpeg");
        expect(response.getOutputStream()).andReturn(tsos);

        replay(mockConfig);
        replay(mockContext);
        replay(request);
        replay(response);
        replay(wac);
        replay(mockSession);
        replay(mockImageCaptchaService);

        servlet.init(mockConfig);
        servlet.doGet(request, response);
        verify();
    }

    class TestServletOutputStream extends ServletOutputStream {
        public void write(int b) {
        }
    }
}

⌨️ 快捷键说明

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