01: // Copyright © 2004-2007 ASERT. Released under the Canoo Webtest license.
02: package com.canoo.webtest.extension;
03:
04: import com.canoo.webtest.engine.StepExecutionException;
05: import com.canoo.webtest.self.TestBlock;
06: import com.canoo.webtest.self.ThrowAssert;
07: import com.canoo.webtest.steps.BaseStepTestCase;
08: import com.canoo.webtest.steps.Step;
09: import com.canoo.webtest.steps.form.AbstractSetFieldStep;
10:
11: /**
12: * Test class for {@link ForceInputFieldAttribute}.<p>
13: *
14: * @author Paul King
15: */
16: public class ForceInputFieldAttributeTest extends BaseStepTestCase {
17: private ForceInputFieldAttribute fStep;
18:
19: protected Step createStep() {
20: return new ForceInputFieldAttribute();
21: }
22:
23: protected void setUp() throws Exception {
24: super .setUp();
25: fStep = (ForceInputFieldAttribute) getStep();
26: }
27:
28: public void testVerifyParameterUsage() {
29: TestBlock block = new TestBlock() {
30: public void call() throws Exception {
31: executeStep(fStep);
32: }
33: };
34: // <forceInputFieldAttribute name="someName" attributeName="someName"/>
35: fStep.setName("someName");
36: fStep.setAttributeName("someName");
37: fStep.setAttributeValue(null);
38: assertStepRejectsNullParam("attributeValue", block);
39: // <forceInputFieldAttribute attributeName="someName" attributeValue="someValue"/>
40: fStep.setName(null);
41: fStep.setAttributeValue("someValue");
42: String msg = ThrowAssert.assertThrows(
43: StepExecutionException.class, block);
44: assertTrue(msg
45: .indexOf(AbstractSetFieldStep.MESSAGE_ARGUMENT_MISSING) != -1);
46: // <forceInputFieldAttribute name="someName" attributeValue="someValue"/>
47: fStep.setAttributeName(null);
48: fStep.setName("someName");
49: assertStepRejectsNullParam("attributeName", block);
50: }
51:
52: public void testVerifyParametersWithoutPreviousPage() {
53: fStep.setAttributeValue("someValue");
54: fStep.setAttributeName("someName");
55: fStep.setName("someName");
56: assertStepRejectsNullResponse(fStep);
57: }
58:
59: }
|