Author: dsvyatobatsko
Date: 2009-01-30 11:55:31 -0500 (Fri, 30 Jan 2009)
New Revision: 12506
Modified:
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InputNumberSpinnerTest.java
Log:
https://jira.jboss.org/jira/browse/RF-5888
Modified:
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java 2009-01-30
16:37:38 UTC (rev 12505)
+++
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java 2009-01-30
16:55:31 UTC (rev 12506)
@@ -756,6 +756,18 @@
}
/**
+ * Sets a new value for DOM node with specified name.
+ *
+ * @param name -
+ * DOM element name (has to be unique)
+ * @param value -
+ * a new DOM element's value
+ */
+ public void setValueByName(String name, String value) {
+
runScript(String.format("document.getElementsByName('%1$s')[0].value='%2$s';",
name, value));
+ }
+
+ /**
* Returns element's width
*
* @param id -
Modified:
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InputNumberSpinnerTest.java
===================================================================
---
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InputNumberSpinnerTest.java 2009-01-30
16:37:38 UTC (rev 12505)
+++
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InputNumberSpinnerTest.java 2009-01-30
16:55:31 UTC (rev 12506)
@@ -64,6 +64,26 @@
}
@Test
+ public void testInvalidValueSubmission(Template template) {
+ AutoTester tester = getAutoTester(this);
+ tester.renderPage(template, RESET_METHOD);
+
+ writeStatus("Check component displays submitted value after submission of
invalid value");
+
+ //invalid value cannot be submitted due to smart client validation
+ //try a hack
+ String invalidValue = "invalid";
+ Assert.assertEquals(getSpinnerValue(), "20");
+ selenium.type("name=" + getParentId() + FORM_ID +
"componentId", invalidValue);
+ setValueByName(getParentId() + FORM_ID + "componentId", invalidValue);
+ tester.clickSubmit();
+ tester.checkUpdateModel(false);
+ tester.checkValueChangeListener(false);
+ Assert.assertEquals(getSpinnerValue(), invalidValue);
+ AssertTextEquals(tester.getClientId("submittedValue"), "20",
"Model has not to be updated in case of invalid submission");
+ }
+
+ @Test
public void testRequiredAndRequiredMessageAttributes(Template template) {
AutoTester tester = getAutoTester(this);
tester.renderPage(template, RESET_METHOD);