Condition Coverage

blib/lib/Waft.pm
Criterion Covered Total %
condition 63 166 37.9


and 3 conditions

line !l l&&!r l&&r condition
23 0 0 2 defined $mixins[0] and $mixins[0] eq 'with'
130 5 0 5 $package ne $class and $self->isa($package)
160 0 1 0 $using_utf8 and not $class->can_use_utf8
361 3 0 0 defined $ENV{'REQUEST_URI'} and $ENV{'REQUEST_URI'} =~ /\A ([^?]+) /msx
424 3 1 1 $self->get_using_utf8 and defined $page
483 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
695 0 0 0 $NEXT::SEEN and $Waft::Correct_NEXT_DISTINCT
761 1 0 0 $method_name eq 'begin' || $method_name eq 'before' and @return_values == 0
792 1 0 0 $next_page eq 'CURRENT' and $method_name eq 'begin' || $method_name eq 'before'
903 9 13 3 $Waft::Cache and exists $Cached_template_file{join $;, $class, $page}
999 0 1 0 $Waft::Cache and exists $Cached_template_coderef{$template_id}
1159 0 0 5 defined $keys_arrayref_or_key and $keys_arrayref_or_key eq 'ALL_VALUES'
1618 2 3 1 $protocol eq 'http' and $ENV{'SERVER_PORT'} != 80
3 1 1 $protocol eq 'https' and $ENV{'SERVER_PORT'} != 443
1625 2 0 5 defined $ENV{'REQUEST_URI'} and $ENV{'REQUEST_URI'} =~ /\A ([^?]+) /msx
1698 9 0 0 defined $Waft::Base_url and $self->BCV < 1
1843 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
254 0 0 $Default_content_type_of{$class} || 'text/html'
315 0 0 $$option_hashref{'headers'} ||= []
356 0 3 $ENV{'PATH_INFO'} || ''
406 75 8 $Stash{$_[0]->refaddr or $_[0]}{$_[1] or caller} ||= {}
1055 2 0 $1 || "\n"

or 3 conditions

line l !l&&r !l&&!r condition
76 96 28 0 $self->blessed || $self
78 17 0 107 $Backword_compatible_version_of{$class} || $Waft::Backword_compatible_version
123 0 5 0 $self->blessed || $self
174 14 0 0 $self->blessed || $self
215 41 0 0 $_[1] || $_[0]
252 0 0 0 $self->blessed || $self
314 0 0 0 $$option_hashref{'content_type'} ||= $self->get_default_content_type
371 2 1 0 $ENV{'SCRIPT_NAME'} || $self->get_script_basename
406 0 83 0 $_[1] or caller
83 0 0 $_[0]->refaddr or $_[0]
445 19 6 0 $self->stash->{'query'} ||= $self->create_query_obj
518 1 2 1 $joined_values ||= $self->cgi->param('v')
597 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
761 0 0 1 $method_name eq 'begin' || $method_name eq 'before'
785 0 1 0 $next_page eq 'CURRENT' or $next_page eq 'TEMPLATE'
792 0 0 0 $method_name eq 'begin' || $method_name eq 'before'
812 0 0 0 $self->can("__${page_id}__direct") || $self->can("__$page_id") || $self->can('global_direct')
817 0 0 0 $self->can("__${page_id}__indirect") || $self->can("__$page_id") || $self->can('global_indirect')
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')
854 0 0 1 $page eq 'CURRENT' or $page eq 'TEMPLATE'
879 0 0 1 $page eq 'CURRENT' or $page eq 'TEMPLATE'
887 0 0 0 $self->blessed || $self
901 25 0 0 $self->blessed || $self
1307 6 0 0 $_[0]->stash->{'output'} ||= do { my($self) = @_; $self->output_response_headers; $self->stash->{'responded'} = 1; $OUTPUT_CONTENT_CODEREF }
1482 8 76 0 $self->refaddr || $self
1484 10 1 73 not $Start{join $;, $ident, $method} or (caller $back + 1)[3] ne (caller 0)[3]
1618 1 0 5 $protocol eq 'http' and $ENV{'SERVER_PORT'} != 80 or $protocol eq 'https' and $ENV{'SERVER_PORT'} != 443
1832 0 0 0 $self->value_hashref->{$key} ||= $arrayref
1843 0 0 0 $args[0] eq 'ALL' || $args[0] eq 'ALLVALUES'