update distar url
[catagits/Catalyst-Runtime.git] / t / aggregate / unit_core_uri_for_action.t
index 156f79e..f9d3ba1 100644 (file)
@@ -1,5 +1,3 @@
-#!perl
-
 use strict;
 use warnings;
 
@@ -79,6 +77,26 @@ my $context = TestApp->new( {
                 namespace => 'yada',
               } );
 
+is($context->uri_for($context->controller('Action::Chained')->action_for('endpoint'), [ 1 ]),
+   'http://127.0.0.1/foo/chained/foo/1/end',
+   "uri_for a controller and action");
+
+is( $context->uri_for_action( '/action/chained/endpoint', [ 1 ] ),
+    'http://127.0.0.1/foo/chained/foo/1/end',
+    "uri_for a controller and action as string");
+
+is(TestApp->uri_for_action($context->controller('Action::Chained')->action_for('endpoint'), [ 1 ]),
+    '/chained/foo/1/end',
+    "uri_for a controller and action, called with only class name");
+
+is(TestApp->uri_for_action('/action/chained/endpoint', [ 1 ] ),
+    '/chained/foo/1/end',
+    "uri_for a controller and action as string, called with only class name");
+
+is(TestApp->uri_for_action(  $chained_action, [ 1 ]),
+    '/chained/foo/1/end',
+    "uri_for action via dispatcher, called with only class name");
+
 is($context->uri_for($context->controller('Action')),
    "http://127.0.0.1/foo/yada/action/",
    "uri_for a controller");
@@ -119,10 +137,10 @@ is($context->uri_for($chained_action, [ 1 ], 2, { q => 1 }),
         'uri_for_action correct for chained with multiple capturing actions and args combined' );
 
     my $action_needs_two = '/action/chained/endpoint2';
-    
+
     ok( ! defined( $context->uri_for_action($action_needs_two, [1],     (2,3)) ),
         'uri_for_action returns undef for not enough captures' );
-        
+
     is( $context->uri_for_action($action_needs_two,            [1,2],   (2,3)),
         'http://127.0.0.1/foo/chained/foo2/1/2/end2/2/3',
         'uri_for_action returns correct uri for correct captures' );
@@ -133,7 +151,7 @@ is($context->uri_for($chained_action, [ 1 ], 2, { q => 1 }),
 
     ok( ! defined( $context->uri_for_action($action_needs_two, [1,2,3], (2,3)) ),
         'uri_for_action returns undef for too many captures' );
-    
+
     is( $context->uri_for_action($action_needs_two, [1,2],   (3)),
         'http://127.0.0.1/foo/chained/foo2/1/2/end2/3',
         'uri_for_action returns uri with lesser args than specified on action' );