use strict;
use warnings;
-use Test::More tests => 20;
+use Test::More;
use YAML::Syck;
use FindBin;
is $res->code, 204, "... status no content";
is $res->content, '', '... no content';
+ok $res = request( $t->get( url => '/rest/test_status_found' ) );
+is $res->code, 302, '... status found';
+is_deeply Load( $res->content ),
+ { status => 'found' },
+ "... status found message";
+
ok $res = request( $t->get( url => '/rest/test_status_bad_request' ) );
is $res->code, 400, '... status bad request';
is_deeply Load( $res->content ),
{ error => "Cannot do what you have asked!" },
"... status bad request message";
+ok $res = request( $t->get( url => '/rest/test_status_forbidden' ) );
+is $res->code, 403, '... status forbidden';
+is_deeply Load( $res->content ),
+ { error => "access denied" },
+ "... status forbidden";
+
ok $res = request( $t->get( url => '/rest/test_status_not_found' ) );
is $res->code, 404, '... status not found';
is_deeply Load( $res->content ),
ok $res = request( $t->get( url => '/rest/test_status_multiple_choices' ) );
is $res->code, 300, "... multiple choices";
+is_deeply Load($res->content),
+ { choices => [qw(/rest/choice1 /rest/choice2)] },
+ "... 300 multiple choices has response body";
+
+done_testing;