blib/lib/HTML/Tested/Value/Radio.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
statement | 20 | 20 | 100.0 |
branch | 4 | 6 | 66.6 |
condition | n/a | ||
subroutine | 4 | 4 | 100.0 |
pod | 1 | 1 | 100.0 |
total | 29 | 31 | 93.5 |
line | stmt | bran | cond | sub | pod | time | code |
---|---|---|---|---|---|---|---|
1 | 17 | 17 | 100 | use strict; | |||
17 | 35 | ||||||
17 | 2071 | ||||||
2 | 17 | 17 | 101 | use warnings FATAL => 'all'; | |||
17 | 33 | ||||||
17 | 1142 | ||||||
3 | |||||||
4 | package HTML::Tested::Value::Radio; | ||||||
5 | 17 | 17 | 130 | use base 'HTML::Tested::Value'; | |||
17 | 42 | ||||||
17 | 9871 | ||||||
6 | |||||||
7 | sub render { | ||||||
8 | 17 | 17 | 1 | 27 | my ($self, $caller, $stash, $id) = @_; | ||
9 | 17 | 39 | my $n = $self->name; | ||||
10 | 17 | 50 | 61 | my $val = $self->get_value($caller, $id, $n) or return; | |||
11 | 17 | 31 | for my $v (@$val) { | ||||
12 | 49 | 55 | my $ch = ''; | ||||
13 | 49 | 47 | my $opt; | ||||
14 | 49 | 100 | 86 | if (ref($v) eq 'ARRAY') { | |||
15 | 14 | 50 | 41 | $ch = 'checked ' if $v->[1]; | |||
16 | 14 | 22 | $opt = $v->[0]; | ||||
17 | } else { | ||||||
18 | 35 | 44 | $opt = $v; | ||||
19 | } | ||||||
20 | 49 | 260 | $stash->{"$n\_$opt"} = < | ||||
21 | |||||||
22 | ENDS | ||||||
23 | } | ||||||
24 | } | ||||||
25 | |||||||
26 | 1; | ||||||
27 |