6 use lib File::Spec->catfile($FindBin::Bin, 'lib');
8 use utf8; # for literal below
9 use Encode; # URI.pm is braindead wrt unicode-flagged characters
11 use Test::More tests => 5;
15 my $base = 'http://127.0.0.1';
17 my $request = Catalyst::Request->new({
18 base => URI->new($base),
19 uri => URI->new("$base/"),
22 my $context = TestApp->new({
27 my $uri_with_multibyte = URI->new($base);
28 $uri_with_multibyte->path('/');
29 $uri_with_multibyte->query_form(
30 name => Encode::encode('utf8', '村瀬大輔'),
33 # multibyte with utf8 bytes
34 is($context->uri_for('/', { name => '村瀬大輔' }), $uri_with_multibyte, 'uri_for with utf8 bytes query');
35 is($context->req->uri_with({ name => '村瀬大輔' }), $uri_with_multibyte, 'uri_with with utf8 bytes query');
37 # multibyte with utf8 string
38 is($context->uri_for('/', { name => "\x{6751}\x{702c}\x{5927}\x{8f14}" }), $uri_with_multibyte, 'uri_for with utf8 string query');
39 is($context->req->uri_with({ name => "\x{6751}\x{702c}\x{5927}\x{8f14}" }), $uri_with_multibyte, 'uri_with with utf8 string query');