// Copyright � 2004-2005 ASERT. Released under the Canoo Webtest license.
package com.canoo.webtest.extension;
import com.canoo.webtest.engine.StepExecutionException;
import com.canoo.webtest.self.ThrowAssert;
import com.canoo.webtest.steps.BaseStepTestCase;
import com.canoo.webtest.steps.Step;
/**
* Test class for {@link StoreInputFieldAttribute}.<p>
*
* @author Paul King
* @author Marc Guillemot
*/
public class StoreInputFieldAttributeTest extends BaseStepTestCase
{
private StoreInputFieldAttribute fStep;
protected Step createStep() {
return new StoreInputFieldAttribute();
}
protected void setUp() throws Exception {
super.setUp();
fStep = (StoreInputFieldAttribute) getStep();
}
/**
* Test deprecated methods
* @deprecated
*/
public void testDeprecatedAttributes()
{
assertNull(fStep.getProperty());
fStep.setPropertyName("foo");
assertEquals("foo", fStep.getProperty());
}
public void testVerifyParameterUsage() {
// <storeInputFieldAttributeTest attributeName="someName" name="someName" />
fStep.setAttributeName("someName");
fStep.setName("someName");
fStep.setPropertyName(null);
assertStepRejectsNullParam("property", getExecuteStepTestBlock());
// <storeInputFieldAttributeTest attributeName="someName" propertyName="someName" />
fStep.setName(null);
fStep.setPropertyName("someName");
assertStepRejectsNullParam("name", getExecuteStepTestBlock());
// <storeInputFieldAttributeTest name="someName" propertyName="someName" />
fStep.setAttributeName(null);
fStep.setName("someName");
assertStepRejectsNullParam("attributeName", getExecuteStepTestBlock());
// bad index
fStep.setFieldIndex("blah");
ThrowAssert.assertThrows(StepExecutionException.class, getExecuteStepTestBlock());
}
public void testVerifyParametersWithoutPreviousPage() {
fStep.setPropertyName("someName");
fStep.setAttributeName("someName");
fStep.setName("someName");
assertStepRejectsNullResponse(fStep);
}
}