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

📄 methodfactorytest.java

📁 不管是测试驱动开发或者是其它的开发模式
💻 JAVA
字号:
/*  Copyright (c) 2000-2004 jMock.org
 */
package test.jmock.core.testsupport;

import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import junit.framework.TestCase;


public class MethodFactoryTest extends TestCase
{
    private class ReturnType
    {
    }

    static final String METHOD_NAME = "METHOD_NAME";
    static final Class[] ARG_TYPES = new Class[]{int.class, Object.class, double[].class, String[].class};
    static final Class RETURN_TYPE = ReturnType.class;
    static final Class[] EXCEPTION_TYPES = new Class[]{InterruptedException.class};

    MethodFactory factory;


    public void setUp() {
        factory = new MethodFactory();
    }

    public void testCreatesMethodInNewNamedClass() {
        Method method = factory.newMethod(METHOD_NAME, ARG_TYPES, RETURN_TYPE, EXCEPTION_TYPES);

        assertTrue("is public", Modifier.isPublic(method.getModifiers()));
        assertEquals("invokedMethod name", METHOD_NAME, method.getName());
        assertAllSame("arg types", ARG_TYPES, method.getParameterTypes());
        assertSame("return type", RETURN_TYPE, method.getReturnType());
        assertAllSame("exception types", EXCEPTION_TYPES, method.getExceptionTypes());
    }

    public void testCreatesMethodThatReturnsAType() {
        Method method = factory.newMethodReturning(RETURN_TYPE);

        assertSame("return type", RETURN_TYPE, method.getReturnType());
    }

    private void assertAllSame( String message, Class[] expected, Class[] actual ) {
        assertEquals(message + ": number of elements ", expected.length, actual.length);

        for (int i = 0; i < expected.length; i++) {
            assertSame(message + ": element " + i, expected[i], actual[i]);
        }
    }
}

⌨️ 快捷键说明

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