Skip to content

Instantly share code, notes, and snippets.

@KES777
Last active November 2, 2017 11:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save KES777/3d9abe03589d5d9f462f05d051ba15a4 to your computer and use it in GitHub Desktop.
Save KES777/3d9abe03589d5d9f462f05d051ba15a4 to your computer and use it in GitHub Desktop.
use Mojolicious::Lite;
use Test::More;
use Test::Mojo;
my $deep = Mojolicious->new;
$deep->routes->any('/deep', sub{ shift->render( 'deep' ) } )->name( 'deep' );
$deep->routes->any('/abs', sub{ shift->render( 'abs' ) } );
my $r = app->routes;
$r->any('/top/:ph/flat', sub{ shift->render( 'flat' ) } )->name( 'flat' );
$r->any('/top/:ph')->detour(app => $deep);
my $t = Test::Mojo->new;
$t->get_ok('/top/bender/deep')
->content_is( "/top/bender/deep\n" );
$t->get_ok('/top/bender/abs')
->content_is( "/top/bender/deep\n" );
$t->get_ok('/top/bender/flat')
->content_is( "/top/bender/flat\n" );
done_testing;
__DATA__
@@ deep.html.ep
%= url_for 'deep'
@@ abs.html.ep
%= url_for '/deep'
@@ flat.html.ep
%= url_for 'flat'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment