| line | % | coverage | branch |
| 166 | 100 | T | F | if (not defined $class) { } |
| 100 | T | F | elsif (ref $class) { } |
| 194 | 100 | T | F | if $towns |
| 336 | 100 | T | F | if (not ref $self) { } |
| 100 | T | F | elsif (ref $self eq 'HASH') { } |
| 337 | 100 | T | F | if (scalar @_) { } |
| 100 | T | F | elsif (not defined $self) { } |
| 100 | T | F | elsif ($self eq __PACKAGE__) { } |
| 354 | 100 | T | F | unless my $location = $params{'location'} |
| 361 | 100 | T | F | if exists $self->{'cache'}{$lc} |
| 363 | 100 | T | F | if exists $self->{'index'}{$lc} |
| 368 | 100 | T | F | if $self->_missed($lc) |
| 371 | 100 | T | F | unless $location =~ /,.+,/ |
| 374 | 100 | T | F | if ($location =~ /USA?$/ or $location =~ /United States$/) { } |
| 100 | T | F | elsif ($location =~ /(England|Scotland|Wales|Northern Ireland|UK|GB)$/i) { } |
| 100 | T | F | elsif ($location =~ /Canada$/) { } |
| 100 | T | F | elsif ($location =~ /Australia$/) { } |
| 390 | 100 | T | F | if ($ap) |
| 394 | 100 | T | F | if ($ap->parse($l) == 0) |
| 398 | 50 | T | F | if (my $street = $c{'street_name'}) |
| 399 | 50 | T | F | if (my $type = $c{'street_type'}) |
| 403 | 50 | T | F | if $c{'street_direction_suffix'} |
| 409 | 100 | T | F | if (length $c{'subcountry'} == 2) { } |
| 413 | 50 | T | F | if ($country_raw =~ /Canada/i) { } |
| 50 | T | F | elsif ($country_raw =~ /^(United States|USA|US)$/i) { } |
| 50 | T | F | elsif ($country_raw) { } |
| 421 | 50 | T | F | if $c{'subcountry'} |
| 427 | 100 | T | F | if (my $rc = $self->_search(\%addr, ("number", "road", "city", "state", "country"))) |
| 430 | 100 | T | F | if ($addr{'number'}) |
| 431 | 50 | T | F | if (my $rc = $self->_search(\%addr, ("road", "city", "state", "country"))) |
| 438 | 100 | T | F | unless (defined $addr{'country'}) |
| 439 | 50 | T | F | $l =~ /(United States|USA|US)$/i ? : |
| 448 | 100 | T | F | unless $self->{'region_index'}{$rk} |
| 452 | 100 | T | F | if ($location =~ /^(.+?)[,\s]+(United States|USA|US)$/i) |
| 458 | 50 | T | F | unless ($location =~ /\sCounty,/i) |
| 462 | 50 | T | F | if ($href) |
| 463 | 50 | T | F | if (my $state = $href->{'state'}) |
| 464 | 50 | T | F | if length $state > 2 |
| 466 | 50 | T | F | if (my $street = $href->{'street'}) |
| 467 | 100 | T | F | if ($href->{'type'}) |
| 470 | 100 | T | F | if $href->{'suffix'} |
| 471 | 100 | T | F | if $href->{'prefix'} |
| 479 | 50 | T | F | if ($href->{'number'}) |
| 480 | 0 | T | F | if (my $rc = $self->_search(\%addr, ("number", "road", "city", "state", "country"))) |
| 485 | 100 | T | F | if (my $rc = $self->_search(\%addr, ("road", "city", "state", "country"))) |
| 490 | 50 | T | F | if ($street and not $href->{'number'}) |
| 492 | 50 | T | F | if (my $rc = $self->_search(\%addr, ("name", "city", "state", "country"))) |
| 504 | 100 | T | F | if (scalar @parts == 5) |
| 506 | 50 | T | F | if (length $state == 2) |
| 508 | 50 | T | F | if (not $parts[0] =~ /^\d/) { } |
| 510 | 50 | T | F | if ($parts[1] =~ /^(\d+)\s+(.+)/) { } |
| 513 | 50 | T | F | if (my $rc = $self->_search(\%addr, ("name", "number", "road", "city", "state", "country"))) |
| 519 | 0 | T | F | if (my $rc = $self->_search(\%addr, ("name", "road", "city", "state", "country"))) |
| 527 | 0 | T | F | if (my $rc = $self->_search(\%addr, ("number", "road", "city", "state", "country"))) |
| 537 | 100 | T | F | if ($location =~ /[^,]+,[^,]+,.*England$/ and not $location =~ /[^,]+,[^,]+,[^,]+,.*England$/) |
| 542 | 50 | T | F | unless ("Geo::Address::Parser"->can("parse")) |
| 545 | 50 | T | F | if ("Geo::Address::Parser"->can("parse")) |
| 547 | 0 | T | F | if (my $fields = $addr_parser->parse($location)) |
| 550 | 0 | T | F | if (my $rc = $self->_search($fields, keys %{$fields;})) |
| 558 | 100 | T | F | if ($libpostal_is_installed == 0) |
| 559 | 50 | T | F | if (eval {
do {
require Geo::libpostal;
1
}
}) { } |
| 567 | 50 | T | F | if ($libpostal_is_installed == 1) |
| 569 | 0 | T | F | if (%addr) |
| 571 | 0 | T | F | if $addr{'house_number'} and not $addr{'number'} |
| 572 | 0 | T | F | if $addr{'house'} and not $addr{'name'} |
| 575 | 0 | T | F | if (my $street = $addr{'road'}) |
| 580 | 0 | T | F | if (defined $addr{'state'} and not defined $addr{'country'} and $addr{'state'} eq "england") |
| 586 | 0 | T | F | if ($addr{'country'} and $addr{'state'} || $addr{'state_district'}) |
| 587 | 0 | T | F | if ($addr{'country'} =~ /Canada/i) { } |
| 0 | T | F | elsif ($addr{'country'} =~ /^(United States|USA|US)$/i) { } |
| 590 | 0 | T | F | if $addr{'state'} and length $addr{'state'} > 2 |
| 594 | 0 | T | F | if $addr{'state'} and length $addr{'state'} > 2 |
| 597 | 0 | T | F | if ($addr{'state_district'}) |
| 599 | 0 | T | F | if (my $rc = $self->_search(\%addr, ("number", "road", "city", "state_district", "state", "country"))) |
| 603 | 0 | T | F | if (my $rc = $self->_search(\%addr, ("number", "road", "city", "state", "country"))) |
| 606 | 0 | T | F | if ($addr{'number'}) |
| 607 | 0 | T | F | if (my $rc = $self->_search(\%addr, ("road", "city", "state", "country"))) |
| 616 | 100 | T | F | if ($location =~ /^(.+?),\s*([\s\w]+),\s*([\s\w]+),\s*([\w\s]+)$/) |
| 626 | 100 | T | F | if ($addr{'road'} =~ /([\w\s]+),*\s+(.+)/) |
| 630 | 100 | T | F | if ($addr{'road'} =~ /^(\d+)\s+(.+)/) { } |
| 100 | T | F | elsif (my $rc = $self->_search(\%addr, ('name', 'road', 'city', 'state', 'country'))) { } |
| 633 | 50 | T | F | if (my $rc = $self->_search(\%addr, ("name", "number", "road", "city", "state", "country"))) |
| 639 | 100 | T | F | if ($addr{'name'} and not defined $addr{'number'}) |
| 640 | 50 | T | F | if (my $rc = $self->_search(\%addr, ("name", "road", "city", "state", "country"))) |
| 649 | 100 | T | F | unless $location =~ /$left/ |
| 652 | 100 | T | F | if (my $rc = $self->geocode(\%params)) |
| 655 | 100 | T | F | if ($mapped =~ /(.+), (England|UK)$/i) |
| 657 | 100 | T | F | if (my $rc = $self->geocode(\%params)) |
| 695 | 100 | T | F | if (not ref $self) { } |
| 50 | T | F | elsif (ref $self eq 'HASH') { } |
| 696 | 100 | T | F | if (scalar @_) { } |
| 100 | T | F | elsif (not defined $self) { } |
| 50 | T | F | elsif ($self eq __PACKAGE__) { } |
| 714 | 100 | T | F | if (my $latlng = $params{'latlng'}) { } |
| 721 | 100 | T | F | unless (defined $latitude and defined $longitude) |
| 727 | 50 | T | F | unless defined $row->{'latitude'} and defined $row->{'longitude'} |
| 729 | 100 | T | F | unless _equal($row->{'latitude'}, $latitude, 4) and _equal($row->{'longitude'}, $longitude, 4) |
| 734 | 100 | T | F | if (wantarray) { } |
| 741 | 100 | T | F | if ($location =~ /$right/) |
| 787 | 100 | T | F | if ref $args[0] eq "HASH" |
| 788 | 100 | T | F | if ref $args[0] |
| 789 | 100 | T | F | if @args and @args % 2 == 0 |
| 790 | 100 | T | F | if @args == 1 |
| 793 | 100 | T | F | if @args |
| 819 | 100 | T | F | if not defined $state or length $state <= 2 |
| 821 | 100 | T | F | if ($country =~ /^(United States|USA|US)$/i) { } |
| 100 | T | F | elsif ($country =~ /Canada/i) { } |
| 851 | 100 | T | F | if (defined $data->{$column}) { } |
| 100 | T | F | elsif (exists $data->{$column}) { } |
| 852 | 100 | T | F | unless defined $row->{$column} |
| 853 | 100 | T | F | if uc $row->{$column} ne uc $data->{$column} |
| 865 | 100 | T | F | if $matched < 3 |
| 868 | 100 | T | F | $matched >= 4 ? : |
| 100 | T | F | $matched == scalar @columns ? : |
| 925 | 100 | T | F | unless defined $row->{'latitude'} and defined $row->{'longitude'} |
| 926 | 100 | T | F | unless $row->{'latitude'} =~ /^-?\d+\.?\d*$/ |
| 927 | 100 | T | F | unless $row->{'longitude'} =~ /^-?\d+\.?\d*$/ |
| 938 | 100 | T | F | if @{$locs;} < 3 |
| 955 | 100 | T | F | @centres ? : |