Branch Coverage

blib/lib/Games/ScottAdams/Parse.pm
Criterion Covered Total %
branch 70 96 72.9


line true false branch
16 0 5 unless my $fh = 'Games::ScottAdams::File'->new($filename)
21 19 233 if (/^%room (.*)/i) { }
30 203 elsif (/^%exit\s+(.*)\s+(.*)/i) { }
33 170 elsif (/^%item\s+(.*)/i) { }
14 156 elsif (/^%getdrop\s+(.*)/i) { }
11 145 elsif (/^%(at|nowhere)\s*(.*)/i) { }
1 144 elsif (/^%start\s+(.*)/i) { }
1 143 elsif (/^%treasury\s+(.*)/i) { }
1 142 elsif (/^%maxload\s+(.*)/i) { }
1 141 elsif (/^%lighttime\s+(.*)/i) { }
1 140 elsif (/^%ident\s+(.*)/i) { }
1 139 elsif (/^%version\s+(.*)/i) { }
1 138 elsif (/^%wordlen\s+(.*)/i) { }
0 138 elsif (/^%lightsource\s+(.*)/i) { }
39 99 elsif (/^%action\s+(.*)\s+(.*)/i) { }
8 91 elsif (/^%action\s+(.*)/i) { }
18 73 elsif (/^%occur\s*(.*)/i) { }
65 8 elsif (/^%result/i) { }
4 4 elsif (/^%comment\s+(.*)/i) { }
0 4 elsif (/^%([nv])alias\s+(.*)\s+(.*)/i) { }
4 0 elsif (/^%include\s+(.*)/i) { }
0 0 elsif (not /^%/) { }
63 4 0 if ($filename =~ m[/])
88 19 24 if ($line =~ /^\s*%/)
99 0 19 if (defined $$this{'roomname'}{$name})
105 1 18 if not defined $$this{'_roomname1'}
116 0 30 unless (defined $room)
123 0 30 unless ($dir =~ /^[nsewud]$/)
129 0 30 if (defined $old)
144 33 0 if (defined $room)
150 33 0 if ($line =~ /^\s*%/)
170 0 33 if (defined $$this{'itemname'}{$name})
176 3 30 if ($desc =~ /^\*/)
188 0 14 unless (defined $item)
195 0 14 if (defined $old)
210 0 11 unless (defined $item)
217 0 11 if (defined $old and $where ne '')
249 0 7 if (defined $$this{$param})
268 47 18 if $verb
269 39 26 if $noun
272 65 59 if ($line =~ /^\s*%/)
289 0 65 unless (defined $action)
295 64 121 if ($line =~ /^\s*%/)
310 0 4 unless (defined $action)
316 0 4 if (defined $old)
333 0 100 unless $word
368 0 89 unless exists $$vocab{$key}
389 0 0 if exists $$seen{$candidate}