Branch Coverage

blib/lib/MySQL/Sandbox.pm
Criterion Covered Total %
branch 9 202 4.4


line true false branch
39 24 0 unless ($ENV{'USER'})
47 0 72 unless ($ENV{$var})
51 0 24 if ($ENV{'HOME'} =~ /\s/)
55 24 0 unless ($ENV{'SANDBOX_HOME'})
59 24 0 unless ($ENV{'TMPDIR'})
63 0 24 unless (-d $ENV{'TMPDIR'})
68 0 24 if (-d "$ENV{'HOME'}/sandboxes")
72 24 0 unless ($ENV{'SANDBOX_BINARY'})
73 0 24 if (-d "$ENV{'HOME'}/opt/mysql") { }
129 0 0 unless (ref $opt eq 'HASH')
132 0 0 if ($opt)
163 0 0 if ($msg)
174 0 0 if ($short)
181 0 0 if ($lparam < 0)
191 0 0 if (@{$text_items;} > 1)
211 0 0 if ($MySQL::Sandbox::PROGRAM_NAME =~ /replication|multiple/)
217 0 0 if ($MySQL::Sandbox::PROGRAM_NAME =~ /replication/)
226 0 0 if (grep {$MySQL::Sandbox::PROGRAM_NAME =~ /$_/;} 'make_sandbox', 'make_replication_sandbox', 'make_multiple_sandbox', 'make_multiple_sandbox')
265 0 0 if ($v =~ /(\d+)\.(\d+)\.(\d+)/) { }
283 0 0 if ($v1_major > $v2_major) { }
0 0 elsif ($v1_major == $v2_major and $v1_minor > $v2_minor) { }
0 0 elsif ($v1_major == $v2_major and $v1_minor == $v2_minor and $v1_rev > $v2_rev) { }
302 0 0 if ($version =~ /(\d+)\.(\d+)/)
305 0 0 unless ($major == 8 or $major == 5 and $minor >= 6)
314 0 0 unless (-d $operation_dir)
319 0 0 if $DEBUG
320 0 0 if ($operation_dir =~ m[/node\d/data$] and -d '../../master')
329 0 0 if ($server_id < 10) { }
0 0 elsif ($server_id >= 100 and $server_id < 109) { }
336 0 0 if $increase_id
342 0 0 if ($second_id > 9999)
349 0 0 unless open my $FH, '>', 'auto.cnf'
355 0 0 if $DEBUG
365 0 0 unless ($@)
367 0 0 if $DEBUG
372 0 0 unless ($JSON_module)
374 0 0 if $DEBUG
378 0 0 unless ($json_text)
388 0 0 if ($@)
390 0 0 if $DEBUG
398 0 0 unless open my $FH, '<', $filename
404 0 0 if ($skip_blanks)
406 0 0 if $line =~ /^\s*$/
408 0 0 if ($skip_comments)
410 0 0 if $line =~ /^\s*#/
412 0 0 if (wantarray) { }
422 0 0 if (wantarray) { }
439 0 0 if ($collective_json) { }
448 0 0 if (-f $filename) { }
459 0 0 if ($DEBUG)
470 0 0 if ($is_valid_json and $is_valid_json == -1) { }
0 0 elsif (not $is_valid_json) { }
472 0 0 if ($DEBUG)
500 0 0 unless open my $FILE, $mode, $fname
503 0 0 if ($mode eq '>' and $contents =~ m[\#!/bin/sh])
515 0 0 unless $port
519 0 0 unless $iaddr = inet_aton($host)
524 0 0 unless socket SOCK, 2, 1, $proto
526 0 0 if (connect SOCK, $paddr)
527 0 0 unless close SOCK
538 0 0 if ($port > 65520)
550 0 0 unless $dir
551 0 0 unless -d $dir
552 0 0 unless (is_a_sandbox($dir))
553 0 0 unless $skip_strict
559 0 0 if (-f "$dir/$sandbox_options_file") { }
579 0 0 unless $file
580 0 0 unless -f $file
582 0 0 unless open my $RFILE, '<', $file
585 0 0 if $line =~ /^\s*$/
586 0 0 if $line =~ /^\s*#/
587 0 0 if $line =~ /^\s*\[/
609 0 0 if ($seen_dir eq $File::Find::dir)
613 0 0 if ($params = get_sandbox_params($File::Find::dir, 1))
616 0 0 if (-f $params->{'opt'}{'pid_file'} and -e $params->{'opt'}{'socket'}) { }
620 0 0 if $options->{'all_info'}
623 0 0 unless ($options->{'only_used'})
625 0 0 if $options->{'all_info'}
638 0 0 unless ($dir)
647 0 0 unless (exists $sandbox_files{$req})
656 0 0 unless (-d $sandbox)
660 0 0 unless ($sboptions->{'opt'} and $sboptions->{'opt'}{'pid_file'} and $sboptions->{'opt'}{'socket'})
666 0 0 if (-f $sboptions->{'opt'}{'pid_file'} and -e $sboptions->{'opt'}{'socket'}) { }
681 0 0 if ($minimum_port >= $maximum_port)
684 0 0 if ($minimum_port + $range_size > $maximum_port)
690 0 0 if ($minimum_port >= $maximum_port)
696 0 0 if (exists $ports->{$i} or $i >= $maximum_port)
703 0 0 unless ($silent)
713 0 0 if ($options->{'format'} eq 'perl') { }
0 0 elsif ($options->{'format'} eq 'text') { }
716 0 0 if $options->{'all_info'}
733 0 0 if (-x "$dir/$cmd")
741 0 0 if ($MySQL::Sandbox::REAL_USER_ID == 0 or $MySQL::Sandbox::EFFECTIVE_USER_ID == 0)
742 0 0 unless ($ENV{'SANDBOX_AS_ROOT'})
754 0 0 if (-r $mylogin_cnf)
755 0 0 unless ($ENV{'IGNORE_MYLOGIN_CNF'})
777 0 0 unless $path
779 0 0 if ($path =~ /^$ENV{$var}/)
789 0 0 unless ($ENV{'SBINSTR'})
793 0 0 unless ($DEBUG)
797 0 0 unless open my $FH, '>>', $ENV{'SBINSTR'}