File Coverage

blib/lib/Ark/ActionClass/Form.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 5 5 100.0
pod 0 1 0.0
total 17 18 94.4


line stmt bran cond sub pod time code
1             package Ark::ActionClass::Form;
2 2     2   955 use Mouse::Role;
  2         6  
  2         14  
3              
4 2     2   1544 use Ark::Form;
  2         186  
  2         511  
5              
6 11     11 0 345 sub form { shift->{form} }
7              
8             around ACTION => sub {
9             my $orig = shift;
10              
11             my ($self, $action, $context, @args) = @_;
12             my $form_class = $action->attributes->{Form}->[0];
13             if ($form_class) {
14             local $self->{form};
15             $context->ensure_class_loaded($form_class);
16             my $form = $form_class->new( $context->request, $context );
17              
18             $context->stash->{form} = $form;
19             $self->{form} = $form;
20             $orig->(@_);
21             }
22             else {
23             $orig->(@_);
24             }
25             };
26              
27 2     2   20 no Mouse::Role;
  2         4  
  2         30  
28              
29             sub _parse_Form_attr {
30 30     30   48153 my ($self, $name, $value) = @_;
31 30         106 return Form => $value;
32             }
33              
34             1;
35              
36