Hi Moritz,
now my understanding of testing Catalyst is a little better. :-)
The user.t doesn't work for me, the problem with redirected request
doesn't
come up here.
The output is:
--snip--
ok 1 - request list of users
ok 2 - response is JSON response
ok 3 - no results
[info] *** Request 2 (2.000/s) [5763] [Tue Apr 14 22:28:07 2009] ***
[debug] Body Parameters are:
.-------------------------------------
+--------------------------------------.
| Parameter |
Value |
+-------------------------------------
+--------------------------------------+
| name |
bar |
| password |
foo |
'-------------------------------------
+--------------------------------------'
[debug] "POST" request for "user" from "127.0.0.1"
[debug] Path is "/user/object"
[debug] I would have deserialized, but there was nothing in the body!
[debug] Serializing with Catalyst::Action::Serialize::JSON
[info] Request took 0.114814s (8.710/s)
.----------------------------------------------------------------
+-----------.
| Action |
Time |
+----------------------------------------------------------------
+-----------+
| /user/begin |
0.004265s |
| /user/object |
0.008799s |
| /user/end |
0.001013s |
'----------------------------------------------------------------
+-----------'
Can't call method "content" on an undefined value at t/rest/user.t
line 30.
# Looks like you planned 18 tests but ran 3.
# Looks like your test exited with 9 just after 3.
--snap--
Dumping $res from line 23 of user.t gives:
$VAR1 = bless( {
'_protocol' => 'HTTP/1.1',
'_content' => '{"success":1,"data":
{"password":"foo","name":"bar","id":null}}',
'_raw_content' => '{"success":1,"data":
{"password":"foo","name":"bar","id":null}}',
'_rc' => 201,
'_headers' => bless( {
'x-catalyst' => '5.71000',
'content-base' => bless( do{\
(my $o
= 'http://localhost/user')}, 'URI::http' ),
'location'
=> 'http://localhost/user/1',
'date' => 'Tue, 14 Apr 2009
20:30:06
GMT',
'status' => '201',
'vary' => 'Content-Type',
'content-length' => '62',
'content-type' =>
'application/json'
}, 'HTTP::Headers' ),
'_msg' => 'Created',
'_request' => bless( {
'_content' =>
'name=bar&password=foo',
'_uri' => $VAR1->{'_headers'}
{'content-base'},
'_headers' => bless( {
'user-
agent'
=> 'WWW-Mechanize/1.54',
'content-type'
=> 'application/x-www-form-urlencoded',
'accept'
=> 'application/json',
'accept-encoding'
=> 'gzip',
'content-length'
=> 21,
'host'
=> 'localhost',
'referer'
=> 'http://localhost/users'
},
'HTTP::Headers' ),
'_method' => 'POST',
'_uri_canonical' =>
$VAR1->{'_headers'}{'content-base'}
}, 'HTTP::Request' )
}, 'HTTP::Response' );
I didn't paste the dump of $mech, but I don't see the redirect.
I#m useing the SVN versions of HTML-FormFu, HTML-FormFu-ExtJS and
HTML-FormFu-Model-DBIC.
Greets,
Mario Minati
Am Montag 13 April 2009 21:21:13 schrieben Sie:
Am Samstag 11 April 2009 21:48:10 schrieb Moritz Onken:
Hi Moritz,
the suite looks good so far, I just read the code and gives quite
important
comments ('redirect' :roll:).
The suite is not meant to run automatically on make test, right?
Maybe we have to tweak Makefile.PL but they should run
automatically.
I guess we need "tests_recursive;" in Makefile.PL
Ok
Do you have a special suggestion on howto include all the SVN
FormFu
modules
into lib? Currently I have quite some -I options.
I usually export the PERL5LIB variable which is read by perl.
Is there more than the svn version of FormFu::ExtJS that we depend
on?
Actually I have an old FormFu installed via CPAN and am useing SVN
of all
FormFu related modules.
Greets,
Mario Minati
Am 11.04.2009 um 21:17 schrieb Mario Minati:
Hi Moritz,
the suite looks good so far, I just read the code and gives quite
important
comments ('redirect' :roll:).
The suite is not meant to run automatically on make test, right?
Do you have a special suggestion on howto include all the SVN
FormFu
modules
into lib? Currently I have quite some -I options.
Happy Easter,
Mario Minati
Am Freitag 10 April 2009 14:21:02 schrieb Moritz Onken:
Hi,
I commited the test suite and created a test which is located in
t/
rest/user.yml.
I think this is a good start for new tests and works pretty good
so
far.
I added a few comments to the test so you can understand why
certain
things happen or don't.
I usually run tests like this:
CatalystX-Controller-ExtJS mo$ perl -Ilib t/rest/user.yml
This way you get more output than using make test or prove.
You don't need to deploy the schema or do something like that.
This
is
handled in MyApp::Model::DBIC.
Testing a REST-app sucks because all those HTTP::* and
LWP::UserAgent
modules
don't support it very well. Example: Try to post form data using
PUT.
Have fun,
moritz
Am 10.04.2009 um 10:44 schrieb Mario Minati:
I wanted to step into the test creation for
CatalystX::Controller::ExtJS::REST
but am wondering how to start.
Do we need to create a complete Cat test app, including sqlite
db to
test it
or is there maybe an easier way?
Which module would be a good start to take modules as template.
I wish a nice Good Friday,
Mario Minati
_______________________________________________
HTML-FormFu mailing list
HTML-FormFu@lists.scsys.co.uk
http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/html-formfu
_______________________________________________
HTML-FormFu mailing list
HTML-FormFu@lists.scsys.co.uk
http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/html-formfu
_______________________________________________
HTML-FormFu mailing list
HTML-FormFu@lists.scsys.co.uk
http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/html-formfu
_______________________________________________
HTML-FormFu mailing list
HTML-FormFu@lists.scsys.co.uk
http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/html-formfu
_______________________________________________
HTML-FormFu mailing list
HTML-FormFu@lists.scsys.co.uk
http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/html-formfu