Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Catalyst: Users

Test::WWW::Mechanize::Catalyst and Catalyst::Controller::HTML::FormFu

 

 

Catalyst users RSS feed   Index | Next | Previous | View Threaded


kiffin.gish at planet

Jun 22, 2009, 11:50 AM

Post #1 of 4 (893 views)
Permalink
Test::WWW::Mechanize::Catalyst and Catalyst::Controller::HTML::FormFu

I'm using Test::WWW::Mechanize::Catalyst to test my Catalyst App, more
specifically the process for registering new user accounts.

The application form is generated by Catalyst::Controller::HTML::FormFu
with the expected fields: username, password, confirm_password, email
and the submit => 'Register' button (indicator).

When using the good ol' browser the form is submitted and an email sent
for validation, no problem.

However, making the exact same call with Test::WWW::Mechanize::Catalyst
as follows:

my $fields = {
username => $username,
password => $password,
confirm_password => $password,
password_hint => $password_hint,
email => $email,
submit => 'Register'
};

$mech->submit_form(
form_number => 0,
fields => $fields,
);

will not work because within the sub register : Global FormConfig of my
controller, $form->submitted_and_valid is returning false for some weird
reason.

I tried debugging the HTML::FormFu stuff but this is all very
complicated.

Can anyone help me here?

--
Kiffin Gish <Kiffin.Gish [at] planet>
Gouda, The Netherlands



_______________________________________________
List: Catalyst [at] lists
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst [at] lists/
Dev site: http://dev.catalyst.perl.org/


ash_cpan at firemirror

Jun 22, 2009, 1:50 PM

Post #2 of 4 (826 views)
Permalink
Re: Test::WWW::Mechanize::Catalyst and Catalyst::Controller::HTML::FormFu [In reply to]

On 22 Jun 2009, at 19:50, Kiffin Gish wrote:

> I'm using Test::WWW::Mechanize::Catalyst to test my Catalyst App, more
> specifically the process for registering new user accounts.
>
> The application form is generated by
> Catalyst::Controller::HTML::FormFu
> with the expected fields: username, password, confirm_password, email
> and the submit => 'Register' button (indicator).
>
> When using the good ol' browser the form is submitted and an email
> sent
> for validation, no problem.
>
> However, making the exact same call with
> Test::WWW::Mechanize::Catalyst
> as follows:
>
> my $fields = {
> username => $username,
> password => $password,
> confirm_password => $password,
> password_hint => $password_hint,
> email => $email,
> submit => 'Register'
> };
>
> $mech->submit_form(
> form_number => 0,
> fields => $fields,
> );
>
> will not work because within the sub register : Global FormConfig of
> my
> controller, $form->submitted_and_valid is returning false for some
> weird
> reason.
>
> I tried debugging the HTML::FormFu stuff but this is all very
> complicated.
>
> Can anyone help me here?

I'm guessing HTML::FormFu determines that the form is submitted by the
value of the input from the submit button (rather that it just being a
post request which is my personal preference)

To get WWW::Mechanize to send this value do, call


$mech->submit_form(
with_fields => $fields,
button => 'submit' # or what ever the name attr of the submit
button is.
);

_______________________________________________
List: Catalyst [at] lists
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst [at] lists/
Dev site: http://dev.catalyst.perl.org/


kiffin.gish at planet

Jun 23, 2009, 4:05 AM

Post #3 of 4 (822 views)
Permalink
Re: Test::WWW::Mechanize::Catalyst and Catalyst::Controller::HTML::FormFu [In reply to]

