Condition Coverage

blib/lib/MR/Tarantool/Box.pm
Criterion Covered Total %
condition 0 275 0.0


and 3 conditions

line !l l&&!r l&&r condition
326 0 0 0 not defined $$self{'default_raw'} and defined $$self{'hashify'}
0 0 0 not defined $$self{'default_raw'} and defined $$self{'hashify'} and not $$self{'hashify'}
336 0 0 0 $$ns{'name'} and $namespaces{$$ns{'name'}}
337 0 0 0 $$ns{'indexes'} and @{$$ns{'indexes'};}
352 0 0 0 $$index{'keys'} and @{$$index{'keys'};}
356 0 0 0 int $_ == $_ and $_ >= 0
0 0 0 int $_ == $_ and $_ >= 0 and $_ < @{$$ns{'field_format'};}
383 0 0 0 not defined $$ns{'default_raw'} and defined $$ns{'hashify'}
0 0 0 not defined $$ns{'default_raw'} and defined $$ns{'hashify'} and not $$ns{'hashify'}
467 0 0 0 $callback and $$self{'raise'}
476 0 0 0 $$ret_code[0] == 1 and --$soft_retry > 0
489 0 0 0 not $error and $data
494 0 0 0 $$ret_code[0] != 0 and $$self{'debug'} >= 1
533 0 0 0 $param{'continue'} and $$ret{'ok'}
538 0 0 0 $$self{'raise'} and not $$ret{'ok'}
549 0 0 0 $args && @$args && ref $$args[-1] eq 'HASH'
559 0 0 0 exists $$param{'space'} and defined $$param{'space'}
615 0 0 0 exists $$param{'unpack_format'} and $$param{'unpack_format'}
695 0 0 0 @_ && ref $_[-1] eq 'HASH'
701 0 0 0 @_ && ref $_[-1] eq 'HASH'
707 0 0 0 @_ && ref $_[-1] eq 'HASH'
744 0 0 0 looks_like_number($tuple[$_]) and int $tuple[$_] == $tuple[$_]
757 0 0 0 $r && $$r[0]
768 0 0 0 $$param{'callback'} && $cb
833 0 0 0 looks_like_number $_ and int $_ == $_
840 0 0 0 ref $k eq 'ARRAY' and @$k
0 0 0 ref $k eq 'ARRAY' and @$k and @$k <= @$keys
843 0 0 0 looks_like_number($$k[$i]) and int $$k[$i] == $$k[$i]
880 0 0 0 $long_utf8_fields and @$long_utf8_fields
884 0 0 0 $long_tuple and @$long_utf8_fields
1012 0 0 0 @keys and ref $keys[0] eq 'ARRAY'
0 0 0 @keys and ref $keys[0] eq 'ARRAY' and 1 == @{$$param{'index'}{'keys'};} || @keys && ref $keys[0][0] eq 'ARRAY'
1039 0 0 0 $r and defined(my $p = $$param{'hash_by'})
1046 0 0 0 $p =~ /^\d+$/ and $p >= 0
0 0 0 $p =~ /^\d+$/ and $p >= 0 and $p < @{$$r[0];}
1059 0 0 0 $$param{'return_fh'} and ref $$param{'return_fh'} eq 'CODE'
1077 0 0 0 @keys and $payload
1180 0 0 0 $r && $$r[0]
1191 0 0 0 $$param{'callback'} && $cb
1352 0 0 0 ref $field_num eq 'ARRAY' and $long_fmt
1364 0 0 0 $field_num >= @$fmt and $long_fmt
1387 0 0 0 $ops_type{$op} ne $field_type and $ops_type{$op} ne 'any'
1392 0 0 0 $field_num >= @$fmt and not defined $long_field_num
1393 0 0 0 defined $long_field_num and $long_field_num >= @$long_fmt
1406 0 0 0 $r && $$r[0]
1417 0 0 0 $$param{'callback'} && $cb

or 2 conditions

