| line | % | coverage | branch |
| 5 | 100 | T | F | if defined $exited |
| 51 | 100 | T | F | if ($^O eq "MSWin32") |
| 58 | 100 | T | F | if -x $f |
| 65 | 100 | T | F | if check_exists_command($program) |
| 79 | 100 | T | F | if defined $token and $token ne "" |
| 81 | 100 | T | F | if defined $token and $token ne "" |
| 91 | 50 | T | F | unless defined $flags |
| 112 | 100 | T | F | if /^\s*(?:#.*)/ |
| 139 | 50 | T | F | $output_joined ne '' ? : |
| 153 | 50 | T | F | if ($? == -1) |
| 157 | 50 | T | F | if ($? & 127) |
| 158 | 0 | T | F | $? & 128 ? : |
| 162 | 100 | T | F | if $? == 0 |
| 182 | 100 | T | F | if defined $ENV{'APPLY_SKIP_UPDATE_CHECK'} |
| 183 | 50 | T | F | if ("$0" eq "-") |
| 195 | 50 | T | F | if ($? == 0) |
| 196 | 50 | T | F | if (compare_files($filename, $0)) |
| 205 | 50 | T | F | if ($gh_err_text =~ /error connecting to / and $gh_err_text =~ /check your internet connection/) |
| 209 | 100 | T | F | if ($gh_err_text =~ /proxyconnect tcp:.*connect: connection refused/) |
| 212 | 100 | T | F | if (defined $ENV{$proxy}) |
| 219 | 100 | T | F | if ($gh_err_text =~ /dial unix .*: connect: .*/) |
| 230 | 50 | T | F | if $exit_code == 0 |
| 238 | 50 | T | F | if $gh_auth_status == 0 |
| 243 | 100 | T | F | if (defined $ENV{$variable}) |
| 247 | 50 | T | F | if ($gh_auth_status == 0) |
| 260 | 50 | T | F | unless (gh_is_happy($program)) |
| 262 | 50 | T | F | defined $ENV{'CI'} && $ENV{'CI'} ? : |
| 285 | 50 | T | F | unless $spell_check_this_config =~ /\{.*\}/s |
| 287 | 50 | T | F | unless eval {
do {
%config = %{decode_json($spell_check_this_config);}
}
} |
| 299 | 50 | T | F | if ($?) |
| 316 | 50 | T | F | unless ($should_exclude_patterns =~ /\w/) |
| 318 | 50 | T | F | unless $should_exclude_patterns =~ /\w/ |
| 323 | 0 | T | F | if (-f $excludes) { } |
| 327 | 0 | T | F | unless /./ |
| 335 | 0 | T | F | unless $pattern =~ /./ |
| 341 | 0 | T | F | if $need_to_add_excludes |
| 347 | 50 | T | F | unless @stale |
| 350 | 50 | T | F | unless -f $_ |
| 353 | 50 | T | F | unless (@expect_files) |
| 362 | 100 | T | F | if /^(?:$re)(?:(?:\r|\n)*$|[# ].*)/ |
| 376 | 50 | T | F | unless @add |
| 380 | 50 | T | F | if (-s $new_expect_file) |
| 392 | 50 | T | F | if $word =~ /\S/ |
| 411 | 50 | T | F | if defined $gh_token |
| 419 | 100 | T | F | unless ($curl_result == 0) |
| 420 | 50 | T | F | if ($curl_stdout eq "") |
| 445 | 50 | T | F | if ($count == 0) |
| 465 | 100 | T | F | if (defined $page) |
| 468 | 50 | T | F | if (defined $id_1 and defined $id_2) |
| 469 | 50 | T | F | if ($id_2 > $id_1) |
| 477 | 100 | T | F | if (defined $download) |
| 489 | 100 | T | F | if (defined $download) |
| 500 | 50 | T | F | if defined $gh_token |
| 508 | 50 | T | F | if ($curl_result != 0) |
| 509 | 50 | T | F | if ($curl_stdout eq "") |
| 537 | 50 | T | F | if ($suffix) |
| 548 | 50 | T | F | unless $ret >> 8 |
| 551 | 100 | T | F | if ($gh_err_text =~ /no valid artifacts found to download|"Artifact has expired"/) |
| 558 | 50 | T | F | if ($expired_json ne "") |
| 561 | 50 | T | F | unless eval {
do {
$expired = decode_json($expired_json)
}
} |
| 562 | 50 | T | F | if ($expired) |
| 570 | 50 | T | F | if ($gh_err_text =~ /no artifact matches any of the names or patterns provided/) |
| 573 | 0 | T | F | if ($github_server_url) { } |
| 582 | 50 | T | F | if ($gh_err_text =~ /HTTP 404: Not Found|"status":"404"/) |
| 586 | 0 | T | F | if ($gh_err_text =~ /HTTP 403: API rate limit exceeded for .*?./) { } |
| 0 | T | F | elsif ($gh_err_text =~ m[dial tcp \S+:\d+: i/o timeout$]) { } |
| 588 | 0 | T | F | if ($retries_remaining <= 0) |
| 597 | 0 | T | F | if $gh_err_text =~ /\brequest ID\s+(\S+)/ |
| 598 | 0 | T | F | if $gh_err_text =~ /\btimestamp\s+(.*? UTC)/ |
| 603 | 0 | T | F | unless ($has_gh_token) |
| 605 | 0 | T | F | if defined $gh_token |
| 611 | 0 | T | F | if ($curl_stdout =~ m[^HTTP/\S+\s+200]) { } |
| 0 | T | F | elsif ($curl_stdout =~ m[^HTTP/\S+\s+403]) { } |
| 612 | 0 | T | F | if ($curl_stdout =~ /^x-ratelimit-remaining:\s+(\d+)$/m) { } |
| 614 | 0 | T | F | if $ratelimit_remaining > 10 |
| 622 | 0 | T | F | if ($curl_stdout =~ /^retry-after:\s+(\d+)/m) { } |
| 629 | 0 | T | F | if $curl_stdout =~ m[^(HTTP/\S+)] |
| 639 | 50 | T | F | if $artifact =~ /'/ |
| 642 | 50 | T | F | unless ($apply =~ /\{.*\}/s) |
| 652 | 50 | T | F | unless eval {
do {
$config_ref = decode_json($apply)
}
} |
| 657 | 50 | T | F | unless $git_repo_root =~ /\w/ |
| 673 | 100 | T | F | if ($line =~ /\s+artifact\.zip$/) |
| 677 | 100 | T | F | if ($line =~ /\s+1 file$/) |
| 681 | 50 | T | F | if $only_file |
| 685 | 50 | T | F | if ($has_artifact and $only_file) { } |
| 711 | 50 | T | F | unless defined $first |
| 715 | 50 | T | F | if (-s $first) { } |
| 719 | 0 | T | F | if ($first =~ m[^\s*https://.*/([^/]+/[^/]+)/actions/runs/(\d+)(?:/attempts/\d+|)(?:#(\S+)|)\s*$]) { } |
| 724 | 0 | T | F | unless defined $repo and defined $run |