[libdancer-plugin-rest-perl] 49/63: fixe test suite
Jonas Smedegaard
dr at jones.dk
Wed Jul 2 11:44:54 UTC 2014
This is an automated email from the git hooks/post-receive script.
js pushed a commit to annotated tag 0.07
in repository libdancer-plugin-rest-perl.
commit d85b939870468bb9ab7b8f933d474ed1511c3475
Author: Alexis Sukrieh <alexis at weborama.com>
Date: Fri Mar 4 12:58:44 2011 +0100
fixe test suite
---
t/03_resource.t | 27 ++++++++++++-------
t/04_helpers.t | 73 +++++++++++++++++++++++++++++---------------------
t/04_plugin_settings.t | 5 ++--
3 files changed, 62 insertions(+), 43 deletions(-)
diff --git a/t/03_resource.t b/t/03_resource.t
index f90c700..3b59dd0 100644
--- a/t/03_resource.t
+++ b/t/03_resource.t
@@ -55,35 +55,42 @@ plan tests => 8;
"resource must have 4 hooks";
}
-use lib 't';
-use TestUtils;
+use Dancer::Test;
-my $r = get_response_for_request(GET => '/user/1');
+my $r = dancer_response(GET => '/user/1');
is_deeply $r->{content}, {user => undef},
"user 1 is not defined";
-$r = get_response_for_request(POST => '/user', { name => 'Alexis' });
+$r = dancer_response(POST => '/user', { body => {name => 'Alexis' }});
is_deeply $r->{content}, { user => { id => 1, name => "Alexis" } },
"create user works";
-$r = get_response_for_request(GET => '/user/1');
+$r = dancer_response(GET => '/user/1');
is_deeply $r->{content}, {user => { id => 1, name => 'Alexis'}},
"user 1 is defined";
-$r = get_response_for_request(PUT => '/user/1', { nick => 'sukria', name =>
-'Alexis Sukrieh' });
+$r = dancer_response(PUT => '/user/1', {
+ body => {
+ nick => 'sukria',
+ name => 'Alexis Sukrieh'
+ }
+});
is_deeply $r->{content}, {user => { id => 1, name => 'Alexis Sukrieh', nick => 'sukria'}},
"user 1 is updated";
-$r = get_response_for_request(DELETE => '/user/1');
+$r = dancer_response(DELETE => '/user/1');
is_deeply $r->{content}, {user => { id => 1, name => 'Alexis Sukrieh', nick => 'sukria'}},
"user 1 is deleted";
-$r = get_response_for_request(GET => '/user/1');
+$r = dancer_response(GET => '/user/1');
is_deeply $r->{content}, {user => undef},
"user 1 is not defined";
-$r = get_response_for_request(POST => '/user', { name => 'Franck Cuny' });
+$r = dancer_response(POST => '/user', {
+ body => {
+ name => 'Franck Cuny'
+ }
+});
is_deeply $r->{content}, { user => { id => 2, name => "Franck Cuny" } },
"id is correctly increased";
diff --git a/t/04_helpers.t b/t/04_helpers.t
index 0fb2901..179cd13 100644
--- a/t/04_helpers.t
+++ b/t/04_helpers.t
@@ -6,17 +6,17 @@ use Test::More import => ['!pass'];
plan tests => 16;
{
+
package Webservice;
use Dancer;
use Dancer::Plugin::REST;
- resource user =>
- 'get' => \&on_get_user,
- 'create' => \&on_create_user,
- 'delete' => \&on_delete_user,
- 'update' => \&on_update_user;
+ resource user => 'get' => \&on_get_user,
+ 'create' => \&on_create_user,
+ 'delete' => \&on_delete_user,
+ 'update' => \&on_update_user;
- my $users = {};
+ my $users = {};
my $last_id = 0;
sub on_get_user {
@@ -35,10 +35,10 @@ plan tests => 16;
}
sub on_delete_user {
- my $id = params->{'id'};
+ my $id = params->{'id'};
my $deleted = $users->{$id};
delete $users->{$id};
- status_accepted({ user => $deleted });
+ status_accepted( { user => $deleted } );
}
sub on_update_user {
@@ -52,46 +52,59 @@ plan tests => 16;
}
-use lib 't';
-use TestUtils;
+use Dancer::Test;
-my $r = get_response_for_request(GET => '/user/1');
+my $r = dancer_response( GET => '/user/1' );
is $r->{status}, 400, 'HTTP code is 400';
is $r->{content}->{error}, 'id is missing', 'Valid content';
-$r = get_response_for_request(POST => '/user', { name => 'Alexis' });
+$r = dancer_response( POST => '/user', { body => { name => 'Alexis' } } );
is $r->{status}, 201, 'HTTP code is 201';
is_deeply $r->{content}, { user => { id => 1, name => "Alexis" } },
- "create user works";
+ "create user works";
-$r = get_response_for_request(GET => '/user/1');
+$r = dancer_response( GET => '/user/1' );
is $r->{status}, 200, 'HTTP code is 200';
-is_deeply $r->{content}, {user => { id => 1, name => 'Alexis'}},
- "user 1 is defined";
-
-$r = get_response_for_request(PUT => '/user/1', { nick => 'sukria', name =>
-'Alexis Sukrieh' });
+is_deeply $r->{content}, { user => { id => 1, name => 'Alexis' } },
+ "user 1 is defined";
+
+$r = dancer_response(
+ PUT => '/user/1',
+ { body => {
+ nick => 'sukria',
+ name => 'Alexis Sukrieh'
+ }
+ }
+);
is $r->{status}, 202, 'HTTP code is 202';
-is_deeply $r->{content}, {user => { id => 1, name => 'Alexis Sukrieh', nick => 'sukria'}},
- "user 1 is updated";
-
-$r = get_response_for_request(PUT => '/user/23', { nick => 'john doe', name =>
-'John Doe' });
+is_deeply $r->{content},
+ { user => { id => 1, name => 'Alexis Sukrieh', nick => 'sukria' } },
+ "user 1 is updated";
+
+$r = dancer_response(
+ PUT => '/user/23',
+ { body => {
+ nick => 'john doe',
+ name => 'John Doe'
+ }
+ }
+);
is $r->{status}, 404, 'HTTP code is 404';
is_deeply $r->{content}->{error}, 'user undef', 'valid content';
-$r = get_response_for_request(DELETE => '/user/1');
-is_deeply $r->{content}, {user => { id => 1, name => 'Alexis Sukrieh', nick => 'sukria'}},
- "user 1 is deleted";
+$r = dancer_response( DELETE => '/user/1' );
+is_deeply $r->{content},
+ { user => { id => 1, name => 'Alexis Sukrieh', nick => 'sukria' } },
+ "user 1 is deleted";
is $r->{status}, 202, 'HTTP code is 202';
-$r = get_response_for_request(GET => '/user/1');
+$r = dancer_response( GET => '/user/1' );
is $r->{status}, 400, 'HTTP code is 400';
is_deeply $r->{content}->{error}, 'id is missing', 'valid response';
-$r = get_response_for_request(POST => '/user', { name => 'Franck Cuny' });
+$r = dancer_response( POST => '/user', { body => { name => 'Franck Cuny' } } );
is_deeply $r->{content}, { user => { id => 2, name => "Franck Cuny" } },
- "id is correctly increased";
+ "id is correctly increased";
is $r->{status}, 201, 'HTTP code is 201';
diff --git a/t/04_plugin_settings.t b/t/04_plugin_settings.t
index 325eca9..e6baf2c 100644
--- a/t/04_plugin_settings.t
+++ b/t/04_plugin_settings.t
@@ -34,8 +34,7 @@ my $yaml = YAML::Dump($data);
};
}
-use lib 't';
-use TestUtils;
+use Dancer::Test;
my @tests = (
{
@@ -63,7 +62,7 @@ my @tests = (
plan tests => scalar(@tests);
for my $test ( @tests ) {
- my $response = get_response_for_request(@{$test->{request}});
+ my $response = dancer_response(@{$test->{request}});
if (ref($test->{response})) {
like( $response->{content}, $test->{response},
"response looks good for '@{$test->{request}}'" );
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libdancer-plugin-rest-perl.git
More information about the Pkg-perl-cvs-commits
mailing list