File: | t/route-path-prefix.t |
Coverage: | 93.1% |
line | stmt | bran | cond | sub | pod | time | code |
---|---|---|---|---|---|---|---|
1 | #!/usr/bin/env perl -w | ||||||
2 | 1 1 1 | 100 9 10 | use strict; | ||||
3 | 1 1 1 | 110 6 18 | use Test::More tests => 5; | ||||
4 | |||||||
5 | 1 1 1 | 89 5 16 | use Railsish::Router; | ||||
6 | |||||||
7 | Railsish::Router->draw( | ||||||
8 | sub { | ||||||
9 | 1 | 7 | my ($map) = @_; | ||||
10 | 1 | 11 | $map->resources("blogs", path_prefix => "/admin"); | ||||
11 | } | ||||||
12 | 1 | 26 | ); | ||||
13 | |||||||
14 | 1 | 16 | my $blog = { id => 1 }; | ||||
15 | |||||||
16 | 1 | 10 | is(Railsish::Router->blogs_path, "/admin/blogs"); | ||||
17 | 1 | 13 | is(Railsish::Router->blog_path($blog), "/admin/blogs/1"); | ||||
18 | 1 | 12 | is(Railsish::Router->edit_blog_path($blog), "/admin/blogs/1/edit"); | ||||
19 | 1 | 14 | is(Railsish::Router->new_blog_path, "/admin/blogs/new"); | ||||
20 | |||||||
21 | { | ||||||
22 | 1 1 | 6 18 | my $matched = Railsish::Router->match("/admin/blogs", conditions => {method => "get" }); | ||||
23 | 1 | 11 | if ($matched) { | ||||
24 | 1 | 10 | my $mapping = $matched->mapping; | ||||
25 | 1 | 25 | is($mapping->{path_prefix}, "/admin"); | ||||
26 | } | ||||||
27 | else { | ||||||
28 | 0 | 0 | fail "Not matching /admin/blogs"; | ||||
29 | } | ||||||
30 | } |