Condition Coverage

blib/lib/EV/Kafka.pm
Criterion Covered Total %
condition 38 416 9.1


and 3 conditions

line !l l&&!r l&&r condition
75 10 1 1 $cfg->{'sasl'} and not $cfg->{'tls'}
97 1 0 0 $conn && $conn->connected
133 0 0 0 $weak_cfg and $weak_cfg->{'on_error'}
218 0 0 0 $cfg->{'bootstrap_conn'} and $meta->{'brokers'}
0 0 0 $cfg->{'bootstrap_conn'} and $meta->{'brokers'} and @{$meta->{'brokers'};}
223 0 0 0 $cfg->{'idempotent'} || $cfg->{'transactional_id'} and $cfg->{'producer_id'} < 0
274 0 0 1 $op->{'topic'} and $op->{'topic'} eq $topic
302 0 0 0 $cfg->{'meta'} and ref $cfg->{'meta'}{'topics'} eq "ARRAY"
315 0 0 0 $t->{'name'} eq $topic and not $t->{'error_code'}
0 0 0 $t->{'name'} eq $topic and not $t->{'error_code'} and @{$t->{'partitions'} // [];}
342 0 0 0 not $err and $res
0 0 0 not $err and $res and not $res->{'error_code'}
360 0 0 0 $res->{'error_code'} and $res->{'error_code'} != 0
369 0 0 0 $txn_conn and $txn_conn->connected
396 0 0 0 defined $op->{'node_id'} and $op->{'node_id'} == $node_id
413 0 0 0 $conn and $conn->connected
447 0 0 0 defined $key and length $key
490 0 0 0 $conn and $conn->connected
528 0 0 0 defined $cfg->{'producer_id'} && $cfg->{'producer_id'} >= 0
533 0 0 0 $idempotent and $cfg->{'_inflight'}{$bkey}
536 0 0 0 $batch and @$batch
566 0 0 0 not $err and $result
0 0 0 not $err and $result and ref $result->{'topics'} eq "ARRAY"
582 0 0 0 $idempotent and $fatal_seq
0 0 0 $idempotent and $fatal_seq and not $cfg->{'_txn_active'}
0 0 0 $idempotent and $fatal_seq and not $cfg->{'_txn_active'} and ($cfg->{'_epoch_retries'}{$bkey} //= 1) > 0
602 0 0 0 $retriable and ($cfg->{'_batch_retries'}{$bkey} // 0) > 0
610 0 0 0 $weak_self and not $cfg->{'meta_pending'}
623 0 0 0 $idempotent and not $err
0 0 0 $idempotent and not $err and defined $saved_seq
635 0 0 0 $idempotent and $weak_self
0 0 0 $idempotent and $weak_self and $cfg->{'batches'}{$bkey}
0 0 0 $idempotent and $weak_self and $cfg->{'batches'}{$bkey} and @{$cfg->{'batches'}{$bkey};}
651 0 0 0 $conn and $conn->connected
655 0 0 1 $skipped and keys %{$$cfg{"batches"};}
668 0 1 1 $cb and not $remaining
687 0 0 0 --$remaining <= 0 and $cb
693 0 0 1 $cb and $acks0
711 0 0 0 $c and $c->connected
717 0 0 0 $cfg->{'bootstrap_conn'} and $cfg->{'bootstrap_conn'}->connected
0 0 0 $cfg->{'bootstrap_conn'} and $cfg->{'bootstrap_conn'}->connected and not $seen{${$cfg->{'bootstrap_conn'};}}
747 0 0 0 $a->{'topic'} eq $topic and $a->{'partition'} == $partition
755 0 0 0 $conn and $conn->connected
758 0 0 0 not $err and $res
802 0 0 0 $conn and $conn->connected
826 0 0 0 not $err and $result
0 0 0 not $err and $result and ref $result->{'topics'} eq "ARRAY"
847 0 0 0 $cb and $dispatched <= 0
850 0 0 0 $cb and not $dispatched
858 0 0 0 $cb and not $np
866 0 0 0 $conn and $conn->connected
868 0 0 0 $cb and --$remaining <= 0
876 0 0 0 not $err and $res
0 0 0 not $err and $res and ref $res->{'topics'} eq "ARRAY"
883 0 0 0 $cb and --$remaining <= 0
894 0 0 0 $cb and not @assignments
902 0 0 0 $conn and $conn->connected
906 0 0 0 not $err and $res
0 0 0 not $err and $res and ref $res->{'topics'} eq "ARRAY"
914 0 0 0 $cb and --$remaining <= 0
918 0 0 0 $cb and --$remaining <= 0
1067 0 0 0 defined $res->{'leader'} && defined $res->{'member_id'} && $res->{'leader'} eq $res->{'member_id'}
1071 0 0 0 $is_leader and $res->{'members'}
0 0 0 $is_leader and $res->{'members'} and @{$res->{'members'};}
1251 0 0 0 $coord and $coord->connected
0 0 0 $coord and $coord->connected and @$assignments
1265 0 0 0 not $err and $res
0 0 0 not $err and $res and ref $res->{'topics'} eq "ARRAY"
1271 0 0 0 $a->{'topic'} eq $t->{'topic'} and $a->{'partition'} == $p->{'partition'}
1286 0 0 0 $lconn and $lconn->connected
1289 0 0 0 not $lerr and $lres
0 0 0 not $lerr and $lres and ref $lres->{'topics'} eq "ARRAY"
1319 0 0 0 $coord and $coord->connected
1369 0 0 0 $weak and $cfg->{'fetch_active'}
1392 0 0 0 $coord and $coord->connected
1426 0 0 0 $g and $g->{'coordinator'}
0 0 0 $g and $g->{'coordinator'} and $g->{'coordinator'}->connected
0 0 0 $g and $g->{'coordinator'} and $g->{'coordinator'}->connected and $g->{'member_id'}
1439 0 0 0 $g and $g->{'auto_commit'}
1452 0 0 0 defined $cfg->{'producer_id'} and $cfg->{'producer_id'} >= 0
1461 0 0 0 $conn and $conn->connected
1588 0 0 0 $conn and $conn->connected
1601 0 0 11 $self and $self->{'cfg'}

or 2 conditions

line l !l condition
18 9 3 delete $opts{'brokers'} // "127.0.0.1:9092"
23 13 1 $p //= 9092
48 0 12 delete $opts{'client_id'} // "ev-kafka"
1 11 delete $opts{'tls'} // 0
0 12 delete $opts{'tls_skip_verify'} // 0
2 10 delete $opts{'acks'} // -1
0 12 delete $opts{'linger_ms'} // 5
0 12 delete $opts{'batch_size'} // 16384
0 12 delete $opts{'idempotent'} // 0
0 12 delete $opts{'fetch_max_wait_ms'} // 500
0 12 delete $opts{'fetch_max_bytes'} // 1048576
0 12 delete $opts{'fetch_min_bytes'} // 1
0 12 delete $opts{'metadata_refresh'} // 300
76 1 0 $cfg->{'sasl'}{'mechanism'} // ""
184 0 0 $meta->{'brokers'} // []
189 0 0 $meta->{'topics'} // []
191 0 0 $t->{'partitions'} // []
246 0 0 $cfg->{'metadata_refresh'} || 0
304 0 0 $meta->{'topics'} // []
314 0 0 $meta->{'topics'} // []
315 0 0 $t->{'partitions'} // []
432 0 0 $meta->{'topics'} // []
502 0 0 $cfg->{'batches'}{$bkey} //= []
508 0 0 $b->{'rec'}{'value'} // ""
0 0 $b->{'rec'}{'key'} // ""
548 0 0 $cfg->{'next_sequence'}{$bkey} // 0
557 0 0 $cfg->{'_batch_retries'}{$bkey} //= 3
568 0 0 $t->{'partitions'} // []
569 0 0 $p->{'error_code'} // 0
582 0 0 $cfg->{'_epoch_retries'}{$bkey} //= 1
602 0 0 $cfg->{'_batch_retries'}{$bkey} // 0
625 0 0 $cfg->{'_acked_sequence'}{$bkey} // 0
710 0 0 $cfg->{'conns'} // {}
718 0 0 $cfg->{'pending_ops'} // []
719 0 0 $cfg->{'batches'} // {}
828 0 0 $t->{'partitions'} // []
829 0 0 $p->{'records'} // []
893 0 0 $cfg->{'assignments'} // []
907 0 0 $res->{'topics'}[0]{'partitions'}[0]{'offset'} // 0
961 0 0 $opts{'session_timeout'} // 30000
0 0 $opts{'rebalance_timeout'} // 60000
0 0 $opts{'heartbeat_interval'} // 3
0 0 $opts{'auto_commit'} // 1
0 0 $opts{'auto_offset_reset'} // "earliest"
1088 7 0 $meta->{'topics'} // []
1091 11 0 $t->{'partitions'} // []
1101 5 2 $cfg->{'_prev_assignments'} // {}
1110 4 10 $prev->{$mid} // []
1200 0 0 $res->{'assignment'} // ""
1216 0 0 $g->{'auto_offset_reset'} // "earliest"
1267 0 0 $t->{'partitions'} // []
1291 0 0 $lt->{'partitions'} // []
1325 0 0 $res->{'error_code'} // 0
1396 0 0 $cfg->{'assignments'} // []
1511 0 0 $cfg->{'assignments'} // []
1533 0 0 $g->{'member_id'} // ""
1564 0 0 $cfg->{'_acked_sequence'}{$bkey} // 0
1587 11 0 $cfg->{'conns'} // {}

or 3 conditions

line l !l&&r !l&&!r condition
48 5 7 0 delete $opts{'on_error'} // sub { die "EV::Kafka: @_\n"; }
77 1 0 0 $mech eq "PLAIN" or $mech =~ /^SCRAM-/
220 0 0 0 $cfg->{'conns'}{$binfo->{'node_id'}} //= $cfg->{'bootstrap_conn'}
223 0 0 0 $cfg->{'idempotent'} || $cfg->{'transactional_id'}
346 0 0 0 $err || 'InitProducerId error: ' . ($res->{'error_code'} // '?')
360 0 0 0 $err or $res->{'error_code'} and $res->{'error_code'} != 0
377 0 0 0 $cfg->{'_txn_coordinator'} || $conn
570 0 0 0 $ec == 6 or $ec == 15
0 0 0 $ec == 6 or $ec == 15 or $ec == 16
573 0 0 0 $ec == 45 or $ec == 46
989 0 0 0 $err or $res->{'error_code'}
990 0 0 0 $err || "FindCoordinator error: $res->{'error_code'}"
1032 0 0 0 $res->{'error_code'} == 15 or $res->{'error_code'} == 16
1048 0 0 0 $res->{'error_code'} == 22 or $res->{'error_code'} == 25
1185 0 0 0 $res->{'error_code'} == 22 or $res->{'error_code'} == 25
1326 0 0 0 $ec == 22 or $ec == 25
0 0 0 $ec == 15 or $ec == 16