convert tabs to spaces and set unix line endings in t/*
[catagits/Catalyst-Runtime.git] / t / live_component_controller_args.t
index 9bdd7d9..861b4ad 100644 (file)
@@ -11,26 +11,26 @@ use URI::Escape;
 our @paths;
 our $iters;
 
-BEGIN { $iters = $ENV{CAT_BENCH_ITERS} || 2;
+BEGIN { $iters = $ENV{CAT_BENCH_ITERS} || 1;
 
-       # add special paths to test here
-       @paths = (
-                   # all reserved in uri's
-                   qw~ : / ? [ ] @ ! $ & ' ( ) * + ; = ~, ',' , '#',
+    # add special paths to test here
+    @paths = (
+        # all reserved in uri's
+        qw~ : / ? [ ] @ ! $ & ' ( ) * + ; = ~, ',' , '#',
 
-                   # unreserved
-                   'a'..'z','A'..'Z',0..9,qw( - . _ ~ ),
-                   " ",
+        # unreserved
+        'a'..'z','A'..'Z',0..9,qw( - . _ ~ ),
+        " ",
 
-                   # just to test %2F/%
-                   [ qw~ / / ~ ],
+        # just to test %2F/%
+        [ qw~ / / ~ ],
 
-                   # testing %25/%25
-                   [ qw~ % % ~ ],
-                );
+        # testing %25/%25
+        [ qw~ % % ~ ],
+    );
 }
 
-use Test::More tests => 4*@paths * $iters;
+use Test::More tests => 6*@paths * $iters;
 use Catalyst::Test 'TestApp';
 
 if ( $ENV{CAT_BENCHMARK} ) {
@@ -62,17 +62,37 @@ sub run_test_for {
     } else {
         $path = uri_escape($test);
     }
+    
+    SKIP:
+    {   
+        # Skip %2F, ., [, (, and ) tests on real webservers
+        # Both Apache and lighttpd don't seem to like these
+        if ( $ENV{CATALYST_SERVER} && $path =~ /(?:%2F|\.|%5B|\(|\))/ ) {
+            skip "Skipping $path tests on remote server", 6;
+        }
 
-    my $response;
+        my $response;
 
-    ok( $response = request("http://localhost/args/args/$path"), "Requested args for path $path");
+        ok( $response = request("http://localhost/args/args/$path"), "Requested args for path $path");
 
-    is( $response->content, $test, 'as args' );
+        is( $response->content, $test, "$test as args" );
 
-    undef $response;
+        undef $response;
 
-    ok( $response = request("http://localhost/args/params/$path"), "Requested params for path $path");
+        ok( $response = request("http://localhost/args/params/$path"), "Requested params for path $path");
 
-    is( $response->content, $test, 'as params' );
+        is( $response->content, $test, "$test as params" );
+
+        undef $response;
+
+        if( $test =~ m{/} ) {
+            $test =~ s{/}{}g;
+            $path = uri_escape( $test ); 
+        }
+
+        ok( $response = request("http://localhost/chained/multi_cap/$path/baz"), "Requested capture for path $path");
+
+        is( $response->content, join( ', ', split( //, $test ) ) ."; ", "$test as capture" );
+    }
 }