Branch Coverage

blib/lib/Hades/Realm/Exporter.pm
Criterion Covered Total %
branch 178 240 74.1


line true false branch
8 29 2 scalar @_ == 1 ? :
16 3 28 defined $args{$accessor} ? :
17 0 29 unless (not $accessors{$accessor}{'required'} or defined $value)
26 34 14 if (defined $value)
27 4 30 if ((ref $value || '') ne 'HASH')
37 12 0 if (defined $name)
38 2 10 if (ref $name)
50 2 9 if ((ref $mg || '') =~ /^(|HASH|ARRAY|SCALAR|CODE|GLOB)$/)
51 2 0 defined $mg ? :
55 2 7 if ((ref $class || '') ne 'HASH')
56 2 0 defined $class ? :
60 2 5 defined $export ? :
61 2 5 if ((ref $export || '') ne 'HASH')
62 2 0 defined $export ? :
67 1 4 if ($class->{'CURRENT'}{'BASE'} or $class->{'CURRENT'}{'PARENT'})
69 0 1 unless $class->{'CURRENT'}{'BASE'}
70 1 0 unless $class->{'CURRENT'}{'PARENT'}
73 1 0 if ($self->export->{$cls}) { }
94 2 7 if ((ref $mg || '') =~ /^(|HASH|ARRAY|SCALAR|CODE|GLOB)$/)
95 2 0 defined $mg ? :
99 2 5 if ((ref $meta || '') ne 'HASH')
100 2 0 defined $meta ? :
104 0 5 defined $our ? :
110 30 0 if ($meta->{$_}{'meta'} =~ /^(ACCESSOR|METHOD)$/)
111 24 6 if ($1 eq 'ACCESSOR')
113 11 13 if $meta->{$_}{'default'}
120 5 25 if $meta->{$_}{'predicate'}
123 8 22 if $meta->{$_}{'clearer'}
130 0 5 if ($class{'CURRENT'}{'BEGIN'}) { }
142 2 11 if (not defined $begin or ref $begin)
143 2 0 defined $begin ? :
147 2 9 if ((ref $mg || '') =~ /^(|HASH|ARRAY|SCALAR|CODE|GLOB)$/)
148 2 0 defined $mg ? :
152 2 7 if ((ref $export || '') ne 'HASH')
153 2 0 defined $export ? :
157 2 5 if ((ref $meta || '') ne 'HASH')
158 2 0 defined $meta ? :
182 2 51 if (not defined $name or ref $name)
183 2 0 defined $name ? :
187 2 49 if (not defined $type or ref $type)
188 2 0 defined $type ? :
192 2 47 if ((ref $export || '') ne 'HASH')
193 2 0 defined $export ? :
197 32 15 if (defined $now)
198 2 30 if (ref $now or not $now =~ /^[-+\d]\d*$/)
203 2 43 if (not defined $import or (ref $import || '') ne 'ARRAY')
204 2 0 defined $import ? :
211 20 23 if $now
222 2 5 if ((ref $mg || '') =~ /^(|HASH|ARRAY|SCALAR|CODE|GLOB)$/)
223 2 0 defined $mg ? :
248 30 0 wantarray ? :
270 2 30 if (not defined $name or ref $name)
271 2 0 defined $name ? :
275 2 28 if (not defined $private or ref $private)
276 2 0 defined $private ? :
280 2 26 if (not defined $type or ref $type)
281 2 0 defined $type ? :
285 2 24 if (not defined $trigger or ref $trigger)
286 2 0 defined $trigger ? :
316 24 0 unless $params[2]{$params[1]}{'pod'}
318 24 0 unless $params[2]{$params[1]}{'example'}
320 0 24 wantarray ? :
335 0 13 $name =~ /^(begin|unitcheck|check|init|end|new)$/ ? :
344 2 25 if (not defined $name or ref $name)
345 2 0 defined $name ? :
349 2 23 if (not defined $params or ref $params)
350 2 0 defined $params ? :
354 2 21 if (not defined $subtype or ref $subtype)
355 2 0 defined $subtype ? :
359 2 19 if (not defined $code or ref $code)
360 2 0 defined $code ? :
366 5 14 if $params
388 0 6 wantarray ? :
393 2 12 if ((ref $mg || '') =~ /^(|HASH|ARRAY|SCALAR|CODE|GLOB)$/)
394 2 0 defined $mg ? :
398 2 10 if (not defined $name or ref $name)
399 2 0 defined $name ? :
403 2 8 if ((ref $meta || '') ne 'HASH')
404 2 0 defined $meta ? :
425 2 9 if ((ref $mg || '') =~ /^(|HASH|ARRAY|SCALAR|CODE|GLOB)$/)
426 2 0 defined $mg ? :
430 2 7 if (not defined $name or ref $name)
431 2 0 defined $name ? :
435 2 5 if ((ref $meta || '') ne 'HASH')
436 2 0 defined $meta ? :
454 5 0 $meta->{$name}{'required'} || $meta->{$name}{'default'} ? :
462 2 33 if (not defined $name or ref $name)
463 2 0 defined $name ? :
467 2 31 if (not defined $param or ref $param)
468 2 0 defined $param ? :
472 2 29 if (defined $code)
473 2 0 if (ref $code)
480 0 0 $code =~ /^\w+$/ ? :
0 29 defined $code ? :
490 2 28 if (not defined $name or ref $name)
491 2 0 defined $name ? :
495 2 26 if (not defined $param or ref $param)
496 2 0 defined $param ? :
500 2 24 if (defined $code)
501 2 0 if (ref $code)
508 0 0 $code =~ /^\w+$/ ? :
0 0 $code =~ /^1$/ ? :
0 24 defined $code ? :
519 2 71 if (not defined $name or ref $name)
520 2 0 defined $name ? :
524 2 69 if ((ref $meta || '') ne 'HASH')
525 2 0 defined $meta ? :
529 37 32 if (defined $mod)
530 2 35 if (ref $mod)
535 37 30 if (defined $class)
536 2 35 if ((ref $class || '') ne 'HASH')
543 35 30 if ($class)
545 29 6 if ($meta->{'meta'} eq 'ACCESSOR') { }
6 0 elsif ($meta->{'meta'} eq 'METHOD') { }
555 8 21 $meta->{'private'} ? :
557 12 6 unless $meta->{'required'} or $meta->{'default'}
562 18 3 if (scalar @test_cases > 1)
566 18 0 unless ($meta->{'coerce'})
585 0 6 $meta->{'private'} ? :
614 2 63 if $meta->{'test'}