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

📄 displaytagcase.java

📁 分页标签
💻 JAVA
字号:
package org.displaytag.test;import java.io.File;import java.net.URL;import java.net.URLDecoder;import java.util.Hashtable;import junit.framework.TestCase;import org.apache.commons.lang.ArrayUtils;import org.apache.commons.lang.StringUtils;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import com.meterware.httpunit.HttpUnitOptions;import com.meterware.servletunit.ServletRunner;/** * Base TestCase class for tests. * @author Fabrizio Giustina * @version $Revision: 1108 $ ($Author: fgiust $) */public abstract class DisplaytagCase extends TestCase{    /**     * Context mapped to the test application.     */    public static final String CONTEXT = "/context";    /**     * logger.     */    protected final Log log = LogFactory.getLog(getClass());    /**     * HttpUnit ServletRunner.     */    protected ServletRunner runner;    /**     * Returns the tested jsp name.     * @return jsp name     */    public abstract String getJspName();    /**     * Runs the test.     * @param jspName jsp name, with full path     * @throws Exception any axception thrown during test.     */    public abstract void doTest(String jspName) throws Exception;    /**     * run the test with the non-el tld.     * @throws Exception any axception thrown during test.     */    public void test11() throws Exception    {        doTest("http://localhost" + CONTEXT + "/standard/" + getJspName());    }    /**     * run the test with the el tld.     * @throws Exception any axception thrown during test.     */    public void testEL() throws Exception    {        doTest("http://localhost" + CONTEXT + "/el/" + getJspName());    }    /**     * @see junit.framework.TestCase#setUp()     */    protected void setUp() throws Exception    {        // need to pass a web.xml file to setup servletunit working directory        ClassLoader classLoader = getClass().getClassLoader();        URL webXmlUrl = classLoader.getResource("WEB-INF/web.xml");        String path = URLDecoder.decode(webXmlUrl.getFile(), "UTF-8");        HttpUnitOptions.setDefaultCharacterSet("utf-8");        System.setProperty("file.encoding", "utf-8");        // start servletRunner        runner = new ServletRunner(new File(path), CONTEXT);        Hashtable params = new Hashtable();        params.put("javaEncoding", "utf-8");        runner.registerServlet("*.jsp", "org.apache.jasper.servlet.JspServlet", params);        log.debug("ServletRunner setup OK");        super.setUp();    }    /**     * @see junit.framework.TestCase#tearDown()     */    protected void tearDown() throws Exception    {        // shutdown servlet engine        runner.shutDown();        super.tearDown();    }    /**     * @see junit.framework.TestCase#getName()     */    public String getName()    {        return getClass().getName() + "." + super.getName() + " (" + getJspName() + ")";    }    /**     * Compare 2 arrays of string ignoring order.     * @param message message to output in case of failure     * @param expected expected array     * @param actual actual array     */    public void assertEqualsIgnoreOrder(String message, String[] expected, String[] actual)    {        if (expected.length != actual.length)        {            fail(message                + " Wrong number of values, expected "                + expected.length                + " ("                + ArrayUtils.toString(expected)                + "), actual "                + actual.length                + " ("                + ArrayUtils.toString(actual)                + ")");        }        outer : for (int j = 0; j < expected.length; j++)        {            String exp = expected[j];            for (int q = 0; q < actual.length; q++)            {                if (StringUtils.equals(exp, actual[q]))                {                    continue outer;                }            }            fail(message + " Expected value \"" + exp + "\" not found in actual array: " + ArrayUtils.toString(actual));        }    }}

⌨️ 快捷键说明

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