On Mon, 2009-06-22 at 21:50 +0100, Ash Berlin wrote:
> On 22 Jun 2009, at 19:50, Kiffin Gish wrote:
>
> > I'm using Test::WWW::Mechanize::Catalyst to test my Catalyst App, more
> > specifically the process for registering new user accounts.
> >
> > The application form is generated by
> > Catalyst::Controller::HTML::FormFu
> > with the expected fields: username, password, confirm_password, email
> > and the submit => 'Register' button (indicator).
> >
> > When using the good ol' browser the form is submitted and an email
> > sent
> > for validation, no problem.
> >
> > However, making the exact same call with
> > Test::WWW::Mechanize::Catalyst
> > as follows:
> >
> > my $fields = {
> > username => $username,
> > password => $password,
> > confirm_password => $password,
> > password_hint => $password_hint,
> > email => $email,
> > submit => 'Register'
> > };
> >
> > $mech->submit_form(
> > form_number => 0,
> > fields => $fields,
> > );
> >
> > will not work because within the sub register : Global FormConfig of
> > my
> > controller, $form->submitted_and_valid is returning false for some
> > weird
> > reason.
> >
> > I tried debugging the HTML::FormFu stuff but this is all very
> > complicated.
> >
> > Can anyone help me here?
>
> I'm guessing HTML::FormFu determines that the form is submitted by the
> value of the input from the submit button (rather that it just being a
> post request which is my personal preference)
>
> To get WWW::Mechanize to send this value do, call
>
>
> $mech->submit_form(
> with_fields => $fields,
> button => 'submit' # or what ever the name attr of the submit
> button is.
> );

This didn't help me, any other ideas?

How can use the value returned by $form->has_errors() or something
similar and log the errors for trouble-shooting?

>
> _______________________________________________
> List: Catalyst [at] lists
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/catalyst [at] lists/
> Dev site: http://dev.catalyst.perl.org/
--
Kiffin Gish <Kiffin.Gish [at] planet>
Gouda, The Netherlands



_______________________________________________
List: Catalyst [at] lists
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst [at] lists/
Dev site: http://dev.catalyst.perl.org/


kiffin.gish at planet

Jun 23, 2009, 5:28 AM

Post #4 of 4 (814 views)
Permalink
Re: Test::WWW::Mechanize::Catalyst and Catalyst::Controller::HTML::FormFu [In reply to]

On Tue, 2009-06-23 at 13:05 +0200, Kiffin Gish wrote:
> On Mon, 2009-06-22 at 21:50 +0100, Ash Berlin wrote:
> > On 22 Jun 2009, at 19:50, Kiffin Gish wrote:
> >
> > > I'm using Test::WWW::Mechanize::Catalyst to test my Catalyst App, more
> > > specifically the process for registering new user accounts.
> > >
> > > The application form is generated by
> > > Catalyst::Controller::HTML::FormFu
> > > with the expected fields: username, password, confirm_password, email
> > > and the submit => 'Register' button (indicator).
> > >
> > > When using the good ol' browser the form is submitted and an email
> > > sent
> > > for validation, no problem.
> > >
> > > However, making the exact same call with
> > > Test::WWW::Mechanize::Catalyst
> > > as follows:
> > >
> > > my $fields = {
> > > username => $username,
> > > password => $password,
> > > confirm_password => $password,
> > > password_hint => $password_hint,
> > > email => $email,
> > > submit => 'Register'
> > > };
> > >
> > > $mech->submit_form(
> > > form_number => 0,
> > > fields => $fields,
> > > );
> > >
> > > will not work because within the sub register : Global FormConfig of
> > > my
> > > controller, $form->submitted_and_valid is returning false for some
> > > weird
> > > reason.
> > >
> > > I tried debugging the HTML::FormFu stuff but this is all very
> > > complicated.
> > >
> > > Can anyone help me here?
> >
> > I'm guessing HTML::FormFu determines that the form is submitted by the
> > value of the input from the submit button (rather that it just being a
> > post request which is my personal preference)
> >
> > To get WWW::Mechanize to send this value do, call
> >
> >
> > $mech->submit_form(
> > with_fields => $fields,
> > button => 'submit' # or what ever the name attr of the submit
> > button is.
> > );
>
> This didn't help me, any other ideas?
>
> How can use the value returned by $form->has_errors() or something
> similar and log the errors for trouble-shooting?

Hold, it DID work after all (slight over-site on my part). Thanks alot
for the tip!
>
> >
> > _______________________________________________
> > List: Catalyst [at] lists
> > Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> > Searchable archive: http://www.mail-archive.com/catalyst [at] lists/
> > Dev site: http://dev.catalyst.perl.org/
--
Kiffin Gish <Kiffin.Gish [at] planet>
Gouda, The Netherlands



_______________________________________________
List: Catalyst [at] lists
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst [at] lists/
Dev site: http://dev.catalyst.perl.org/

Catalyst users RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.