Branch Coverage

blib/lib/CGI/Snapp.pm
Criterion Covered Total %
branch 65 178 36.5


line true false branch
53 0 7 unless defined $hook
59 0 7 unless $class_callbacks{$hook}
61 2 5 if (ref $self) { }
66 2 0 unless $$object_callback{$hook}
91 0 0 if (@headers)
94 0 0 scalar(@headers) % 2 == 0 ? :
0 0 ref $headers[0] eq 'ARRAY' ? :
0 0 ref $headers[0] eq 'HASH' ? :
104 0 0 if (ref $new{$key} eq 'ARRAY') { }
106 0 0 if (ref $value eq 'ARRAY') { }
112 0 0 if defined $value
117 0 0 if (ref $value eq 'ARRAY') { }
123 0 0 if defined $value
143 0 29 unless defined $hook
157 0 1 if $seen{$callback}
165 0 0 if $@
177 25 33 unless exists $class_callbacks{$hook}{$class}
181 15 28 if $seen{$callback}
189 0 0 if $@
210 0 0 unless ($self->_query)
261 0 0 if (defined $key)
303 4 0 $type eq 'redirect' ? :
3 4 $type eq 'header' ? :
326 0 7 if ref $output eq 'SCALAR'
346 0 0 $type eq 'redirect' ? :
0 0 $type eq 'header' ? :
363 0 7 if (ref $mode_source eq 'CODE') { }
0 7 elsif (ref $mode_source eq 'HASH') { }
373 0 7 unless $self->query
378 0 7 unless defined $run_mode
440 0 0 if $method_name
451 1 0 defined $run_mode ? :
475 8 0 if (exists $run_modes{$run_mode}) { }
481 0 0 unless exists $run_modes{'AUTOLOAD'}
491 0 8 $is_autoload ? :
499 0 0 if ($method_name = $self->error_mode) { }
516 7 1 defined $output ? :
530 0 0 unless $type =~ /^(?:class|object)$/
531 0 0 if length $hook == 0
533 0 0 $type eq 'class' ? :
558 4 0 scalar(@headers) % 2 == 0 ? :
0 4 ref $headers[0] eq 'ARRAY' ? :
0 4 ref $headers[0] eq 'HASH' ? :
564 4 0 if (scalar keys %new)
572 0 0 unless defined $value
574 0 0 if ref $value ne 'ARRAY'
595 0 7 if (@headers)
598 0 0 scalar(@headers) % 2 == 0 ? :
0 0 ref $headers[0] eq 'ARRAY' ? :
0 0 ref $headers[0] eq 'HASH' ? :
618 4 7 if ($option)
622 0 4 unless $valid{$option}
650 7 0 defined $$arg{'send_output'} ? :
655 4 3 if $$arg{'PARAMS'} and ref $$arg{'PARAMS'} eq 'HASH'
656 0 7 if $$arg{'QUERY'}
657 0 7 if $ENV{'CGI_SNAPP_RETURN_ONLY'}
676 201 0 if $myself and $myself->logger
690 7 0 if (@new_options) { }
694 7 0 if ($#new_options == 0 and not $ref =~ /(?:ARRAY|HASH)/) { }
701 0 0 scalar(@new_options) % 2 == 0 ? :
0 0 $ref eq 'ARRAY' ? :
0 0 $ref eq 'HASH' ? :
707 0 0 defined $new_options{'param'} ? :
711 0 0 if ($index and $path_info)
713 0 0 if $index > 0
716 0 0 length $index ? :
752 0 0 unless defined $hook
777 18 0 if (@params) { }
781 0 18 if (ref $params[0] eq 'HASH') { }
0 18 elsif (ref $params[0] eq 'ARRAY') { }
0 18 elsif (scalar @params % 2 == 0) { }
18 0 elsif ($#params == 0) { }
792 0 0 if $#params == 1
813 18 0 $returnz eq 'scalar' ? :
822 1 0 defined $run_mode ? :
826 0 1 if $self->_prerun_mode_lock
847 0 0 unless ($arg{'QUERY'})
871 7 21 if $q
872 0 28 unless $self->_query
890 1 3 if ($self->_prerun_mode_lock == 0)
896 1 3 if ($status) { }
919 0 7 if ($self->_psgi) { }
937 0 7 if $self->send_output
956 8 8 if (@new_modes)
959 1 0 scalar(@new_modes) % 2 == 0 ? :
0 1 ref $new_modes[0] eq 'ARRAY' ? :
7 1 ref $new_modes[0] eq 'HASH' ? :
986 7 0 if ($run_mode) { }
988 7 0 defined $run_mode ? :