Branch Coverage

blib/lib/Test/MTA/Exim4.pm
Criterion Covered Total %
branch 74 134 55.2


line true false branch
27 4 0 defined $fields ? :
41 0 4 unless 'IPC::Cmd'->can_capture_buffer
45 0 4 unless can_run($$self{'exim_path'})
78 0 4 unless $self->test->ok($$self{'_state'}{'config'}{'ok'}, $msg)
112 0 1 unless $$self{'_state'}{'config'}{'ok'}
118 0 1 unless $self->test->ok(exists $$self{'_state'}{'option'}{$option}, $msg)
131 0 1 unless $$self{'_state'}{'config'}{'ok'}
137 0 1 unless $self->test->ok(!exists($$self{'_state'}{'option'}{$option}), $msg)
151 0 3 unless $$self{'_state'}{'config'}{'ok'}
157 0 3 unless $self->test->is_eq($$self{'_state'}{'option'}{$option}, $value, $msg)
170 0 0 unless $$self{'_state'}{'config'}{'ok'}
176 0 0 $option =~ s/^no_// ? :
177 0 0 unless $self->test->is_eq($$self{'_state'}{'option'}{$option}, $value, $msg)
190 0 0 unless $$self{'_state'}{'config'}{'ok'}
196 0 0 $option =~ s/^no_// ? :
197 0 0 unless $self->test->is_eq($$self{'_state'}{'option'}{$option}, $value, $msg)
211 0 3 unless $$self{'_state'}{'config'}{'ok'}
218 0 3 unless $self->test->is_eq($got, $expect, $msg)
232 0 15 unless $$self{'_state'}{'config'}{'ok'}
233 0 15 unless $type
234 0 15 unless $what
239 0 15 unless $self->test->ok($$self{'_state'}{'config'}{$type} && $$self{'_state'}{'config'}{$type}{$what}, $msg)
253 0 2 unless $$self{'_state'}{'config'}{'ok'}
254 0 2 unless $type
255 0 2 unless $what
260 0 2 unless $self->test->ok($$self{'_state'}{'config'}{$type} && !$$self{'_state'}{'config'}{$type}{$what}, $msg)
272 0 3 unless $addr
281 0 3 unless $self->test->ok($$res{'deliverable'} && !$$res{'undeliverable'}, $msg)
294 0 5 unless $addr
295 0 5 unless $target
298 3 2 if ref $target eq 'HASH'
299 0 5 unless ref $target eq 'ARRAY'
316 5 0 if ($count_ok)
318 0 11 unless ref $targetspec eq 'HASH'
323 0 19 unless (exists $$addresses{$addr}{$key} and $$addresses{$addr}{$key} eq $$targetspec{$key})
329 11 0 if ($thisone)
338 0 5 unless $self->test->ok($count_ok && $addr_count_ok == $count, $msg)
350 0 1 unless $addr
359 0 1 unless $self->test->ok($$res{'total'} == 1 && (values %{$$res{'addresses'};})[0]->{'discarded'}, $msg)
371 0 1 unless $addr
380 0 1 unless $self->test->ok($$res{'undeliverable'} && !$$res{'deliverable'}, $msg)
395 0 18 if $$self{'config_file'}
411 0 18 unless $full_buf
412 0 18 unless $stdout_buf
413 0 18 unless $stderr_buf
428 28 4 if $$self{'_state'}{'checked'}++
434 4 0 if ($success) { }
438 4 44 if (/^Exim\s+version\s+([0-9\.]+)\s+#(\d+)/) { }
20 24 elsif (/ ^ ( support \s+ for | # pick one of these lookups | # in $1 authenticators | routers | transports ) (?: \s+ \( [a-z\s-]+ \) )? # optional load type for 4.74+ - discarded # eg (built-in) : \s* # followed by a colon (.*) # and the rest of the line in $2 $ /xi) { }
4 20 elsif (/Configuration file is (.*)/) { }
471 0 4 unless $$self{'_state'}{'exim_version'}
486 4 1 if exists $$self{'_state'}{'option'}
496 1 0 if ($success)
499 26 1 if (/^(no_)?(\w+)(?: = (.*))?$/)
501 22 1 defined $value ? :
3 23 $negate ? :
532 0 10 unless $$self{'_state'}{'config'}{'ok'}
533 0 10 unless $$self{'_state'}{'config'}{'ok'}
537 0 10 if defined $sender
556 0 22 if $line =~ /^\s*$/
563 2 20 if ($line =~ /^(.*) is undeliverable(.*)$/)
572 8 12 if ($line =~ /^(.*) -\> (.*)$/) { }
2 10 elsif ($line =~ /^(.*) is discarded$/) { }
590 0 28 if ($line =~ /^\s+\<-- (.*)/) { }
8 20 elsif ($line =~ /^\s+transport = (.*)/) { }
10 10 elsif ($line =~ /^\s+router = (.*), transport = (.*)/) { }
616 0 0 ref $$self{'_state'}{'last_output'} eq 'ARRAY' ? :