[Catalyst-commits] r13213 - in Catalyst-Plugin-Unicode-Encoding/trunk: . lib/Catalyst/Plugin/Unicode t t/lib/TestApp/Controller

t0m at dev.catalyst.perl.org t0m at dev.catalyst.perl.org
Tue May 4 21:38:56 GMT 2010


Author: t0m
Date: 2010-05-04 22:38:56 +0100 (Tue, 04 May 2010)
New Revision: 13213

Modified:
   Catalyst-Plugin-Unicode-Encoding/trunk/
   Catalyst-Plugin-Unicode-Encoding/trunk/Changes
   Catalyst-Plugin-Unicode-Encoding/trunk/lib/Catalyst/Plugin/Unicode/Encoding.pm
   Catalyst-Plugin-Unicode-Encoding/trunk/t/06request_decode.t
   Catalyst-Plugin-Unicode-Encoding/trunk/t/lib/TestApp/Controller/Root.pm
Log:
 r15508 at t0mlaptop (orig r13212):  wreis | 2010-05-04 18:52:41 +0000
 decode request's captures



Property changes on: Catalyst-Plugin-Unicode-Encoding/trunk
___________________________________________________________________
Modified: svk:merge
   - 4ad37cd2-5fec-0310-835f-b3785c72a374:/Catalyst-Plugin-Unicode-Encoding/branches/support_upload_filename:11764
4ad37cd2-5fec-0310-835f-b3785c72a374:/trunk/Catalyst-Plugin-Unicode-Encoding:11574
   + 4ad37cd2-5fec-0310-835f-b3785c72a374:/Catalyst-Plugin-Unicode-Encoding/branches/decode_captures:13212
4ad37cd2-5fec-0310-835f-b3785c72a374:/Catalyst-Plugin-Unicode-Encoding/branches/support_upload_filename:11764
4ad37cd2-5fec-0310-835f-b3785c72a374:/trunk/Catalyst-Plugin-Unicode-Encoding:11574

Modified: Catalyst-Plugin-Unicode-Encoding/trunk/Changes
===================================================================
--- Catalyst-Plugin-Unicode-Encoding/trunk/Changes	2010-05-04 18:52:41 UTC (rev 13212)
+++ Catalyst-Plugin-Unicode-Encoding/trunk/Changes	2010-05-04 21:38:56 UTC (rev 13213)
@@ -1,5 +1,9 @@
 Revision history for Perl extension Catalyst::Plugin::Unicode::Encoding
 
+0.10
+	- Correctly decode UTF-8 URI Encoded (as per RFC3986) into
+          $c->request->captures (wreis)
+
 0.9 2010-03-07 22:50:00
         - Correctly decode UTF-8 URI Encoded (as per RFC3986) into
           $c->request->arguments

Modified: Catalyst-Plugin-Unicode-Encoding/trunk/lib/Catalyst/Plugin/Unicode/Encoding.pm
===================================================================
--- Catalyst-Plugin-Unicode-Encoding/trunk/lib/Catalyst/Plugin/Unicode/Encoding.pm	2010-05-04 18:52:41 UTC (rev 13212)
+++ Catalyst-Plugin-Unicode-Encoding/trunk/lib/Catalyst/Plugin/Unicode/Encoding.pm	2010-05-04 21:38:56 UTC (rev 13213)
@@ -7,7 +7,7 @@
 use Encode 2.21 ();
 
 use MRO::Compat;
-our $VERSION = '0.9';
+our $VERSION = '0.10';
 our $CHECK   = Encode::FB_CROAK | Encode::LEAVE_SRC;
 
 __PACKAGE__->mk_classdata('_encoding');
@@ -110,7 +110,7 @@
 
     my $enc = $c->encoding;
 
-    foreach (@{$c->req->arguments}) {
+    foreach (@{$c->req->arguments}, @{$c->req->captures}) {
         $_ = Encode::is_utf8( $_ ) ? $_ : $enc->decode( $_, $CHECK );
     }
 

Modified: Catalyst-Plugin-Unicode-Encoding/trunk/t/06request_decode.t
===================================================================
--- Catalyst-Plugin-Unicode-Encoding/trunk/t/06request_decode.t	2010-05-04 18:52:41 UTC (rev 13212)
+++ Catalyst-Plugin-Unicode-Encoding/trunk/t/06request_decode.t	2010-05-04 21:38:56 UTC (rev 13213)
@@ -2,7 +2,7 @@
 
 use strict;
 use warnings;
-use Test::More tests => 6 * 3;
+use Test::More tests => 7 * 3;
 use utf8;
 
 # setup library path
@@ -31,8 +31,8 @@
 );
 
 check_argument(GET "/$escape_str");
+check_capture(GET "/capture/$escape_str");
 
-
 sub check_parameter {
     my ( undef, $c ) = ctx_request(shift);
     is $c->res->output => '<h1>It works</h1>';
@@ -59,3 +59,11 @@
     is $foo => $decode_str;
 }
 
+sub check_capture {
+    my ( undef, $c ) = ctx_request(shift);
+    is $c->res->output => '<h1>It works</h1>';
+
+    my $foo = $c->req->captures->[0];
+    ok utf8::is_utf8($foo);
+    is $foo => $decode_str;
+}

Modified: Catalyst-Plugin-Unicode-Encoding/trunk/t/lib/TestApp/Controller/Root.pm
===================================================================
--- Catalyst-Plugin-Unicode-Encoding/trunk/t/lib/TestApp/Controller/Root.pm	2010-05-04 18:52:41 UTC (rev 13212)
+++ Catalyst-Plugin-Unicode-Encoding/trunk/t/lib/TestApp/Controller/Root.pm	2010-05-04 21:38:56 UTC (rev 13213)
@@ -51,4 +51,11 @@
     $c->response->body($main::TEST_FILE); # filehandle from test file
 }
 
+sub capture : Chained('/') CaptureArgs(1) {}
+
+sub decode_capture : Chained('capture') PathPart('') Args(0) {
+    my ( $self, $c, $cap_arg ) = @_;
+    $c->forward('main');
+}
+
 1;




More information about the Catalyst-commits mailing list