I'm stuck on something that seems like a very trivial problem.. I have a form with a RequiredTextField that i want to run some tests on using FormTester. The form is submitted using a SubmitLink located outside of the <form> tags. My problem is that even when i set a value on the RequiredTextField the form submission is failing - because of that the required field is missing.
test-code: tester.startPage(HomePage.class); tester.assertRenderedPage(HomePage.class); FormTester formTester = tester.newFormTester("testForm", false); formTester.setValue("name", "a name"); formTester.submitLink("mySubmitLink", true); tester.assertNoErrorMessage(); java-code: public class HomePage extends WebPage { private static final long serialVersionUID = 1L; private final ValueMap properties = new ValueMap(); public HomePage(final PageParameters parameters) { Form<Object> f = new Form<Object>("testForm", new CompoundPropertyModel<Object>(properties)); add(f); f.add(new RequiredTextField<String>("name")); add(new SubmitLink("mySubmitLink", f)); } } markup: <html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd" > <body> <form wicket:id="testForm"> <input wicket:id="name"></input> </form> <a href="#" wicket:id="mySubmitLink">submit</a> </body> </html> stacktrace: junit.framework.AssertionFailedError: expect no error message, but contains Field 'name' is required. at junit.framework.Assert.fail(Assert.java:47) at junit.framework.Assert.assertTrue(Assert.java:20) at org.apache.wicket.util.tester.WicketTester.assertNoErrorMessage(WicketTester.java:501) at com.metria.test.atest.TestHomePage.testRenderMyPage(TestHomePage.java:30) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:164) at junit.framework.TestCase.runBare(TestCase.java:130) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:120) at junit.framework.TestSuite.runTest(TestSuite.java:230) at junit.framework.TestSuite.run(TestSuite.java:225) at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) Any help would be appreciated! Thanks, jan --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org