Condition Coverage

blib/lib/Waft.pm
Criterion Covered Total %
condition 67 166 40.3


and 3 conditions

line !l l&&!r l&&r condition
24 0 0 2 defined $mixins[0] and $mixins[0] eq 'with'
139 7 0 7 $package ne $class and $self->isa($package)
169 0 1 0 $using_utf8 and not $class->can_use_utf8
376 3 0 0 defined $ENV{'REQUEST_URI'} and $ENV{'REQUEST_URI'} =~ /\A ([^?]+) /msx
439 3 1 1 $self->get_using_utf8 and defined $page
498 0 0 3 defined $untainted_page and not 'File::Spec'->file_name_is_absolute($untainted_page)
0 0 3 defined $untainted_page and not 'File::Spec'->file_name_is_absolute($untainted_page) and not $untainted_page eq 'CURRENT'
0 0 3 defined $untainted_page and not 'File::Spec'->file_name_is_absolute($untainted_page) and not $untainted_page eq 'CURRENT' and not $untainted_page eq 'TEMPLATE'
0 0 3 defined $untainted_page and not 'File::Spec'->file_name_is_absolute($untainted_page) and not $untainted_page eq 'CURRENT' and not $untainted_page eq 'TEMPLATE' and not $self->to_page_id($untainted_page) =~ / __indirect \z/msx
710 0 0 0 $NEXT::SEEN and $Waft::Correct_NEXT_DISTINCT
776 1 0 0 $method_name eq 'begin' || $method_name eq 'before' and @return_values == 0
807 1 0 0 $next_page eq 'CURRENT' and $method_name eq 'begin' || $method_name eq 'before'
918 9 13 3 $Waft::Cache and exists $Cached_template_file{join $;, $class, $page}
1014 0 1 0 $Waft::Cache and exists $Cached_template_coderef{$template_id}
1174 0 0 5 defined $keys_arrayref_or_key and $keys_arrayref_or_key eq 'ALL_VALUES'
1715 2 3 1 $protocol eq 'http' and $ENV{'SERVER_PORT'} != 80
3 1 1 $protocol eq 'https' and $ENV{'SERVER_PORT'} != 443
1722 2 0 5 defined $ENV{'REQUEST_URI'} and $ENV{'REQUEST_URI'} =~ /\A ([^?]+) /msx
1795 9 0 0 defined $Waft::Base_url and $self->BCV < 1
1948 0 0 0 @args == 1 and defined $args[0]
0 0 0 @args == 1 and defined $args[0] and $args[0] eq 'ALL' || $args[0] eq 'ALLVALUES'

or 2 conditions

line l !l condition
269 0 1 $Default_content_type_of{$class} || 'text/html'
330 0 0 $$option_hashref{'headers'} ||= []
371 0 3 $ENV{'PATH_INFO'} || ''
421 96 12 $Stash{$_[0]->refaddr or $_[0]}{$_[1] or caller} ||= {}
1070 2 0 $1 || "\n"

or 3 conditions

line l !l&&r !l&&!r condition
79 108 41 0 $self->blessed || $self
81 17 0 132 $Backword_compatible_version_of{$class} || $Waft::Backword_compatible_version
132 2 5 0 $self->blessed || $self
183 14 0 0 $self->blessed || $self
230 41 0 0 $_[1] || $_[0]
267 1 0 0 $self->blessed || $self
329 0 0 0 $$option_hashref{'content_type'} ||= $self->get_default_content_type
386 2 1 0 $ENV{'SCRIPT_NAME'} || $self->get_script_basename
421 0 108 0 $_[1] or caller
108 0 0 $_[0]->refaddr or $_[0]
460 19 6 0 $self->stash->{'query'} ||= $self->create_query_obj
533 1 2 1 $joined_values ||= $self->cgi->param('v')
612 0 0 6 $action_id =~ /(?: \A | _ ) direct \z/msx or $action_id =~ /(?: \A | _ ) indirect \z/msx
0 0 6 $action_id =~ /(?: \A | _ ) direct \z/msx or $action_id =~ /(?: \A | _ ) indirect \z/msx or $action_id =~ /\A global__ /msx
776 0 0 1 $method_name eq 'begin' || $method_name eq 'before'
800 0 1 0 $next_page eq 'CURRENT' or $next_page eq 'TEMPLATE'
807 0 0 0 $method_name eq 'begin' || $method_name eq 'before'
827 0 0 0 $self->can("__${page_id}__direct") || $self->can("__$page_id") || $self->can('global_direct')
832 0 0 0 $self->can("__${page_id}__indirect") || $self->can("__$page_id") || $self->can('global_indirect')
842 0 0 0 $self->can("__${page_id}__direct") || $self->can("__$page_id") || $self->can('global__direct')
847 0 0 0 $self->can("__${page_id}__indirect") || $self->can("__$page_id") || $self->can('global__indirect')
869 0 0 1 $page eq 'CURRENT' or $page eq 'TEMPLATE'
894 0 0 1 $page eq 'CURRENT' or $page eq 'TEMPLATE'
902 0 0 0 $self->blessed || $self
916 25 0 0 $self->blessed || $self
1325 6 2 0 $_[0]->stash->{'output'} ||= do { my($self) = @_; $self->output_response_headers; $self->stash->{'responded'} = 1; $OUTPUT_CONTENT_CODEREF }
1516 8 76 0 $self->refaddr || $self
1518 10 1 73 not $Start{join $;, $ident, $method} or (caller $back + 1)[3] ne (caller 0)[3]
1715 1 0 5 $protocol eq 'http' and $ENV{'SERVER_PORT'} != 80 or $protocol eq 'https' and $ENV{'SERVER_PORT'} != 443
1937 0 0 0 $self->value_hashref->{$key} ||= $arrayref
1948 0 0 0 $args[0] eq 'ALL' || $args[0] eq 'ALLVALUES'