Branch Coverage

blib/lib/Net/SIP/Simple.pm
Criterion Covered Total %
branch 39 110 35.4


line true false branch
101 260 0 unless defined $options->{$k}
118 51 1 if $legs and ref $legs ne 'ARRAY'
126 0 0 $ip ? :
0 0 if not defined $ip or ref $ip
131 52 0 $legs ? :
132 50 2 if (UNIVERSAL::isa($_, 'Net::SIP::Leg')) { }
2 0 elsif (UNIVERSAL::isa($_, 'IO::Handle')) { }
0 0 elsif (UNIVERSAL::isa($_, 'HASH')) { }
0 0 elsif (my($proto, $host, $port, $family) = sip_uri2sockinfo($_)) { }
144 0 0 $family ? :
159 104 0 unless $dst
160 0 0 if &first(sub { $_->can_deliver_to($dst); } , @$legs)
162 0 0 $family ? :
175 52 0 if @$legs
176 0 52 if $proxy
183 52 0 if @$legs
193 36 16 if ($from)
194 2 34 if (not defined $domain and $from =~ /\bsips?:[^\@]+\@([\w\-\.]+)/)
197 0 36 unless ($from =~ /\s/ or $from =~ /\@/)
198 0 0 $disp->get_legs('proto', 'tls') ? :
203 0 52 if %args
242 1 20 if (@_)
245 0 1 if $Net::SIP::Simple::DEBUG
262 115 89 if (ref $_) { }
89 0 elsif (defined $_) { }
323 0 0 unless ($leg)
338 0 0 unless ($contact)
341 0 0 unless $contact =~ s/\@([^\s;,>]+)/\@$local/
350 0 0 if %args
358 0 0 if ($code and $code =~ /^2\d\d/) { }
0 0 elsif ($code) { }
0 0 elsif ($errno) { }
365 0 0 unless defined(my $e = $p->{'expires'})
366 0 0 unless sip_uri_eq($addr, $contact)
367 0 0 if not defined $exp or $e < $exp
369 0 0 unless defined $exp
389 0 0 if (\$stopvar == $cb_final)
391 0 0 $stopvar eq 'OK' ? :
407 0 35 ref $ctx ? :
408 0 35 unless $to
409 0 35 unless ($to =~ /\s/ or $to =~ /\@/)
410 0 0 unless $self->{'domain'}
411 0 0 $self->{'dispatcher'}->get_legs('proto', 'tls') ? :
414 0 0 if $ctx
448 0 16 if ($method eq 'OPTIONS') { }
0 16 elsif ($method ne 'INVITE') { }
459 0 16 if (my $filter = $args->{'filter'})
461 0 0 unless ($rv)
473 12 4 if ($cb_create)
475 0 12 if (not $cbx) { }
3 9 elsif (ref $cbx) { }
492 1 15 if (my $auth = _make_auth_from_args($self, \%args))
512 2 35 /^auth_(.+)/ ? :
554 0 0 if ($auth) { }
583 0 1 if ($auth) { }