Condition Coverage

blib/lib/Geo/METAR.pm
Criterion Covered Total %
condition 107 183 58.4


and 3 conditions

line !l l&&!r l&&r condition
544 8 1 0 $parsestate == $expect_type and $tok =~ /(METAR|SPECI)/i
8 0 1 $parsestate <= $expect_site and $tok =~ /([A-Z]{4}|K[A-Z0-9]{3})/
7 0 1 $parsestate == $expect_datetime and $tok =~ /\d{6,6}Z/i
6 1 0 $parsestate == $expect_modifier and $tok =~ /AUTO|COR|CC[A-Z]/i
0 5 2 $parsestate >= $expect_modifier and $parsestate < $expect_visibility
5 1 1 $parsestate >= $expect_modifier and $parsestate < $expect_visibility and $tok =~ /(\d{3}|VRB)\d{2}(G\d{1,3})?(KT)?$/i
0 5 1 $parsestate >= $expect_modifier and $parsestate < $expect_visibility
5 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_visibility and $tok =~ /^(\d{3}|VRB)\d{2}(G\d{2,3})?MPS$/
0 5 1 $parsestate >= $expect_wind and $parsestate < $expect_visibility
5 1 0 $parsestate >= $expect_wind and $parsestate < $expect_visibility and $tok =~ /^\d{3}V\d{3}$/
0 5 1 $parsestate >= $expect_wind and $parsestate < $expect_visibility
5 1 0 $parsestate >= $expect_wind and $parsestate < $expect_visibility and $tok =~ m[^/////(KT|MPS)$]
0 4 2 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual
4 2 0 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual and $tok =~ /^\d{4}$/
0 4 2 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual
4 2 0 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual and $tok =~ /^\d{4}NDV$/
0 4 2 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual
4 1 1 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual and $tok =~ /.*?SM$/i
0 4 1 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual
4 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_runwayvisual and $tok =~ /^\d$/
4 1 0 $parsestate == $expect_visibility and $tok =~ /^\d{4}(N|S|E|W|NE|NW|SE|SW)$/
0 4 1 $parsestate >= $expect_modifier and $parsestate < $expect_presentweather
4 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_presentweather and $tok =~ m[R\d+(L|R|C)?/P?\d+(VP?\d+)?(FT|D|U|N|/)?$]i
0 4 1 $parsestate >= $expect_modifier and $parsestate < $expect_clouds
4 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_clouds and $tok =~ /^(-|\+)?(VC)?($_weather_types_pat)+/i
0 3 2 $parsestate >= $expect_modifier and $parsestate < $expect_temperature
3 2 0 $parsestate >= $expect_modifier and $parsestate < $expect_temperature and $tok eq 'CAVOK'
0 3 2 $parsestate >= $expect_modifier and $parsestate < $expect_temperature
3 2 0 $parsestate >= $expect_modifier and $parsestate < $expect_temperature and $tok =~ /SKC|CLR/
0 3 2 $parsestate >= $expect_modifier and $parsestate < $expect_temperature
3 1 1 $parsestate >= $expect_modifier and $parsestate < $expect_temperature and $tok =~ m[^(FEW|SCT|BKN|OVC)(\d\d\d)?(CB|TCU)?/*$]i
0 3 1 $parsestate >= $expect_modifier and $parsestate < $expect_temperature
3 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_temperature and $tok =~ /^(NSC|NCD)$/
0 3 1 $parsestate >= $expect_modifier and $parsestate < $expect_temperature
3 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_temperature and $tok =~ /^VV\d+$/
0 3 1 $parsestate >= $expect_modifier and $parsestate < $expect_pressure
3 0 1 $parsestate >= $expect_modifier and $parsestate < $expect_pressure and $tok =~ m[^(M?\d\d)/(M?\d{0,2})]i
0 1 2 $parsestate >= $expect_modifier and $parsestate < $expect_remarks
1 1 1 $parsestate >= $expect_modifier and $parsestate < $expect_remarks and $tok =~ /^A(\d\d)(\d\d)$/i
0 1 1 $parsestate >= $expect_modifier and $parsestate < $expect_remarks
1 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_remarks and $tok =~ /^Q(\d\d\d\d)$/i
0 1 1 $parsestate >= $expect_modifier and $parsestate < $expect_remarks
1 1 0 $parsestate >= $expect_modifier and $parsestate < $expect_remarks and $tok =~ /^RE($_weather_types_pat)$/
0 2 0 $parsestate >= $expect_modifier and $tok =~ /^$_trend_types_pat/
0 1 1 $parsestate >= $expect_modifier and $tok =~ /^RMK$/i
0 1 0 $parsestate == $expect_usremarks and $tok =~ /^A(O\d)$/i
0 1 0 $parsestate == $expect_usremarks and $tok =~ /^SLP(\d+)/i
0 1 0 $parsestate == $expect_usremarks and $tok eq 'SLPNO'
0 1 0 $parsestate == $expect_usremarks and $tok =~ /^P(\d\d\d\d)$/i
0 1 0 $parsestate == $expect_usremarks and $tok =~ /^($_weather_types_pat)([BE\d]+)$/i
0 1 0 $parsestate >= $expect_recentweather and $tok eq 'CB' || $tok eq 'TCU'
0 1 0 $parsestate == $expect_usremarks and $tok =~ /^T(\d)(\d\d)(\d)(\d)(\d\d)(\d)$/i
1241 0 0 0 $$self{'MOD'} eq 'AUTO' and $vis =~ /(\d+)NDV$/
1262 18 30 4 uc $key eq $key and $key =~ /^(.*)_C$/
1266 2 0 2 defined $$self{$key} and $$self{$key}

or 3 conditions

line l !l&&r !l&&!r condition
313 0 1 0 ref $this || $this
544 0 0 1 $tok eq 'CB' || $tok eq 'TCU'
1301 0 0 0 $flag eq 'Y' or $flag eq 'y'
0 0 0 $flag eq 'Y' or $flag eq 'y' or $flag == 1
0 0 0 $flag eq 'N' or $flag eq 'n'
0 0 0 $flag eq 'N' or $flag eq 'n' or $flag == 0