X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FTest%2FSerialize%2FController%2FJSON.pm;fp=t%2Flib%2FTest%2FSerialize%2FController%2FJSON.pm;h=fcc07a371b5927be21f5f1ddadba5c6b024ffd5b;hb=838f49dc89f8bef88c3a3dc9841473555f71bb82;hp=0000000000000000000000000000000000000000;hpb=0fd45d2a3fbf41c788823c527f4c325cf6368c7c;p=catagits%2FCatalyst-Action-Serialize-Data-Serializer.git diff --git a/t/lib/Test/Serialize/Controller/JSON.pm b/t/lib/Test/Serialize/Controller/JSON.pm new file mode 100644 index 0000000..fcc07a3 --- /dev/null +++ b/t/lib/Test/Serialize/Controller/JSON.pm @@ -0,0 +1,29 @@ +package Test::Serialize::Controller::JSON; + +use namespace::autoclean; +use Moose; + +BEGIN { extends qw/Catalyst::Controller::REST/ }; + +__PACKAGE__->config( + 'stash_key' => 'rest', + 'json_options' => { + relaxed => 1, + }, + 'map' => { + 'text/x-json' => 'JSON', + }, +); + +sub monkey_json_put : Path("/monkey_json_put") : ActionClass('Deserialize') { + my ( $self, $c ) = @_; + if ( ref($c->req->data) eq "HASH" ) { + my $out = ($c->req->data->{'sushi'}||'') . ($c->req->data->{'chicken'}||''); + utf8::encode($out); + $c->res->output( $out ); + } else { + $c->res->output(1); + } +} + +1;