File Coverage

blib/lib/Eixo/Rest/Uri.pm
Criterion Covered Total %
statement 15 15 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod 0 1 0.0
total 18 19 94.7


line stmt bran cond sub pod time code
1             package Eixo::Rest::Uri;
2              
3 3     3   648 use strict;
  3         6  
  3         111  
4 3     3   887 use Eixo::Base::Clase;
  3         21044  
  3         20  
5              
6             my $REG_PARAM = qr/\:(\w+)/;
7              
8             has(
9              
10             args=>undef,
11              
12             uri_mask=>undef,
13              
14             );
15              
16             sub build{
17 2     2 0 264 my ($self) = @_;
18              
19 2         7 my $mask = $self->uri_mask;
20              
21 2         15 my @implicit_params;
22              
23 2         5 my $c_mask = $mask;
24              
25 2         27 while($mask =~ /$REG_PARAM/g){
26              
27             my ($param_name, $param_value) = (
28              
29             $1,
30              
31 4         18 $self->args->{$1}
32              
33             );
34              
35 4         44 push @implicit_params, $1;
36              
37 4         108 $c_mask =~ s/\:$param_name/$param_value/g;
38              
39             }
40              
41 2         16 return $c_mask, @implicit_params;
42             }
43              
44             1;