| line | % | coverage | branch |
| 22 | 100 | T | F | unless $record =~ /\b$field:\s*(\d+)/u |
| 28 | 50 | T | F | unless $record =~ /\b$field: \[([^\]]+)\]/u |
| 35 | 50 | T | F | unless $next and $next < $value |
| 45 | 100 | T | F | if (defined $CheckSpelling::SpellingCollator::expected{$item}) { } |
| 100 | T | F | elsif ($item =~ /^([A-Z])(.*)/u) { } |
| 47 | 100 | T | F | if $value < $next |
| 50 | 100 | T | F | if (defined $CheckSpelling::SpellingCollator::expected{$item}) { } |
| 55 | 100 | T | F | if (defined $CheckSpelling::SpellingCollator::expected{$item}) |
| 61 | 100 | T | F | unless defined $next |
| 68 | 100 | T | F | if expect_item($word, 1) |
| 70 | 50 | T | F | if expect_item($key, 2) |
| 71 | 100 | T | F | if ($key =~ /.s$/u) { } |
| 100 | T | F | elsif ($key =~ /^(.+[^aeiou])ed$/u) { } |
| 100 | T | F | elsif ($key =~ /^(.+)'[ds]$/u) { } |
| 72 | 100 | T | F | if ($key =~ /ies$/u) { } |
| 84 | 50 | T | F | if expect_item($key, 3) |
| 90 | 100 | T | F | if ($warning =~ /\(([-\w]+)\)$/u) |
| 93 | 100 | T | F | if $CheckSpelling::SpellingCollator::ignored_event_map{$code} |
| 100 | 50 | T | F | if should_skip_warning($warning) |
| 101 | 100 | T | F | if skip_item($item) |
| 104 | 100 | T | F | if (defined $seen_count) |
| 105 | 100 | T | F | if (not defined $unknown_word_limit or $seen_count++ < $unknown_word_limit) { } |
| 121 | 50 | T | F | if $CheckSpelling::SpellingCollator::disable_word_collating |
| 123 | 100 | T | F | unless defined $CheckSpelling::SpellingCollator::shortest_word |
| 126 | 100 | T | F | if ($key =~ /.s$/u) { } |
| 100 | T | F | elsif ($key_length > $CheckSpelling::SpellingCollator::shortest_word + 1 and $key =~ /.[^aeiou]ed$/u) { } |
| 127 | 100 | T | F | if ($key_length > $CheckSpelling::SpellingCollator::shortest_word + 1 and $key =~ /ies$/u) { } |
| 100 | T | F | elsif ($key_length > $CheckSpelling::SpellingCollator::shortest_word and not $key =~ /ies$/u) { } |
| 142 | 100 | T | F | if ($CheckSpelling::SpellingCollator::disable_word_collating) { } |
| 159 | 50 | T | F | if (open EXPECT, "<:utf8", $expect) |
| 176 | 100 | T | F | unless defined $CheckSpelling::SpellingCollator::letter_map{$char}{$key} |
| 178 | 100 | T | F | if defined $word_map{$word} |
| 180 | 50 | T | F | if $words > 2 |
| 181 | 100 | T | F | if ($word eq $key) |
| 182 | 50 | T | F | if $words > 1 |
| 191 | 100 | T | F | if $CheckSpelling::SpellingCollator::disable_word_collating |
| 197 | 100 | T | F | if $key eq $plural_key |
| 198 | 100 | T | F | unless defined $CheckSpelling::SpellingCollator::letter_map{$char}{$key} |
| 213 | 100 | T | F | if ($warning =~ /\(([-\w]+)\)$/u) |
| 215 | 50 | T | F | if defined $CheckSpelling::SpellingCollator::ignored_event_map{$code} |
| 229 | 50 | T | F | unless defined $ENV{$path} |
| 231 | 50 | T | F | unless open ITEMS, "<:utf8", $1 |
| 237 | 100 | T | F | if ($pattern =~ /^#/u) |
| 238 | 50 | T | F | if ($pattern =~ /^# /u) { } |
| 246 | 100 | T | F | unless ($pattern =~ /./u) |
| 259 | 100 | T | F | unless @{$totals;} |
| 260 | 50 | T | F | unless open my $fh, ">:utf8", $path |
| 263 | 100 | T | F | if ($file_counts) { } |
| 265 | 0 | T | F | unless $totals->[$b] <=> $totals->[$a] |
| 274 | 50 | T | F | unless $totals->[$i] > 0 |
| 277 | 50 | T | F | if ($rule_with_context =~ /^(.*\n)([^\n]+)$/su) { } |
| 282 | 100 | T | F | $file_counts ? : |
| 294 | 100 | T | F | if $file eq $special->{'file_list'} |
| 295 | 100 | T | F | if $file eq $special->{'pr_title_file'} |
| 296 | 100 | T | F | if $file eq $special->{'pr_description_file'} |
| 297 | 100 | T | F | unless rindex $file, $special->{'commit_messages'} |
| 311 | 100 | T | F | if ($ignored_events) |
| 343 | 50 | T | F | if ($timing_report) |
| 362 | 50 | T | F | unless $directory =~ /^(.*)$/u |
| 364 | 100 | T | F | unless (-e $directory) |
| 368 | 100 | T | F | unless (-d $directory) |
| 374 | 100 | T | F | unless open NAME, "<:utf8", "$directory/name" |
| 383 | 50 | T | F | if ($timing_report) |
| 387 | 100 | T | F | if (-e "$directory/skipped") |
| 395 | 50 | T | F | if $timing_report |
| 400 | 100 | T | F | unless (-s "$directory/stats") |
| 401 | 50 | T | F | if $timing_report |
| 406 | 100 | T | F | if ($file eq $file_list) |
| 427 | 100 | T | F | if (@candidate_totals) |
| 430 | 50 | T | F | if (@candidate_list) |
| 433 | 50 | T | F | if ($hits) |
| 435 | 50 | T | F | if ($candidate_file_counts[$i]++ < $candidate_example_limit) |
| 441 | 50 | T | F | if ($candidates[$i] =~ /^#\s+(\S.+)/u) |
| 450 | 100 | T | F | if (@forbidden_totals) |
| 453 | 50 | T | F | if (@forbidden_list) |
| 456 | 50 | T | F | if ($hits) |
| 465 | 50 | T | F | if $timing_report |
| 468 | 100 | T | F | if ($unknown > $unique) |
| 472 | 50 | T | F | unless ($disable_noisy_file) |
| 473 | 50 | T | F | if ($kind eq "file") |
| 484 | 100 | T | F | unless ($kind =~ /^file/u and -s "$directory/unknown") |
| 490 | 100 | T | F | unless $token =~ /./u |
| 492 | 100 | T | F | unless defined $CheckSpelling::SpellingCollator::letter_map{$char} |
| 494 | 100 | T | F | if defined $CheckSpelling::SpellingCollator::letter_map{$char}{$key} |
| 501 | 50 | T | F | if $timing_report |
| 520 | 50 | T | F | if ($context =~ /^(.*?)$(.*)/msu) |
| 522 | 50 | T | F | if $details |
| 524 | 50 | T | F | unless $context |
| 534 | 100 | T | F | if (defined $ENV{'expect'}) |
| 544 | 100 | T | F | if (-s $early_warnings) |
| 549 | 50 | T | F | if should_skip_warning($warning) |
| 558 | 100 | T | F | unless -s "$directory/warnings" |
| 559 | 50 | T | F | unless open NAME, "<:utf8", "$directory/name" |
| 564 | 100 | T | F | if ($kind ne 'file-list') { } |
| 567 | 100 | T | F | if ($warning =~ /:(\d+):(\d+ \.\.\. \d+): `(.*)`/u) { } |
| 571 | 100 | T | F | unless $kind eq "file" |
| 573 | 100 | T | F | if log_skip_item($item, $file, $warning, $unknown_word_limit) |
| 574 | 50 | T | F | if $kind ne "file" |
| 576 | 50 | T | F | if ($warning =~ /\`(.*?)\` in line \(token-is-substring\)/u) |
| 577 | 0 | T | F | if skip_item($1) |
| 581 | 50 | T | F | if should_skip_warning($warning) |
| 587 | 50 | T | F | unless $warning =~ s/^:(\d+)/:1/u |
| 589 | 100 | T | F | if ($warning =~ /:(\d+ \.\.\. \d+): `(.*)`/u) |
| 593 | 50 | T | F | if skip_item($item) |
| 594 | 50 | T | F | if (defined $unknown_file_word_limit) |
| 595 | 100 | T | F | if ++$unknown_file_word_count{$item} > $unknown_file_word_limit |
| 598 | 100 | T | F | if should_skip_warning($warning) |
| 608 | 50 | T | F | if should_skip_warning($warning) |
| 612 | 100 | T | F | if (defined $unknown_word_limit) |
| 615 | 50 | T | F | unless $warning_count >= $unknown_word_limit |
| 618 | 0 | T | F | if should_skip_warning($warning) |
| 625 | 100 | T | F | if (%counters) |
| 641 | 100 | T | F | if (scalar @words > 1) { } |
| 642 | 50 | T | F | unless length $a <=> length $b |
| 657 | 100 | T | F | unless /(.*) \((.*)\)/u |
| 667 | 100 | T | F | if ($_ =~ /$pattern/u) { } |
| 669 | 100 | T | F | if s/not a recognized word/ignored by check-spelling because another more general variant is also in expect/u |
| 670 | 100 | T | F | if s/unrecognized-spelling/ignored-expect-variant/u |
| 671 | 50 | T | F | unless $print |
| 673 | 100 | T | F | unless /\(((?:\w+-)+\w+)\)$/u |
| 674 | 100 | T | F | if $1 eq "unrecognized-spelling" |