Condition Coverage

blib/lib/AtteanX/Parser/SPARQL.pm
Criterion Covered Total %
condition 75 173 43.3


and 3 conditions

line !l l&&!r l&&r condition
360 1 0 0 $self->update and not $self->_peek_token
873 1 0 0 not $parens and $count == 0
1 0 0 not $parens and $count > 1
879 1 0 0 !$parens && $count == 1
884 0 0 0 $short and $self->_test_token(17)
1020 3 0 0 &blessed($triples) and $triples->isa("Attean::Algebra::BGP")
1537 1 0 0 &blessed($peek) and $peek->isa("Attean::Algebra::BGP")
1685 0 0 0 not $parens and $count == 0
0 0 0 not $parens and $count > 1
1691 0 0 0 !$parens && $count == 1
1693 0 0 0 $short and $self->_test_token(17)
1850 0 0 0 not $parens and $count == 0
0 0 0 not $parens and $count > 1
1856 0 0 0 !$parens && $count == 1
1859 0 0 0 $short and $self->_test_token(17)
2886 0 0 1 &blessed($expr) and $expr->isa("Attean::ValueExpression")
0 0 1 &blessed($expr) and $expr->isa("Attean::ValueExpression") and $expr->value->does("Attean::API::NumericLiteral")
2900 0 0 1 &blessed($expr) and $expr->isa("Attean::ValueExpression")
0 0 1 &blessed($expr) and $expr->isa("Attean::ValueExpression") and $expr->value->does("Attean::API::NumericLiteral")
3077 1 0 1 $self->{'__aggregate_call_ok'} and $self->_test_token(42, qr/^(MIN|MAX|COUNT|AVG|SUM|SAMPLE|GROUP_CONCAT)\b/iou)
3449 0 0 2 $g->isa("Attean::ValueExpression") and $g->value->does("Attean::API::Variable")
3541 26 1 1 exists $self->{'build'}{'options'}{'offset'} and exists $self->{'build'}{'options'}{'limit'}
3643 2 0 0 &reftype($p) eq "ARRAY" and $p->[0] eq "PATH"
3716 51 0 0 $self->log->is_trace and scalar @patterns > scalar(@paths) + scalar(@triples)
3856 0 0 1 $t and $t->start_line > 0

or 2 conditions

line l !l condition
215 0 5 $args{'commas'} || 0
1271 29 4 shift() // []
1304 1 1 $self->{'build'}{'__aggregate'} ||= {}
1377 1 0 $self->{'build'}{'__aggregate'} ||= {}
1419 0 1 $self->{'build'}{'__aggregate'} ||= {}
3423 2 27 delete $self->{'build'}{'__group_by'} || []
3425 2 27 scalar @aggkeys or scalar @$groupby

or 3 conditions

line l !l&&r !l&&!r condition
122 3 50 0 delete $args{'namespaces'} // "URI::NamespaceMap"->new
384 0 2 42 $count == 0 or $count > 1
884 1 0 0 not $short or $short and $self->_test_token(17)
929 25 7 4 $self->_test_token(53) or $self->__SelectVar_test
1525 0 0 17 $need_dot or $self->_test_token(8)
1693 0 0 0 not $short or $short and $self->_test_token(17)
1859 0 0 0 not $short or $short and $self->_test_token(17)
2240 9 0 0 $self->_VerbPath_test or $self->_test_token(54)
2366 1 0 34 $self->_test_token(52) or $self->_test_token(41)
2426 1 0 0 $self->_test_token(53) or $self->_test_token(51)
1 0 0 $self->_test_token(53) or $self->_test_token(51) or $self->_test_token(50)
2705 0 0 45 $self->_test_token(37) or $self->_test_token(3)
11 0 34 $self->_test_token(12) or $self->_test_token(7)
11 0 34 $self->_test_token(12) or $self->_test_token(7) or $self->_test_token(9)
0 0 34 $self->_test_token(12) or $self->_test_token(7) or $self->_test_token(9) or $self->_test_token(45)
0 0 34 $self->_test_token(12) or $self->_test_token(7) or $self->_test_token(9) or $self->_test_token(45) or $self->_test_token(50)
2796 0 0 12 $type == 10 or $type == 47
0 0 12 $type == 10 or $type == 47 or $type == 43
0 0 12 $type == 10 or $type == 47 or $type == 43 or $type == 39
0 2 10 $type == 10 or $type == 47 or $type == 43 or $type == 39 or $type == 44
2 1 9 $type == 10 or $type == 47 or $type == 43 or $type == 39 or $type == 44 or $type == 40
2847 0 1 15 $self->_test_token(45) or $self->_test_token(50)
2863 0 0 16 $self->_test_token(53) or $self->_test_token(52)
2921 2 1 2 $self->_test_token(12) or $self->_test_token(7)
3 1 1 $self->_test_token(12) or $self->_test_token(7) or $self->_test_token(9)
2 0 1 $self->_test_token(12) or $self->_test_token(7) or $self->_test_token(9) or $self->_test_token(50)
1 0 1 $self->_test_token(12) or $self->_test_token(7) or $self->_test_token(9) or $self->_test_token(50) or $self->_test_token(45)
3475 1 1 1 exists $agg_vars{$name} or exists $group_vars{$name}