formtest.xdt

来自「appfuse一套结合STRUTS+SPRING+HIBERNATE的框架」· XDT 代码 · 共 76 行

XDT
76
字号
<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.BasePageTestCase;
import <XDtPackage:packageName/>.<XDtForm:className/>;

public class <XDtForm:className/>FormTest extends BasePageTestCase {
    private <XDtForm:className/>Form bean;

    protected void setUp() throws Exception {    
        super.setUp();
        bean = (<XDtForm:className/>Form) getManagedBean("<XDtForm:classNameLower/>Form");
    }

    protected void tearDown() throws Exception {
        super.tearDown();
        bean = null;
    }

    public void testAdd() throws Exception {
        <XDtForm:className/> <XDtForm:classNameLower/> = new <XDtForm:className/>();

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

        bean.set<XDtForm:className/>(<XDtForm:classNameLower/>);

        assertEquals(bean.save(), "list");
        assertFalse(bean.hasErrors());
    }

    public void testEdit() throws Exception {
        log.debug("testing edit...");
        bean.<XDtMethodEx:idField getType="setterName"/>("1");

        assertEquals(bean.edit(), "edit");
        assertNotNull(bean.get<XDtForm:className/>());
        assertFalse(bean.hasErrors());
    }

    public void testSave() {
        bean.<XDtMethodEx:idField getType="setterName"/>("1");

        assertEquals(bean.edit(), "edit");
        assertNotNull(bean.get<XDtForm:className/>());
        <XDtForm:className/> <XDtForm:classNameLower/> = bean.get<XDtForm:className/>();

        // update required string fields 
        <XDtMethodEx:forAllMethods>
        <XDtMethodEx:ifMethodTagValueEquals tagName="hibernate.property" paramName="not-null" value="true">
        <XDtMethodEx:setterWithValue/>
        </XDtMethodEx:ifMethodTagValueEquals>
        </XDtMethodEx:forAllMethods>

        bean.set<XDtForm:className/>(<XDtForm:classNameLower/>);

        assertEquals(bean.save(), "edit");
        assertFalse(bean.hasErrors());
    }

    public void testRemove() throws Exception {
        <XDtForm:className/> <XDtForm:classNameLower/> = new <XDtForm:className/>();
        <XDtForm:classNameLower/>.<XDtMethodEx:idField getType="setterName"/>(new <XDtMethodEx:idField getType="propertyType"/>("2"));
        bean.set<XDtForm:className/>(<XDtForm:classNameLower/>);

        assertEquals(bean.delete(), "list");
        assertFalse(bean.hasErrors());
    }
}

⌨️ 快捷键说明

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