use
5.036;
use
Test2::V0
-target
=>
'UserAgent::Any::JSON'
;
sub
request_handler (
$req
,
$res
) {
if
(
$req
->url eq
'/pretty'
) {
like(
$req
->content,
qr/^\[\n\s+{\n\s+"foo"\s+:\s+"bar"\n\s+},\n\s+.*/
,
'pretty content'
);
}
elsif
(
$req
->url eq
'/not_pretty'
) {
is(
$req
->content,
'[{"foo":"bar"},{"bin":"baz","foo":"bar"}]'
,
'not pretty content'
);
}
}
my
$ua_not_pretty
= UserAgent::Any::JSON->new(
ua
=> UserAgent::Any::Fake->new(\
&request_handler
),
json
=> JSON->new->pretty(0)->canonical(1));
my
$ua_pretty
= UserAgent::Any::JSON->new(
ua
=> UserAgent::Any::Fake->new(\
&request_handler
),
json
=> JSON->new->pretty(1)->canonical(1));
is(
$ua_not_pretty
->post(
'/not_pretty'
, [{
foo
=>
"bar"
}, {
foo
=>
"bar"
,
bin
=>
"baz"
}])->status_code, 200);
is(
$ua_pretty
->post(
'/pretty'
, [{
foo
=>
"bar"
}, {
foo
=>
"bar"
,
bin
=>
"baz"
}])->status_code, 200);
done_testing;