Fix tests to skip if YAML::Syck is not installed
[catagits/Catalyst-Action-REST.git] / t / catalyst-action-deserialize-multipart.t
1 use strict;
2 use warnings;
3 use Test::More;
4 use Test::Requires qw(YAML::Syck);
5 use YAML::Syck;
6 use FindBin;
7
8 use lib ("$FindBin::Bin/lib", "$FindBin::Bin/../lib", "$FindBin::Bin/broken");
9 use Test::Rest;
10
11 my $t = Test::Rest->new('content_type' => 'multipart/mixed; boundary=----------------------------0b922a55b662');
12
13 use_ok 'Catalyst::Test', 'Test::Catalyst::Action::REST';
14 my $url = '/deserializemultipart/test';
15
16 my $req = $t->put( url => $url, data => qq(------------------------------0b922a55b662\r\nContent-Disposition: form-data; name="REST"; filename="-"\r\nContent-Type: text/x-yaml\r\n\r\n---\r\nkitty: LouLou\r\n------------------------------0b922a55b662\r\nContent-Disposition: form-data; name="other"; filename="foo.txt"\r\nContent-Type: application/octet-stream\r\n\r\nanother part\r\n------------------------------0b922a55b662--\r\n));
17 my $res = request($req);
18
19 ok( $res->is_success, 'PUT Deserialize request succeeded' );
20 is( $res->content, "LouLou|12", "Request returned deserialized data");
21
22 done_testing;