Branch Coverage

blib/lib/Parse/HTTP/UserAgent.pm
Criterion Covered Total %
branch 110 134 82.0


line true false branch
24 2 0 if not defined &Parse::HTTP::UserAgent::DEBUG
49 0 554 if ref $opt ne 'HASH'
53 0 554 exists $opt->{'extended'} ? :
54 0 554 if $opt->{'normalize'}
72 0 1352 unless $s
84 0 0 $type eq 'ARRAY' ? :
0 0 !$type ? :
89 0 0 if delete $mode{':all'}
92 0 0 if $mode{'plus_to_space'}
93 0 0 if $mode{'trim_spaces'}
99 0 554 if $self->[2]
102 554 0 unless $self->[23]
119 680 2320 if ($token eq '(')
120 656 24 if ++$depth == 1
123 678 1642 if ($token eq ')')
124 652 26 if --$depth == 0
132 0 554 unless shift @parts
133 36 518 unless shift @parts
134 282 272 unless shift @parts
137 518 36 $thing ? :
138 272 282 if $extra
149 150 62 if ($c and shift @{$t;} and !$e || $self->[3] and not $self->[1])
155 120 30 if ($n eq 'MSIE' and index($m, ' ') == -1)
160 26 408 if ($self->[3])
163 12 98 index($_, 'rv:') != -1 ? :
26 110 index($_, 'Trident/') != -1 ? :
28 136 index($_, 'Windows') != -1 ? :
170 12 14 if ($msie_matched == 3) { }
2 12 elsif (not $self->[1] and $msie_matched == 2 and not $msie11{'version'}) { }
177 2 6 if (index($junk, 'MSIE') != -1)
190 2 186 $self->_is_suspicious_ff($e) ? :
42 188 $self->_is_android($t, \@o) ? :
16 230 $self->_is_chrome($e, \@o) ? :
34 246 $self->_is_safari($e, \@o) ? :
46 280 $self->_is_ff($e) ? :
2 326 $self->_is_opera_ff($e) ? :
14 328 $self->_is_opera_post($e) ? :
34 342 $self->_is_opera_pre($m) ? :
44 376 $self->[1] ? :
201 234 186 if ($rv)
205 232 2 if ($rvx)
211 188 0 if $self->[0]
219 538 16 if $self->[25]
224 76 784 if ($self->_is_strength($e))
231 400 154 @buf ? :
233 258 296 if ($self->[21])
235 256 2 defined $v ? :
238 88 466 if ($self->[10])
244 490 64 if ($self->[14])
249 4890 18 if lc $robo ne lc $self->[11]
259 50 138 if $self->_is_gecko and $self->_parse_gecko(@args)
260 26 112 if $self->_is_netscape(@args) and $self->_parse_netscape(@args)
261 2 110 if $self->_is_docomo(@args) and $self->_parse_docomo(@args)
262 84 26 if $self->_is_generic(@args)
263 4 22 if $self->_is_emacs(@args) and $self->_parse_emacs(@args)
264 20 2 if $self->_is_moz_only(@args) and $self->_parse_moz_only(@args)
265 2 0 if $self->_is_hotjava(@args) and $self->_parse_hotjava(@args)
280 46 870 if ($v =~ s/( pre | rel | alpha | beta | \-stable | gold | [ab]\d+ | a\-XXXX | dev | [+] )//gimsx)
297 2 914 if ($v =~ s/( (?:[^0-9]+)? # usually dash rc # nonsense [\-_.]? # usually dash ([0-9]) # teh candidate revision )/.0.$2/imsx)
309 2 914 if (my $rc = $v =~ tr/\-/./)
316 2 914 if (my $rc = $v =~ tr/_/./)
323 2 914 if ($v =~ s/([^0-9._v])/./gmsx)
327 0 916 if ($v =~ s/([.]{2,})/./gmsx)
343 0 2 if not $msg =~ / Integer\ overflow\ in\ version /msx || $msg =~ / Version\ string .+? contains\ invalid\ data\;\ ignoring\:/msx
347 112 804 if index($v, '.') == -1
349 0 916 unless $check
354 0 916 unless (eval { do { $rv = 'version'->new("$v")->numify; 1 } })