Branch Coverage

blib/lib/Geo/WeatherNWS.pm
Criterion Covered Total %
branch 119 190 62.6


line true false branch
69 127 36 if (defined $float and $float ne "")
85 5 17 if (defined $fahrenheit and $fahrenheit ne "")
95 20 2 if (defined $celsius and $celsius ne "")
117 14 0 if (defined $F and defined $wind_speed_mph and $F ne "" and $wind_speed_mph ne "")
129 4 10 if ($F <= 50 and $wind_speed_mph > 3)
148 3 0 if (defined $F and $F ne "" and $F >= 80 and defined $rh and $rh ne "")
175 20 0 if (defined $knots and $knots ne "")
189 19 0 if (defined $knots and $knots ne "")
203 8 0 if (defined $miles and $miles ne "")
259 6 4 if ($coded =~ /^[-+]/) { }
263 6 0 unless ($old_conditions1)
268 6 0 if (defined $Converter{$Block1t}) { }
276 6 0 if ($Block2t)
277 6 0 if (defined $Converter{$Block2t}) { }
286 3 3 if ($Modifier =~ /^\-/) { }
3 0 elsif ($Modifier =~ /^\+/) { }
295 6 0 if ($Block2)
299 0 6 if ($old_conditionstext) { }
300 0 0 if ($Block1 eq 'SH') { }
318 4 0 unless ($old_conditions1)
322 4 0 if (defined $Converter{$Block1t}) { }
331 4 0 if ($Block2t)
332 4 0 if (defined $Converter{$Block2t}) { }
342 0 4 if ($old_conditionstext) { }
343 0 0 if ($Block1 eq 'SH') { }
459 0 0 unless ($Code)
465 0 0 if ($Self->{'http'} and $Self->{'http'} ne '') { }
473 0 0 if ($Res->is_success)
489 0 0 unless (defined $Ftp)
498 0 0 if ($Rcode =~ /^[45]/)
508 0 0 if ($Rcode =~ /^[45]/)
519 0 0 if ($Rcode =~ /^[45]/)
526 0 0 unless open my $F, "<", $Tmpfile
575 9 0 unless defined $Self->{'error'}
576 9 0 unless defined $Self->{'errortext'}
580 9 0 unless defined $Self->{'http'}
599 9 0 unless defined $Self->{'templateout'}
600 9 0 unless defined $Self->{'tfile'}
624 9 101 if ($column == 1 and $Line =~ m[^\d{4}/\d{2}/\d{2}$])
628 9 101 if ($column == 2 and $Line =~ /^\d{2}:\d{2}$/)
636 9 101 if ($Line =~ /^([A-Z][A-Z0-9]{3})/ and not $have_icao_code) { }
9 92 elsif ($Line =~ /([0-9]Z)$/) { }
9 83 elsif ($Line =~ /([0-9]KT)$/) { }
7 76 elsif ($Line =~ /([0-9]SM)$/) { }
6 70 elsif ($Line =~ / (BR|TS|MI|PR|BC|DR|BL|SH|FZ|DZ|RA|SN|SG|IC|PE|PL|GR|GS|UP|FG|FU|VA|DU|SA|HZ|PY|PO|SQ|FC|SS) ([A-Z])* /x or $Line =~ /^VC([A-Z])*/ or $Line =~ /[\+\-]VC([A-Z])*/) { }
12 58 elsif ($Line =~ /^(VV[0-9])/ or $Line =~ /^(SKC[0-9])/ or $Line =~ /^(CLR)/ or $Line =~ /^(FEW)/ or $Line =~ /^(SCT[0-9])/ or $Line =~ /^(BKN[0-9])/ or $Line =~ /^(OVC[0-9])/) { }
9 49 elsif ($Line =~ m[^([0-9][0-9]/[0-9][0-9])] or $Line =~ m[^(M[0-9][0-9]/)] or $Line =~ m[^(M[0-9][0-9]/M[0-9][0-9])] or $Line =~ m[^([0-9][0-9]/M[0-9][0-9])]) { }
8 41 elsif ($Line =~ /^(A[0-9]{4})/) { }
1 40 elsif ($Line =~ /^(Q[0-9]{4})/) { }
8 32 elsif ($Line =~ /^(RMK)/) { }
650 0 9 if $Line eq "AUTO"
674 0 9 if ($Line =~ /VRB/) { }
687 0 9 if ($Variable) { }
2 7 elsif ($Winddir <= 22.5 or $Winddir >= 337.5) { }
0 7 elsif ($Winddir <= 67.5 and $Winddir >= 22.5) { }
1 6 elsif ($Winddir <= 112.5 and $Winddir >= 67.5) { }
0 6 elsif ($Winddir <= 157.5 and $Winddir >= 112.5) { }
0 6 elsif ($Winddir <= 202.5 and $Winddir >= 157.5) { }
6 0 elsif ($Winddir <= 247.5 and $Winddir >= 202.5) { }
0 0 elsif ($Winddir <= 292.5 and $Winddir >= 247.5) { }
0 0 elsif ($Winddir <= 337.5 and $Winddir >= 292.5) { }
718 6 3 if ($Windspeedkts =~ /G/)
728 1 8 if ($Windspeedkts == 0)
760 6 1 if ($Line =~ m[/])
787 6 0 if defined $conditionstext
789 6 0 if defined $conditions1
790 6 0 if defined $conditions2
791 4 2 if defined $intensity
810 0 12 if ($Line =~ /^(CLR)/) { }
3 9 elsif ($Line =~ /^(FEW)/) { }
2 7 elsif ($Line =~ /^(SCT[0-9])/) { }
1 6 elsif ($Line =~ /^(BKN[0-9])/) { }
6 0 elsif ($Line =~ /^(OVC[0-9])/) { }
826 3 9 unless ($Self->{'conditionstext'})
843 1 8 unless (defined $Dewpoint)
847 1 8 if ($Temperature =~ /M/)
853 0 9 if ($Dewpoint =~ /M/)
857 8 1 if ($Dewpoint ne "")
865 8 1 if (defined $Dewpoint and $Dewpoint ne "")
961 8 125 if ($Line =~ /^(RMK)/)
965 31 102 if ($Remarks)
984 31 0 if ($Remark)
987 1 30 if ($Remark =~ /^AO[1-2]/) { }
7 23 elsif ($Remark =~ /^SLP/) { }
0 23 elsif ($Remark =~ /^TS/) { }
1 22 elsif ($Remark =~ /^5[0-9]/) { }
0 22 elsif ($Remark =~ /\$/) { }
0 22 elsif ($Remark =~ /^P[0-9]/) { }
0 22 elsif ($Line =~ /^(BRB|TSB|MIB|PRB|BCB|DRB|BLB|SHB|FZB|DZB|RAB|SNB|SGB|ICB|PEB|GRB|GSB|UPB|FGB|FUB|VAB|DUB|SAB|HZB|PYB|POB|SQB|FCB|SSB)/) { }
7 15 elsif ($Remark =~ /^T[0-9]/) { }
993 0 7 if (not defined $Remark or $Remark eq "")
997 0 7 if ($Remark and $Remark >= 800) { }
1069 0 9 if ($Templatefile and $Templatefile ne "")
1071 0 0 unless open my $F, "<", $Templatefile
1078 0 0 exists $Self->{$1} ? :