Branch Coverage

lib/Net/Sieve.pm
Criterion Covered Total %
branch 0 200 0.0


line true false branch
146 0 0 if $param{'ssl_verify'}
147 0 0 if $param{'ssl_verify'} eq '0x00'
148 0 0 if $param{'notssl_verify'}
164 0 0 unless (defined $server)
166 0 0 if (exists $ENV{'IMAP_SERVER'} and not $ENV{'IMAP_SERVER'} =~ m[^/])
170 0 0 unless ($server =~ /:.*:/)
176 0 0 unless $server =~ /^[A-Za-z0-9_.-]+\z/
178 0 0 unless $port =~ /^[A-Za-z0-9_()-]+\z/
181 0 0 unless (defined $user)
182 0 0 if ($^O eq 'MSWin32') { }
185 0 0 if (exists $ENV{'USERNAME'} and length $ENV{'USERNAME'}) { }
0 0 elsif (exists $ENV{'LOGNAME'} and length $ENV{'LOGNAME'}) { }
196 0 0 unless defined $user
200 0 0 if (defined $sslkeyfile and not defined $sslcertfile or defined $sslcertfile and not defined $sslkeyfile)
204 0 0 if (defined $sslkeyfile)
219 0 0 unless (defined $sock)
221 0 0 if ($!{'EINVAL'} and $net_domain != 0)
247 0 0 if (exists $capa{'IMPLEMENTATION'} and $capa{'IMPLEMENTATION'} =~ /^Cyrus timsieved v2\.3\.(\d+)-/ and $1 >= 13)
254 0 0 if (exists $capa{'STARTTLS'}) { }
0 0 elsif ($forbid_clearchan) { }
257 0 0 unless /^OK\b/
258 0 0 unless ('IO::Socket::SSL'->start_SSL($sock, %ssl_options))
263 0 0 if ($dump_tls_information)
265 0 0 if ($DEBUGGING and exists $main::main::{'Net::'} and exists $main::main::{'Net::'}{'SSLeay::'})
288 0 0 if ($use_noop) { }
302 0 0 unless (scalar keys %capa)
313 0 0 if (defined $authzid)
316 0 0 if (defined $realm)
325 0 0 unless ref $capa{'SASL'} eq 'ARRAY'
327 0 0 if (defined $authmech) { }
329 0 0 if (grep {$_ eq $authmech;} map({uc $_;} @{$capa{'SASL'};})) { }
340 0 0 unless defined $sasl
344 0 0 if $forbid_clearauth
345 0 0 unless my $authconversation = $sasl->client_new('sieve', $server, $secflags)
347 0 0 if (defined $realm)
351 0 0 unless my $sasl_m = $authconversation->mechanism
353 0 0 if ($sasl_m eq 'GSSAPI')
366 0 0 if ($authconversation->code)
371 0 0 if (defined $sasl_tosend and length $sasl_tosend) { }
383 0 0 if (/^"(.*)"\r?\n?$/) { }
386 0 0 unless (/^{(\d+)\+?}\r?$/m)
395 0 0 if ($authconversation->code)
399 0 0 unless defined $response
408 0 0 if (/^NO((?:\s.*)?)$/)
411 0 0 if (/^OK\s+\(SASL\s+\"([^"]+)\"\)$/)
429 0 0 if ($authconversation->code)
431 0 0 if ($Authen::SASL::Perl::VERSION >= 1.06)
435 0 0 if (defined $valid and length $valid)
449 0 0 if $$self{'_sock'}
508 0 0 if $line =~ /\"(.*?)\"/
509 0 0 $line =~ /ACTIVE/ ? :
536 0 0 unless $size and $name
543 0 0 unless (/^OK((?:\s.*)?)$/)
564 0 0 unless $name
568 0 0 if (/^NO((?:\s.*)?)$/)
571 0 0 if (/^OK((?:\s.*)?)$/)
575 0 0 unless (/^{(\d+)\+?}\r?$/m)
581 0 0 unless (/^OK((?:\s.*)?)$/)
604 0 0 unless (/^OK((?:\s.*)?)$/)
640 0 0 unless $name
644 0 0 unless (/^OK((?:\s.*)?)$/)
662 0 0 if exists $_{'external_first'}
669 0 0 unless /^OK\b/
670 0 0 if (/^OK\b/) { }
0 0 elsif (/^\"([^"]+)\"\s+\"(.*)\"$/) { }
0 0 elsif (/^\"([^"]+)\"$/) { }
0 0 elsif (/^NO\b/) { }
0 0 elsif (/^BYE\b(.*)/) { }
672 0 0 unless exists $_{'sent_a_noop'}
676 0 0 unless (defined $end_tag and length $end_tag)
685 0 0 if ($_ =~ /\b\Q$end_tag\E\b/)
695 0 0 unless (length $v)
696 0 0 unless (exists $capa_permit_empty{$k})
703 0 0 if (defined $capa_permit_empty{$k})
707 0 0 if (exists $capa{$k})
718 0 0 if (exists $capa_dosplit{$k})
726 0 0 if exists $_{'sent_a_noop'}
737 0 0 unless exists $capa{'SIEVE'}
739 0 0 unless exists $capa{'IMPLEMENTATION'}
746 0 0 if (grep {lc $_ eq 'enotify';} @{$capa{'SIEVE'};})
747 0 0 unless (exists $capa{'NOTIFY'})
754 0 0 if (exists $capa{'SASL'} and $external_first and grep {uc $_ eq 'EXTERNAL';} @{$capa{'SASL'};})
766 0 0 unless uc $_ eq 'EXTERNAL'
777 0 0 unless $DEBUGGING
787 0 0 defined $_[0] ? :
788 0 0 defined $_[0] ? :
810 0 0 if (defined $_[0] and $_[0] eq '-noeol')
842 0 0 unless defined $t
843 0 0 if ($t eq '-nochomp')
844 0 0 if ($t eq '-firstline')
845 0 0 unless defined $_[0]
853 0 0 unless defined $l
854 0 0 unless (defined $l)
858 0 0 if ($l =~ /{(\d+)\+?}\s*\n?\z/)
861 0 0 if ($len == 0) { }
872 0 0 if ($dochomp)
876 0 0 if (defined wantarray) { }
893 0 0 if (defined $_[0])
899 0 0 if (/^OK/)
946 0 0 if (length $suffix) { }