Branch Coverage

blib/lib/AnyEvent/MQTT.pm
Criterion Covered Total %
branch 129 148 87.1


line true false branch
55 18 2 if ($self->{'handle'})
73 5 0 if $self->{'on_error'}
74 3 2 if $reconnect
81 7 1 exists $p{'topic'} ? :
82 4 3 exists $p{'qos'} ? :
83 1 6 exists $p{'cv'} ? :
85 3 4 if ($qos)
86 2 1 $qos == 1 ? :
89 4 3 if (defined $message)
98 2 1 exists $p{'handle'} ? :
99 1 1 unless ($handle->isa('AnyEvent::Handle'))
100 0 1 unless $p{'handle_args'}
108 2 0 if $error_sub
115 1 1 unless $p{'push_read_args'}
141 1 70017 if $self->{'message_id'} >= 65536
147 5 3 if ($args->{'qos'}) { }
148 3 2 unless (exists $args->{'message_id'})
174 1 7 if $dup
182 18 1 exists $p{'topic'} ? :
184 17 1 exists $p{'callback'} ? :
185 5 12 exists $p{'qos'} ? :
186 1 16 exists $p{'cv'} ? :
188 12 5 if (defined $mid)
200 6 1 exists $p{'topic'} ? :
201 1 5 exists $p{'cv'} ? :
203 2 4 if (defined $mid)
214 2 15 if ($rec)
224 3 12 if ($rec)
241 1 5 if ($rec)
247 1 4 unless ($rec)
253 3 1 if (defined $sub)
254 0 3 unless (exists $rec->{'cb'}{$sub})
261 2 1 if (keys %{$$rec{'cb'};})
279 1 12 unless (defined $topic)
292 0 0 if (not $self->{'clean_session'} and $qos and $self->{'_qos_msg_cache'})
300 0 0 unless @$cache
308 1 2 unless (defined $topic)
324 35 21 $self->{'connected'} ? :
332 35 21 unless defined $self->{'_waiting'}
340 16 98 if (@_) { }
343 48 50 unless my $args = shift @{$$self{'write_queue'};}
348 5 61 if $self->{'message_log_callback'}
358 3 68 $wait ? :
386 2 1 unless defined $self->{'_keep_alive_waiting'}
395 21 9 if ($msg) { }
396 12 9 unless $cv
399 7 2 unless exists $self->{'connect_cv'}
402 12 18 if $self->{'handle'}
430 0 16 if $weak_self->{'on_connect'}
466 3 0 if ($self->{'clean_session'})
477 0 58 if $error
478 1 57 if $self->{'message_log_callback'}
479 0 58 unless $self->_call_callback('before_msg_callback', $msg)
482 0 58 unless $self->_call_callback('before_' . $msg_type . '_callback', $msg)
484 1 57 unless ($self->can($method))
496 173 0 unless exists $self->{$cb_name}
503 1 12 unless ($msg->return_code == 0)
509 3 9 if $self->{'connect_cv'}
518 31 20 if ref $w and defined $w->[1]
557 1 15 unless (scalar @$matches)
565 0 19 if ($msg_retain)
566 0 0 if ($msg_data eq '') { }
575 2 25 if $matched{$cb}++
587 0 2 if ($qos and not $self->{'clean_session'} and not @{$self->{'_sub_topics'}->values($msg->topic);})
593 1 15 if ($qos == 2)
600 1 14 if $qos == 1
608 2 5 unless (exists $self->{'inflight'}{$mid})
614 1 4 unless ($got_type == $exp_type)
624 1 2 unless my $rec = $self->_inflight_record($msg)
633 1 1 unless my $rec = $self->_inflight_record($msg)
648 1 1 unless ($pubmsg)
658 1 1 unless my $rec = $self->_inflight_record($msg)
672 0 51 unless defined $$rbuf
675 51 58 unless $msg