Condition Coverage

blib/lib/Parse/HTTP/UserAgent/Base/IS.pm
Criterion Covered Total %
condition 57 73 78.0


and 3 conditions

line !l l&&!r l&&r condition
14 114 222 14 $extra && $extra->[0] eq 'Opera'
20 332 2 2 $extra && @{$extra;} == 4 && $extra->[2] eq 'Opera'
31 112 76 36 $extra && index($extra->[0], 'AppleWebKit') != -1
162 26 0 @{$others;} && index($others->[-1], 'Safari') != -1
40 0 4 60 $chrome and $safari
42 40 20 0 index($chrome, 'Chrome') != -1 && index($safari, 'Safari') != -1 && ($extra && index($extra->[0], 'AppleWebKit') != -1)
51 188 2 40 $has_android and $has_safari
54 26 34 130 @{$others;} == 0 and @{$thing;} > 0
60 0 130 @{$others;} == 0 and @{$thing;} > 0 and $thing->[-1]
0 128 2 @{$others;} == 0 and @{$thing;} > 0 and $thing->[-1] and index($thing->[-1], 'AppleWebKit') != -1
72 114 138 82 $extra and $extra->[1]
73 80 0 2 $extra->[1] eq 'Mozilla' && $extra->[2]
75 0 2 0 $extra->[2] =~ / Firefox|Iceweasel|Firebird|Phoenix /msx && do { $extra->[1] = $extra->[2] }
108 2 0 26 index($moz, 'Mozilla/') != -1 && $moz ne 'Mozilla/4.0' && !$compatible && !$extra && !@others && (@{$thing;} && $thing->[-1] ne 'Sun') && index($thing->[0], 'http://') == -1
134 2 0 20 $moz && !@{$thing;} && !$extra && !@others
140 0 0 2 @hot == 2 && $hot[1] eq 'Sun'
145 0 0 0 $extra && $extra->[0] && index($extra->[0], 'compatible') != -1 && $extra->[1] && $extra->[1] eq 'MSIE'

or 2 conditions

line l !l condition
38 64 186 $others->[1] || (return)
121 1112 8 shift() || (return)

or 3 conditions

line l !l&&r !l&&!r condition
83 112 34 42 ref $extra ne 'ARRAY' or @{$extra;} != 1
146 40 2 ref $extra ne 'ARRAY' or @{$extra;} != 1 or index(lc $extra->[0], 'firefox/') == -1
94 18 42 50 $self->_generic_name_version(@args) or $self->_generic_compatible(@args)
60 24 26 $self->_generic_name_version(@args) or $self->_generic_compatible(@args) or $self->_generic_moz_thing(@args)
123 158 20 934 $s eq 'U' or $s eq 'I'
178 0 934 $s eq 'U' or $s eq 'I' or $s eq 'N'