Re: Testing Form with AjaxSubmitLink
There is something similar already - org.apache.wicket.util.tester.FormTester#submitLink But it doesn't support Ajax at the moment. Feel free to send a PR (preferably with a test case) Martin Grigorov Wicket Training and Consulting On Thu, Mar 13, 2014 at 9:53 PM, Nick Pratt wrote: > Any reason that the FormTester.submit() couldn't be modified to check the > type of the form submitter, and invoke the correct code accordingly? > > N > > > On Thu, Mar 13, 2014 at 3:28 PM, Martin Grigorov >wrote: > > > Hi, > > > > See the javadoc of > > > org.apache.wicket.util.tester.BaseWicketTester#clickLink(java.lang.String, > > boolean) > > > > Martin Grigorov > > Wicket Training and Consulting > > > > > > On Thu, Mar 13, 2014 at 8:06 PM, Nick Pratt wrote: > > > > > How do you submit a form via WicketTester and an AjaxSubmitLink? > > > > > > > > > *HomePage.java:* > > > > > > public class HomePage extends WebPage > > > { > > > private static final long serialVersionUID = 1L; > > > > > > private String email; > > > > > > public HomePage( final PageParameters parameters ) > > > { > > > super( parameters ); > > > > > > Form form = new Form( "form" ); > > > add( form ); > > > > > > form.add( new EmailTextField( "email", new PropertyModel(this, > "email") ) > > > ); > > > form.add( new AjaxSubmitLink("submit") > > > { > > > @Override > > > protected void onSubmit( AjaxRequestTarget target, Form form ) > > > { > > > int i = 0; > > > } > > > }); > > > } > > > } > > > > > > *HomePage.html* > > > > > > > > > http://wicket.apache.org";> > > > > > > > > > > > > > > > Sign Up > > > > > > > > > > > > > > > > > > *Unit Test:* > > > > > > @Test > > > public void testPanel() throws Exception > > > { > > > WicketTester tester = new WicketTester(); > > > tester.startPage( HomePage.class ); > > > > > > FormTester formTester = tester.newFormTester( "form" ); > > > formTester.setValue( "email", "t...@test.com" ); > > > formTester.submit( "submit" ); > > > } > > > > > >
Re: Testing Form with AjaxSubmitLink
As Martin said you can use : tester.clickLink("form:submit", true); You can also use : tester.executeAjaxEvent("form:submit", "onclick"); Regards, Gabriel. -- View this message in context: http://apache-wicket.1842946.n4.nabble.com/Testing-Form-with-AjaxSubmitLink-tp4664946p4664949.html Sent from the Users forum mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org
Re: Testing Form with AjaxSubmitLink
Any reason that the FormTester.submit() couldn't be modified to check the type of the form submitter, and invoke the correct code accordingly? N On Thu, Mar 13, 2014 at 3:28 PM, Martin Grigorov wrote: > Hi, > > See the javadoc of > org.apache.wicket.util.tester.BaseWicketTester#clickLink(java.lang.String, > boolean) > > Martin Grigorov > Wicket Training and Consulting > > > On Thu, Mar 13, 2014 at 8:06 PM, Nick Pratt wrote: > > > How do you submit a form via WicketTester and an AjaxSubmitLink? > > > > > > *HomePage.java:* > > > > public class HomePage extends WebPage > > { > > private static final long serialVersionUID = 1L; > > > > private String email; > > > > public HomePage( final PageParameters parameters ) > > { > > super( parameters ); > > > > Form form = new Form( "form" ); > > add( form ); > > > > form.add( new EmailTextField( "email", new PropertyModel(this, "email") ) > > ); > > form.add( new AjaxSubmitLink("submit") > > { > > @Override > > protected void onSubmit( AjaxRequestTarget target, Form form ) > > { > > int i = 0; > > } > > }); > > } > > } > > > > *HomePage.html* > > > > > > http://wicket.apache.org";> > > > > > > > > > > Sign Up > > > > > > > > > > > > *Unit Test:* > > > > @Test > > public void testPanel() throws Exception > > { > > WicketTester tester = new WicketTester(); > > tester.startPage( HomePage.class ); > > > > FormTester formTester = tester.newFormTester( "form" ); > > formTester.setValue( "email", "t...@test.com" ); > > formTester.submit( "submit" ); > > } > > >
Re: Testing Form with AjaxSubmitLink
Hi, See the javadoc of org.apache.wicket.util.tester.BaseWicketTester#clickLink(java.lang.String, boolean) Martin Grigorov Wicket Training and Consulting On Thu, Mar 13, 2014 at 8:06 PM, Nick Pratt wrote: > How do you submit a form via WicketTester and an AjaxSubmitLink? > > > *HomePage.java:* > > public class HomePage extends WebPage > { > private static final long serialVersionUID = 1L; > > private String email; > > public HomePage( final PageParameters parameters ) > { > super( parameters ); > > Form form = new Form( "form" ); > add( form ); > > form.add( new EmailTextField( "email", new PropertyModel(this, "email") ) > ); > form.add( new AjaxSubmitLink("submit") > { > @Override > protected void onSubmit( AjaxRequestTarget target, Form form ) > { > int i = 0; > } > }); > } > } > > *HomePage.html* > > > http://wicket.apache.org";> > > > > > Sign Up > > > > > > *Unit Test:* > > @Test > public void testPanel() throws Exception > { > WicketTester tester = new WicketTester(); > tester.startPage( HomePage.class ); > > FormTester formTester = tester.newFormTester( "form" ); > formTester.setValue( "email", "t...@test.com" ); > formTester.submit( "submit" ); > } >
Testing Form with AjaxSubmitLink
How do you submit a form via WicketTester and an AjaxSubmitLink? *HomePage.java:* public class HomePage extends WebPage { private static final long serialVersionUID = 1L; private String email; public HomePage( final PageParameters parameters ) { super( parameters ); Form form = new Form( "form" ); add( form ); form.add( new EmailTextField( "email", new PropertyModel(this, "email") ) ); form.add( new AjaxSubmitLink("submit") { @Override protected void onSubmit( AjaxRequestTarget target, Form form ) { int i = 0; } }); } } *HomePage.html* http://wicket.apache.org";> Sign Up *Unit Test:* @Test public void testPanel() throws Exception { WicketTester tester = new WicketTester(); tester.startPage( HomePage.class ); FormTester formTester = tester.newFormTester( "form" ); formTester.setValue( "email", "t...@test.com" ); formTester.submit( "submit" ); }