X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=xt%2Fauthor%2Funicode_plugin_nested_params.t;fp=xt%2Fauthor%2Funicode_plugin_nested_params.t;h=e2680d17e036687e196820f8753c747b3760e41c;hb=807303a1658f895c41417beba24d24ff9b71c194;hp=0000000000000000000000000000000000000000;hpb=b62c4f8b4b612b159ff6e02e350a818f6c6ee5c3;p=catagits%2FCatalyst-Runtime.git diff --git a/xt/author/unicode_plugin_nested_params.t b/xt/author/unicode_plugin_nested_params.t new file mode 100644 index 0000000..e2680d1 --- /dev/null +++ b/xt/author/unicode_plugin_nested_params.t @@ -0,0 +1,69 @@ +use strict; +use warnings; +use Test::More; +use utf8; + +# setup library path +use FindBin qw($Bin); +use lib "$Bin/../../t/lib"; + +BEGIN { eval { require Catalyst::Plugin::Params::Nested; 1; } || + plan skip_all => 'Need Catalyst::Plugin::Params::Nested' } + +use Catalyst::Test 'TestApp2'; +use Encode; +use HTTP::Request::Common; +use URI::Escape qw/uri_escape_utf8/; +use HTTP::Status 'is_server_error'; + +my $encode_str = "\x{e3}\x{81}\x{82}"; # e38182 is japanese 'ã' +my $decode_str = Encode::decode('utf-8' => $encode_str); +my $escape_str = uri_escape_utf8($decode_str); + +BEGIN { + eval 'require Catalyst::Plugin::Params::Nested'; + plan skip_all => 'Catalyst::Plugin::Params::Nested is required' if $@; +} + +{ + my ($res, $c) = ctx_request("/?foo.1=bar&foo.2=$escape_str"); + is( $c->res->output, '