Branch Coverage

blib/lib/Protocol/FIX/Parser.pm
Criterion Covered Total %
branch 72 78 92.3


line true false branch
21 1 289 unless $pair
23 286 3 if ($pair =~ /^(\d{1,})($Protocol::FIX::TAG_SEPARATOR)(.*)$/) { }
27 1 285 unless $field
30 0 285 unless defined $3
32 6 279 unless $check_value
35 2 277 unless $field->check_raw($value)
41 2 1 if ($pair =~ /[\D$Protocol::FIX::TAG_SEPARATOR]+/)
64 0 124 unless defined $buff_ref
65 0 124 unless ref $buff_ref eq "SCALAR"
71 10 114 if $buff_length < length $begin_string
73 1 113 if (substr($$buff_ref, 0, length $begin_string) ne $begin_string)
78 2 111 if $buff_length == length $begin_string
83 1 110 if @header_pairs < 2
92 6 104 unless $tag_pair
95 1 103 if ($field->{'name'} ne "BodyLength")
98 5 98 unless $pair_is_complete
104 69 29 if $buff_length <= $consumed_length + $body_length
113 7 22 if @trailer_pairs < 2 or not $trailer_pairs[0]
120 0 22 if $err
123 0 22 if ($field->{'name'} ne "CheckSum")
129 3 19 if (not $is_number or $is_number and $value > 255)
143 1 18 if ($sum != $value)
151 7 11 if $error
167 1 157 if $err
172 1 16 unless defined $msg_pair_idx
181 0 16 unless $message
185 5 11 if $err
198 1 16 if $error
208 22 99 $field->has_mapping ? :
229 1 19 unless $ta
248 9 150 if $parsed_subcomposites{$field->{'name'}} or $owner and $parsed_subcomposites{$owner}
257 12 121 $field->{'type'} eq 'NUMINGROUP' ? :
133 13 $composite->{'composite_by_name'}{$field->{'name'}} ? :
17 146 $owner && $owner ne $composite->{'name'} ? :
262 150 13 if ($constructor) { }
264 2 148 if $error
271 3 10 if $fail_on_missing
277 1 82 unless (exists $parsed_subcomposites{$mandatory_composite})
281 46 1 @direct_pairs ? :