Branch Coverage

lib/Web/DataService/Execute.pm
Criterion Covered Total %
branch 0 232 0.0


line true false branch
33 0 0 if defined $attrs and ref $attrs ne 'HASH'
41 0 0 unless (ref $ds eq 'Web::DataService')
53 0 0 unless (defined $attrs->{'path'})
73 0 0 if ref $request->{'outer'}
95 0 0 if (my $path_param = $ds->{'special'}{'path'}) { }
0 0 elsif (defined $request_path) { }
106 0 0 if (defined $ds->{'path_re'} and $request_path =~ /$ds->{'path_re'}/) { }
138 0 0 unless (ref $ds eq 'Web::DataService')
172 0 0 unless (ref $ds eq 'Web::DataService')
182 0 0 if ('Web::DataService'->is_mode('diagnostic'))
191 0 0 if ($http_method eq 'OPTIONS')
193 0 0 ref $allow_method eq 'HASH' ? :
204 0 0 if $ds->{'hook_enabled'}{'before_execute_hook'}
209 0 0 if $request->{'is_invalid_request'}
214 0 0 if ($request->{'is_node_path'} and $request->{'is_doc_request'} and $ds->has_feature('documentation')) { }
0 0 elsif ($request->{'is_file_path'} and $ds->has_feature('send_files')) { }
0 0 elsif ($request->{'is_node_path'} and $ds->node_has_operation($path)) { }
216 0 0 unless ($http_method eq 'GET' or $http_method eq 'HEAD')
230 0 0 unless ($http_method eq 'GET' or $http_method eq 'HEAD')
246 0 0 $http_method eq 'HEAD' ? :
248 0 0 unless ($allow_method->{$http_method} or $allow_method->{$check_method})
274 0 0 if $request->{'is_invalid_request'}
285 0 0 if ($file_dir) { }
287 0 0 unless defined $rest_path and $rest_path ne ''
299 0 0 if defined $rest_path and $rest_path ne ''
309 0 0 unless ($Web::DataService::FOUNDATION->file_readable($file_path))
311 0 0 if $Web::DataService::FOUNDATION->file_exists($file_path)
334 0 0 if $role and $method
349 0 0 if $request->{'is_invalid_request'} or $ds->node_attr($path, 'disabled')
357 0 0 if ($Web::DataService::ONE_REQUEST)
366 0 0 if $ds->{'hook_enabled'}{'before_config_hook'}
379 0 0 if ($rs_name) { }
385 0 0 if ($result->errors) { }
0 0 elsif ($result->warnings) { }
399 0 0 if ($ds->debug)
406 0 0 if ref $value eq 'ARRAY'
418 0 0 if $ds->debug
429 0 0 unless ($request->output_format)
437 0 0 if ($format_param)
454 0 0 if $format
465 0 0 if defined $limit_value
472 0 0 if defined $offset_value
480 0 0 if defined $header_value
485 0 0 if defined $source_value
490 0 0 if defined $count_value
500 0 0 if ($save_specified)
502 0 0 if ($save_value =~ qr/ ^ (?: no | off | 0 | false ) $ /six) { }
510 0 0 if $save_value ne '' and not $save_value =~ qr/ ^ (?: yes | on | 1 | true ) $ /six
520 0 0 if defined $vocab_value
537 0 0 unless $request->{'_configured'}
554 0 0 if $ds->{'hook_enabled'}{'before_setup_hook'}
559 0 0 unless ($ds->valid_format_for($path, $format))
574 0 0 unless (my $vocab_value = $request->output_vocab)
593 0 0 if (defined $save_flag and $save_flag eq '0') { }
0 0 elsif (defined $disp and $disp eq 'attachment' or $save_flag) { }
596 0 0 if $ds->{'format'}{$format}{'is_text'}
615 0 0 if (my $summary_block = $ds->node_attr($request, 'summary'))
617 0 0 if ($ds->configure_block($request, $summary_block)) { }
631 0 0 if $ds->{'hook_enabled'}{'post_configure_hook'}
634 0 0 if $ds->{'hook_enabled'}{'before_operation_hook'}
653 0 0 if $ds->{'hook_enabled'}{'before_output_hook'}
678 0 0 if (ref $request->{'main_record'}) { }
0 0 elsif (ref $request->{'main_sth'} or ref $request->{'main_result'}) { }
0 0 elsif (defined $request->{'main_data'}) { }
686 0 0 unless $request->{'do_not_stream'}
694 0 0 if $request->display_counts and $request->{'process_before_count'}
696 0 0 if ($request->{'preprocess'}) { }
741 0 0 if (ref $hook eq 'CODE') { }
0 0 elsif (defined $hook) { }
760 0 0 if (ref $hook eq 'CODE') { }
0 0 elsif (defined $hook) { }
780 0 0 if (defined $arg and $arg eq '*' or $ds->node_attr($request, 'public_access'))
804 0 0 unless ($ct)
820 0 0 if ($disp eq 'inline')
833 0 0 unless $filename
838 0 0 unless ($filename =~ qr/ [^.] [.] \w+ $ /sx)
858 0 0 unless ref $allow_format eq 'HASH'
880 0 0 if (defined $ruleset and $ruleset ne '')
882 0 0 unless $validator->ruleset_defined($ruleset)
891 0 0 if defined $ruleset
895 0 0 unless defined $path and $path ne '' and $path ne '/'
903 0 0 if defined $ds->{'ruleset_prefix'} and $ds->{'ruleset_prefix'} ne ''
905 0 0 if $validator->ruleset_defined($path)
923 0 0 if ref $self->{'attrs'}{'output'} eq 'ARRAY'
932 0 0 unless ref $ds->{'set'}{$output_name} eq 'Web::DataService::Set' or ref $ds->{'block'}{$output_name} eq 'Web::DataService::Block'
958 0 0 if ($ds->{'feature'}{'format_suffix'})
969 0 0 if (my $format_param = $ds->{'special'}{'format'})
974 0 0 if (ref $inner and &reftype($inner) eq 'HASH' and $inner->{'clean_params'}) { }
977 0 0 if $inner->{'clean_params'}{$format_param}
986 0 0 if $params->{$format_param}
994 0 0 if (ref $inner and $inner->isa('Web::DataService::Request'))
998 0 0 if $default_format
1028 0 0 if ('Web::DataService'->is_mode('debug'))
1030 0 0 do { $error->isa('Web::DataService::Exception') } ? :
0 0 do { $error->isa('Dancer::Exception::Base') } ? :
0 0 do { $error->isa('HTTP::Validate::Result') } ? :
0 0 do { not ref $error } ? :
0 0 defined $error ? :
1068 0 0 if (ref $request and $request->isa('Web::DataService::Request')) { }
0 0 elsif (defined $request) { }
1094 0 0 defined $inner && $inner->isa('Web::DataService::Request') ? :
1100 0 0 if $inner
1106 0 0 if (ref $inner and $inner->isa('Web::DataService::Request'))
1117 0 0 if (ref $error eq 'HTTP::Validate::Result') { }
0 0 elsif (ref $error eq 'Web::DataService::Exception') { }
0 0 elsif ($error =~ qr/ ^ (\d\d\d) \s+ (.+) /sx) { }
0 0 elsif ($error =~ qr/ ^ (\d\d\d) /sx) { }
1126 0 0 unless @errors
1145 0 0 if ($code eq '404') { }
0 0 elsif ($CODE_STRING{$code}) { }
1148 0 0 if (defined $path and $path ne '') { }
1166 0 0 unless @errors
1184 0 0 if $format
1186 0 0 if ($format_class and $format_class->can('emit_error')) { }
1210 0 0 unless $warnings[0]
1212 0 0 if (@warnings)