Branch Coverage

blib/lib/OSPF/LSDB/ospf6d.pm
Criterion Covered Total %
branch 230 236 97.4


line true false branch
92 18 309 if (/^ +Router Link States \(Area $IP\)$/) { }
62 247 elsif (/^$/) { }
21 226 elsif (not $r and /^\w/) { }
19 255 elsif (not $l and /^ {4}\w/) { }
93 1 17 if $l
95 1 16 if $lnum
96 1 15 if $r
100 14 48 if ($l)
101 1 13 unless $type
107 41 20 unless ($lnum)
112 1 20 unless $area
117 1 18 unless $lnum
123 20 225 if (/^LS age: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
20 205 elsif (/^LS Type: ([\w ()]+)$/) { }
19 186 elsif (/^Link State ID: $IP$/) { }
19 167 elsif (/^Advertising Router: $IP$/) { }
19 148 elsif (/^LS Seq Number: (0x$OSPF::LSDB::ospf6d::RE{'num'}{'hex'})$/) { }
16 132 elsif (/^Flags: ([-*|\w]*)$/) { }
16 116 elsif (/^Number of Links: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
17 99 elsif (/^ Link \([ .\w]*\) connected to: ([\w -]+)$/) { }
17 82 elsif (/^ (?:Designated )?Router ID: $IP$/) { }
17 65 elsif (/^ (?:DR )?Interface ID: $IP$/) { }
14 51 elsif (/^ Metric: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
1 50 elsif (/^ {4}\w/) { }
1 49 elsif (not /^(Options|Checksum|Length):/) { }
126 1 19 if $1 ne "Router"
138 16 48 $flags =~ /\b$_\b/ ? :
143 0 17 if ($1 eq 'Point-to-Point') { }
16 1 elsif ($1 eq 'Transit Network') { }
0 1 elsif ($1 eq 'Virtual Link') { }
153 16 0 if (/\(Interface ID $IP\)/)
171 1 5 if $l
172 1 4 if $lnum
173 1 3 if $r
182 12 110 if (/^ +Net Link States \(Area $IP\)$/) { }
26 84 elsif (/^$/) { }
11 73 elsif (not $n) { }
183 1 11 if $attachments
185 1 10 if $n
189 1 25 if $rnum
195 1 10 unless $area
200 10 73 if (/^LS age: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
10 63 elsif (/^LS Type: ([\w ()]+)$/) { }
9 54 elsif (/^Link State ID: $IP \(Interface ID of Designated Router\)$/) { }
9 45 elsif (/^Advertising Router: $IP$/) { }
9 36 elsif (/^LS Seq Number: (0x$OSPF::LSDB::ospf6d::RE{'num'}{'hex'})$/) { }
6 30 elsif (/^Number of Routers: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
10 20 elsif (/^ Attached Router: $IP$/) { }
1 19 elsif (not /^(Options|Checksum|Length):/) { }
203 1 9 if $1 ne "Network"
216 6 4 unless ($attachments)
220 10 0 if defined $rnum
226 1 4 if $attachments
228 1 3 if $n
249 10 321 if (/^ +Type-5 AS External Link States$/) { }
42 279 elsif (/^$/) { }
30 249 elsif (not $e) { }
250 1 9 if $e
251 1 8 if @externals
261 30 249 if (/^LS age: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
30 219 elsif (/^LS Type: ([\w ()]+)$/) { }
29 190 elsif (/^Link State ID: $IP$/) { }
29 161 elsif (/^Advertising Router: $IP$/) { }
29 132 elsif (/^LS Seq Number: (0x$OSPF::LSDB::ospf6d::RE{'num'}{'hex'})$/) { }
26 106 elsif (/^ Metric: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'} Type: ([1-2])$/) { }
26 80 elsif (/^ Prefix: $PREFIX$/) { }
1 79 elsif (not /^(Checksum|Length| Flags):/) { }
264 1 29 if $1 ne "AS External"
284 1 3 if $e
293 19 378 if (/^ +Link \(Type-8\) Link States \(Area $IP Interface \w+\)$/) { }
59 319 elsif (/^$/) { }
30 289 elsif (not $l) { }
294 1 18 if $prefixes
296 1 17 if $l
300 1 58 if $pnum
305 1 29 unless $area
310 29 289 if (/^LS age: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
29 260 elsif (/^LS Type: ([\w ()]+)$/) { }
28 232 elsif (/^Link State ID: $IP \(Interface ID of Advertising Router\)$/) { }
28 204 elsif (/^Advertising Router: $IP$/) { }
28 176 elsif (/^LS Seq Number: (0x$OSPF::LSDB::ospf6d::RE{'num'}{'hex'})$/) { }
25 151 elsif (/^Link Local Address: ($IP6)$/) { }
25 126 elsif (/^Number of Prefixes: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
49 77 elsif (/^ Prefix: $PREFIX$/) { }
1 76 elsif (not /^(Options|Checksum|Length):/) { }
313 1 28 if $1 ne "Link"
328 10 39 unless ($prefixes)
332 49 0 if defined $pnum
338 1 4 if $prefixes
339 1 3 if $l
348 15 420 if (/^ +Intra Area Prefix Link States \(Area $IP\)$/) { }
50 370 elsif (/^$/) { }
31 339 elsif (not $i) { }
349 1 14 if $prefixes
351 1 13 if $i
356 1 49 if $pnum
358 1 48 if $i and not $type
365 1 30 unless $area
369 30 339 if (/^LS age: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
30 309 elsif (/^LS Type: ([\w ()]+)$/) { }
29 280 elsif (/^Link State ID: $IP$/) { }
29 251 elsif (/^Advertising Router: $IP$/) { }
29 222 elsif (/^LS Seq Number: (0x$OSPF::LSDB::ospf6d::RE{'num'}{'hex'})$/) { }
26 196 elsif (/^Referenced LS Type: (\w+)$/) { }
23 173 elsif (/^Referenced Link State ID: $IP$/) { }
23 150 elsif (/^Referenced Advertising Router: $IP$/) { }
23 127 elsif (/^Number of Prefixes: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'}$/) { }
73 54 elsif (/^ Prefix: $PREFIX(?: Options: \S+)?(?: Metric: $OSPF::LSDB::ospf6d::RE{'num'}{'int'}{'-keep'})?$/) { }
1 53 elsif (not /^(Checksum|Length):/) { }
372 1 29 if $1 ne "Intra Area (Prefix)"
383 1 25 if $type
386 13 12 if ($type eq 'Router') { }
11 1 elsif ($type eq 'Network') { }
401 20 53 unless ($prefixes)
405 73 0 if defined $pnum
407 15 58 if defined $5
413 1 4 if $prefixes
415 1 3 if $i