Commit | Line | Data |
982d7488 |
1 | #!/usr/bin/env perl |
2 | |
3 | use warnings; |
4 | use strict; |
5 | |
6 | use FindBin; |
7 | use Test::More; |
8 | use HTTP::Request::Common; |
d15db19c |
9 | use JSON::MaybeXS; |
982d7488 |
10 | |
11 | use lib "$FindBin::Bin/lib"; |
12 | use Catalyst::Test 'TestContentNegotiation'; |
13 | |
d15db19c |
14 | { |
15 | ok my $req = POST '/', |
16 | Content_Type => 'application/json', |
17 | Content => encode_json +{message=>'test'}; |
18 | |
19 | ok my $res = request $req; |
20 | |
21 | is $res->content, 'is_json'; |
22 | } |
23 | |
24 | { |
25 | ok my $req = POST '/', [a=>1,b=>2]; |
26 | ok my $res = request $req; |
27 | |
28 | is $res->content, 'is_urlencoded'; |
29 | } |
30 | |
31 | { |
32 | ok my $path = TestContentNegotiation->path_to(qw/share file.txt/); |
33 | ok my $req = POST '/', |
34 | Content_Type => 'form-data', |
35 | Content => [a=>1, b=>2, file=>["$path"]]; |
36 | |
37 | ok my $res = request $req; |
38 | |
39 | is $res->content, 'is_multipart'; |
40 | } |
41 | |
982d7488 |
42 | |
43 | done_testing; |