testrundataformbean.java

来自「A Java web application, based on Struts 」· Java 代码 · 共 81 行

JAVA
81
字号
package net.sf.irunninglog.servlet.formbean;

import java.util.Calendar;
import java.util.GregorianCalendar;

import net.sf.irunninglog.canonical.RunData;
import net.sf.irunninglog.junit.MockHttpServletRequest;
import net.sf.irunninglog.junit.MockHttpSession;
import net.sf.irunninglog.junit.MockPrincipal;
import net.sf.irunninglog.util.ConstantValues;
import net.sf.irunninglog.util.Conversions;

public class TestRunDataFormBean extends HasGeneratedIdFormBeanTestCase {

    public TestRunDataFormBean(String name) {
        super(name);
    }

    public void testFields() {
        super.testFields();

        doFieldTests(RunData.FIELD_DATE);
        doFieldTests(RunData.FIELD_DISTANCE);
        doFieldTests(RunData.FIELD_UNITS);
        doFieldTests(RunData.FIELD_TIME);
        doFieldTests(RunData.FIELD_PACE);
        doFieldTests(RunData.FIELD_ROUTE);
        doFieldTests(RunData.FIELD_SHOES);
        doFieldTests(RunData.FIELD_RUN_TYPE);
        doFieldTests(RunData.FIELD_COMMENTS);
    }

    public void testReset() {
        super.testReset();
        RunDataFormBean typedBean = (RunDataFormBean) bean;
        MockPrincipal principal = new MockPrincipal();
        MockHttpSession session = new MockHttpSession();

        typedBean.setDate(null);
        typedBean.reset(null, new MockHttpServletRequest(principal, session));
        assertNull(typedBean.getDate());

        MockHttpServletRequest request = new MockHttpServletRequest(principal, session);
        request.addParameter(ConstantValues.STRING_DAY, "1");
        request.addParameter(ConstantValues.STRING_MONTH, "2");
        typedBean.reset(null, request);
        assertNull(typedBean.getDate());
        request.addParameter(ConstantValues.STRING_YEAR, "2005");
        typedBean.reset(null, request);
        assertNotNull(typedBean.getDate());
        Calendar cal = GregorianCalendar.getInstance();
        cal.set(Calendar.MONTH, 2);
        cal.set(Calendar.DAY_OF_MONTH, 1);
        cal.set(Calendar.YEAR, 2005);
        assertEquals(Conversions.dateToString(cal.getTime()), typedBean.getDate());

        typedBean.setId(STRING_FOO);
        typedBean.setDate(STRING_FOO);
        typedBean.reset(null, new MockHttpServletRequest(principal, session));
        assertEquals(STRING_FOO, typedBean.getId());
        assertEquals(STRING_FOO, typedBean.getDate());

        typedBean.setId(STRING_FOO);
        typedBean.setDate(null);
        request.addParameter(ConstantValues.STRING_DAY, "1");
        request.addParameter(ConstantValues.STRING_MONTH, "2");
        request.addParameter(ConstantValues.STRING_YEAR, "2005");
        typedBean.reset(null, new MockHttpServletRequest(principal, session));
        assertNull(typedBean.getDate());
    }

    protected ValueBean newValueBean() {
        return new RunDataFormBean();
    }

    protected String getValueBeanType() {
        return RunData.CANONICAL_ID;
    }

}

⌨️ 快捷键说明

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