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

📄 actiontest.xdt

📁 appfuse1.9.4开发的一个简单的人事管理,简单的增删改查,修正了display tag乱码问题,解压缩后cmd进入该目录ant setup 部署到tomcat即可在http://localho
💻 XDT
字号:
<XDtTagDef:tagDef namespace="Form" handler="org.example.antbook.xdoclet.FormTagsHandler"/><XDtTagDef:tagDef namespace="MethodEx" handler="org.example.antbook.xdoclet.MethodExTagsHandler"/>package <XDtForm:parentPackageName/>.webapp.action;

import <XDtConfig:configParameterValue paramName="basePackageName"/>.webapp.action.BaseStrutsTestCase;
import <XDtConfig:configParameterValue paramName="basePackageName"/>.Constants;
import <XDtForm:parentPackageName/>.webapp.form.<XDtForm:className/>Form;

public class <XDtForm:className/>ActionTest extends BaseStrutsTestCase {

    public <XDtForm:className/>ActionTest(String name) {
        super(name);
    }

    public void testAdd() throws Exception {
        setRequestPathInfo("/save<XDtForm:className/>");
        addRequestParameter("method", "Save");

        <XDtForm:className/>Form <XDtForm:classNameLower/>Form = new <XDtForm:className/>Form();
        // set required fields
        <XDtMethodEx:forAllMethods>
        <XDtMethodEx:ifMethodTagValueEquals tagName="hibernate.property" paramName="not-null" value="true">
        <XDtMethodEx:formSetterWithValue/>
        </XDtMethodEx:ifMethodTagValueEquals>
        <XDtMethodEx:ifMethodTagValueEquals tagName="hibernate.id" paramName="generator-class" value="assigned">
        <XDtForm:classNameLower/>Form.<XDtMethodEx:setterMethod/>("4");
        </XDtMethodEx:ifMethodTagValueEquals>
        </XDtMethodEx:forAllMethods>

        request.setAttribute(Constants.<XDtForm:classNameUpper/>_KEY, <XDtForm:classNameLower/>Form);

        actionPerform();

        verifyNoActionErrors();
        verifyForward("search");
    }

    public void testSearch() {
        setRequestPathInfo("/<XDtForm:classNameLower/>s");
        addRequestParameter("method", "Search");

        actionPerform();

        verifyNoActionErrors();
        verifyForward("list");
        assertNotNull(request.getAttribute(Constants.<XDtForm:classNameUpper/>_LIST));
    }

    public void testEdit() throws Exception {
        setRequestPathInfo("/edit<XDtForm:className/>");
        addRequestParameter("method", "Edit");
        addRequestParameter("<XDtMethodEx:idField getType="propertyName"/>", "1");

        actionPerform();

        verifyNoActionErrors();
        verifyForward("edit");
        assertNotNull(request.getAttribute(Constants.<XDtForm:classNameUpper/>_KEY));

    }

    public void testSave() throws Exception {
        setRequestPathInfo("/edit<XDtForm:className/>");
        addRequestParameter("method", "Edit");
        addRequestParameter("<XDtMethodEx:idField getType="propertyName"/>", "1");

        actionPerform();

        <XDtForm:className/>Form <XDtForm:classNameLower/>Form = (<XDtForm:className/>Form) request.getAttribute(Constants.<XDtForm:classNameUpper/>_KEY);
        assertNotNull(<XDtForm:classNameLower/>Form);

        setRequestPathInfo("/save<XDtForm:className/>");
        addRequestParameter("method", "Save");

        // update the form's required string fields and add it back to the request
        <XDtMethodEx:forAllMethods>
        <XDtMethodEx:ifMethodTagValueEquals tagName="hibernate.property" paramName="not-null" value="true">
        <XDtMethodEx:formSetterWithValue/>
        </XDtMethodEx:ifMethodTagValueEquals>
        </XDtMethodEx:forAllMethods>

        request.setAttribute(Constants.<XDtForm:classNameUpper/>_KEY, <XDtForm:classNameLower/>Form);

        actionPerform();

        verifyNoActionErrors();
        verifyForward("edit");

        // verify success messages
        verifyActionMessages(new String[] {"<XDtForm:classNameLower/>.updated"});

    }

    public void testRemove() throws Exception {
        setRequestPathInfo("/edit<XDtForm:className/>");
        addRequestParameter("method", "Delete");
        addRequestParameter("<XDtMethodEx:idField getType="propertyName"/>", "2");

        actionPerform();

        verifyNoActionErrors();
        verifyForward("search");
    }
}

⌨️ 快捷键说明

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