line l !l condition
310 0 0 $$arg{'timeout'} || 23
311 0 0 $$arg{'retry'} || 1
312 0 0 $$arg{'retry_delay'} || 1
313 0 0 $$arg{'select_retry'} || 3
314 0 0 $$arg{'soft_retry'} || $$arg{'softretry'} || 3
315 0 0 $$arg{'debug'} || 0
316 0 0 $$arg{'ipdebug'} || 0
366 0 0 $$ns{'default_index'} ||= 0
367 0 0 $$ns{'primary_key_index'} ||= 0
493 0 0 $$data || $MR::Tarantool::Box::ERRORS{$full_code & 4294967040} || 'Unknown error'
609 0 0 $$param{'flags'} || 0
639 0 0 $$param{'unpack'} || sub { $self->_unpack_select($namespace, 'CALL', @_); }
720 0 0 $$param{'_flags'} || 0
723 0 0 $$param{'action'} ||= 'set'
777 0 0 $debug_prefix ||= 'SELECT'
802 0 0 $debug_prefix ||= 'SMULTI'
815 0 0 unpack('L', substr($_[3], 0, 4, '')) || '0E0'
872 0 0 $$param{'offset'} || 0
1031 0 0 $$param{'want'} ||= !1
1103 0 0 $$param{'want'} ||= 0
1339 0 0 $$param{'_flags'} || 0
1445 0 0 $arg{'bit_clear'} ||= 0
1446 0 0 $arg{'bit_set'} ||= 0
1460 0 0 $arg{'num_add'} ||= 0
1461 0 0 $arg{'num_sub'} ||= 0

or 3 conditions

line l !l&&r !l&&!r condition
309 0 0 0 $$arg{'name'} || ref $class || $class
319 0 0 0 $$arg{'select_timeout'} || $$self{'timeout'}
320 0 0 0 $$arg{'iprotoclass'} || $class->IPROTOCLASS
328 0 0 0 $$arg{'namespaces'} || confess('no spaces given')
0 0 0 $$arg{'spaces'} ||= $$arg{'namespaces'} || confess('no spaces given')
336 0 0 0 $namespaces{$namespace} or $$ns{'name'} and $namespaces{$$ns{'name'}}
353 0 0 0 $$inames{$index_name} or $$inames{$i}
356 0 0 0 int $_ == $_ and $_ >= 0 and $_ < @{$$ns{'field_format'};} or confess("space[$namespace]index[$index_name] bad key `${_}'")
358 0 0 0 $$index{'string_keys'} ||= $$ns{'string_keys'}
369 0 0 0 $$ns{'fields'} ||= $$arg{'default_fields'}
370 0 0 0 $$ns{'long_fields'} ||= $$arg{'default_long_fields'}
374 0 0 0 /^[A-Za-z]/ or confess("space[$namespace] fields names must begin with [A-Za-z]: bad name $_")
380 0 0 0 /^[A-Za-z]/ or confess("space[$namespace] long_fields names must begin with [A-Za-z]: bad name $_")
392 0 0 0 $$arg{'default_space'} || $$arg{'default_namespace'} || $$arg{'spaces'}[0]{'space'}
458 0 0 0 $param{'timeout'} || $$self{'timeout'}
459 0 0 0 $param{'retry'} || $$self{'retry'}
465 0 0 0 $callback || $return_fh
510 0 0 0 $message ||= ($$self{'_last_error_msg'} = $error)
615 0 0 0 exists $$param{'unpack'} or exists $$param{'unpack_format'} and $$param{'unpack_format'}
793 0 0 0 not @tuple or $@
872 0 0 0 $$param{'limit'} || ($$param{'default_limit_by_keys'} ? scalar @keys : 2147483647)
880 0 0 0 @utf8_fields or $long_utf8_fields and @$long_utf8_fields
892 0 0 0 $$param{'hashify'} || $$namespace{'hashify'} || $$self{'hashify'}
1012 0 0 0 1 == @{$$param{'index'}{'keys'};} || @keys && ref $keys[0][0] eq 'ARRAY'
1018 0 0 0 @keys != 1 or not $$param{'next_rows'}
1082 0 0 0 $$param{'timeout'} || $$self{'select_timeout'}
1116 0 0 0 $$param{'select_timeout'} || $$self{'timeout'}
1348 0 0 0 ref $_ ne 'ARRAY' or @$_ != 3
1395 0 0 0 $update_arg_fmt{$op} || ($field_num < @$fmt ? $$fmt[$field_num] : $$long_fmt[$long_field_num])