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 3f8993604fa514bad9f1a759a4a0ee2b2a9a8e16 Author: Alexis Sukrieh <suk...@sukria.net> Date: Thu Oct 14 10:31:11 2010 +0200 t/02_prepare_serializer_for_format.t: more tests, refactored --- t/02_prepare_serializer_for_format.t | 47 ++++++++++++++++++++++++++++++------ 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/t/02_prepare_serializer_for_format.t b/t/02_prepare_serializer_for_format.t index 5217970..bc4a57b 100644 --- a/t/02_prepare_serializer_for_format.t +++ b/t/02_prepare_serializer_for_format.t @@ -5,10 +5,12 @@ use Test::More import => ['!pass']; plan skip_all => "JSON is needed for this test" unless Dancer::ModuleLoader->load('JSON'); -plan tests => 3; +plan skip_all => "YAML is needed for this test" + unless Dancer::ModuleLoader->load('YAML'); my $data = { foo => 42 }; my $json = JSON::encode_json($data); +my $yaml = YAML::Dump($data); { package Webservice; @@ -17,7 +19,8 @@ my $json = JSON::encode_json($data); prepare_serializer_for_format; - get '/foo.:format' => sub { + get '/' => sub { "root" }; + get '/:something.:format' => sub { $data; }; } @@ -25,11 +28,39 @@ my $json = JSON::encode_json($data); use lib 't'; use TestUtils; -my $response = get_response_for_request(GET => '/foo.json'); -ok(defined($response), "response found for /foo.json"); +my @tests = ( + { + request => [GET => '/'], + content_type => 'text/html', + response => 'root', + }, + { + request => [GET => '/foo.json'], + content_type => 'application/json', + response => $json + }, + { + request => [GET => '/foo.yml'], + content_type => 'text/x-yaml', + response => $yaml, + }, + { + request => [GET => '/'], + content_type => 'text/html', + response => 'root', + }, +); + +plan tests => scalar(@tests) * 2; + +for my $test ( @tests ) { + my $response = get_response_for_request(@{$test->{request}}); + is_deeply( $response->{headers}, + [ 'Content-Type' => $test->{content_type}], + "headers have content_type set to ".$test->{content_type}); + + is( $response->{content}, $test->{response}, + "\$data has been encoded" ); +} -is_deeply( $response->{headers}, [ 'Content-Type' => 'application/json'], - "headers have content_type set to application/json" ); -is( $response->{content}, $json, - "\$data has been encoded to JSON"); -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libdancer-plugin-rest-perl.git _______________________________________________ Pkg-perl-cvs-commits mailing list Pkg-perl-cvs-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-perl-cvs-commits