Branch Coverage

blib/lib/Game/CharacterSheetGenerator.pm
Criterion Covered Total %
branch 234 316 74.0


line true false branch
336 1 37480 if ($en =~ /(.*)( \(\d+\))$/u)
340 18317 19164 if ($translation->{$en} and $lang eq "de")
355 13 0 if (-f "$dist_dir/$filename") { }
360 0 0 unless $tx->success
374 13 425 if ($tspans->size > 1) { }
391 26 480 if $line eq ""
395 0 480 if ($tag eq 'strong' or $tag eq 'b') { }
0 480 elsif ($tag eq 'em' or $tag eq 'i') { }
0 480 elsif ($tag eq 'a') { }
415 68 412 if (@line)
429 0 638 unless $id =~ /^[-a-z0-9]+$/u
445 11 0 if ($self)
467 125 100 if $id =~ /^text[0-9]+(-[0-9]+)*$/u
468 0 100 unless $id =~ /^[-a-z0-9]+$/u
473 0 100 unless $style =~ s/fill:#\d+/fill:magenta/u
479 0 2 if $id =~ /^text[0-9]+(-[0-9]+)*$/u
480 0 2 unless $id =~ /^[-a-z0-9]+$/u
494 5 675 if $n <= 3
495 32 643 if $n <= 5
496 157 486 if $n <= 8
497 310 176 if $n <= 12
498 143 33 if $n <= 15
499 29 4 if $n <= 17
505 0 7 if $n <= 3
506 1 6 if $n <= 8
507 3 3 if $n <= 12
508 3 0 if $n <= 17
515 43 23 if ($char->{$id} and not defined $$char{"$id-bonus"})
519 7 4 if ($char->{'cha'} and not defined $char->{'reaction'})
522 11 0 unless ($char->{'loyalty'})
525 11 0 unless (defined $char->{'hirelings'})
528 7 4 if ($char->{'thac0'} and not defined $char->{'melee-thac0'})
531 7 4 if ($char->{'thac0'} and not defined $char->{'range-thac0'})
534 7 4 if ($char->{'thac0'} and not defined $char->{'other-thac0'})
540 3 327 if $val > 20
541 120 210 if $val < 1
542 330 0 unless $$char{"$type$n"}
545 11 0 unless (defined $char->{'damage'})
548 11 0 unless (defined $char->{'melee-damage'})
551 11 0 unless (defined $char->{'range-damage'})
554 11 0 unless (defined $char->{'other-damage'})
569 0 304 if $class eq T("hireling") or $class eq T("porter")
580 1 304 if $xp or $level > 1 or not $class
587 112 192 if (member($class, T("magic-user"), T("elf")))
600 278 26 if $gold
601 0 304 if $silver
653 0 6460 unless (defined $price)
664 235 18852 if ($_ eq $item)
665 0 235 if (/\(\d+\)$/u) { }
675 3263 235 if ($item)
685 2019 1994 if (ref $item eq 'ARRAY') { }
687 1312 1583 if (ref $elem eq 'ARRAY') { }
692 518 794 if ($money >= $price)
694 0 518 if $char->{'debug'}
702 1188 395 if ($money >= $price)
704 0 1188 if $char->{'debug'}
712 1269 725 if ($money >= $price)
714 0 1269 if $char->{'debug'}
723 0 304 if $char->{'debug'}
732 0 304 if $char->{'debug'}
733 42 262 if ($class eq T("thief"))
741 0 304 if $char->{'debug'}
749 0 304 if $char->{'debug'}
760 0 304 if $char->{'debug'}
770 0 304 if $char->{'debug'}
774 67 237 if ($class eq T('magic-user')) { }
42 195 elsif ($class eq T('thief')) { }
792 29 275 if (member(T('plate mail'), @property)) { }
78 197 elsif (member(T('chain mail'), @property)) { }
116 81 elsif (member(T('leather armor'), @property)) { }
796 110 194 if (member(T("shield"), @property))
798 26 278 if ($class eq T("halfling"))
814 67 237 if ($class eq T('magic-user')) { }
81 156 elsif ($class eq T('fighter')) { }
43 113 elsif ($class eq T('dwarf')) { }
26 87 elsif ($class eq T('halfling')) { }
45 42 elsif ($class eq T('elf')) { }
42 0 elsif ($class eq T('thief')) { }
0 0 elsif ($class eq T('hireling')) { }
0 0 elsif ($class eq T('porter')) { }
819 0 12 if (good($str) and $hp > 6 and not $shield)
833 20 23 unless $shield
865 43 261 if ($class eq T("dwarf") or member(T("battle axe"), @property))
869 81 223 if ($class eq T("fighter"))
880 89 215 if ($class eq T('fighter') || $class eq T('elf') and average($dex))
889 237 67 if ($class ne T("magic-user"))
890 170 67 if (average($dex))
911 0 304 if $char->{'debug'}
948 4 7 unless $class
950 0 7 if ($class eq T('dwarf') or $class eq T('halfling')) { }
0 7 elsif ($class eq T('elf')) { }
3 4 elsif ($class eq T('fighter')) { }
0 4 elsif ($class eq T('magic-user')) { }
4 0 elsif ($class eq T('thief')) { }
970 5 2 unless $char->{'breath'}
971 5 2 unless $char->{'poison'}
972 5 2 unless $char->{'petrify'}
973 5 2 unless $char->{'wands'}
974 5 2 unless $char->{'spells'}
982 0 0 ref $improvement ? :
1023 377 1148 if ($_[$i] > $max)
1036 1668 1582 if $_[$i] > $limit
1053 4 4928 unless not defined $char->{$key} or $char->{$key} eq ""
1074 560 6431 if $element eq $_
1084 0 0 if (substr($text, $n, 1) eq ' ') { }
1094 0 0 if wantarray
1422 26 379 if ($class eq T('halfling')) { }
45 334 elsif ($class eq T('elf')) { }
43 291 elsif ($class eq T('dwarf')) { }
1434 38 62 if ($gender eq 'F') { }
62 0 elsif ($gender eq 'M') { }
1441 6 94 if ($d == 1) { }
18 76 elsif ($d == 2) { }
14 62 elsif ($d == 3) { }
19 43 elsif ($d == 4) { }
20 23 elsif ($d == 5) { }
23 0 elsif ($d == 6) { }
1458 100 0 if ($other ne $trait)
1470 0 305 $class eq T('hireling') || $class eq T('porter') ? :
1477 0 305 if ($class eq T("dwarf"))
1480 0 305 if ($class eq T("elf"))
1483 0 305 if ($class eq T("halfling"))
1497 0 305 if ($class eq T('hireling') or $class eq T('porter')) { }
1507 302 3 unless ($class)
1508 43 259 if (average($con) and $best eq 'str') { }
45 214 elsif (average($int) and good($str, $dex) and d6() > 2) { }
26 188 elsif (average($str, $dex, $con) == 3 and good($str, $dex, $con) and d6() > 2) { }
44 144 elsif (average($str, $dex, $con) >= 2 and $best eq 'str' || $best eq 'con' or good($str, $dex, $con) >= 2) { }
33 111 elsif ($best eq 'int') { }
13 98 elsif ($best eq 'dex') { }
1533 303 2 unless ($char->{'name'})
1539 2 303 unless ($char->{'gender'})
1544 26 279 if ($class eq T("halfling"))
1551 305 0 unless ($hp)
1552 124 181 if ($class eq T('fighter') or $class eq T('dwarf')) { }
71 110 elsif ($class eq T('elf') or $class eq T('halfling')) { }
1566 112 193 if ($class eq T("magic-user") or $class eq T("elf"))
1572 305 0 if (not $char->{'charsheet'})
1573 0 305 if ($class eq T('hireling') or $class eq T('porter')) { }
0 305 elsif ($char->{'landscape'}) { }
1587 45 260 if ($class eq T('elf')) { }
43 217 elsif ($class eq T('dwarf')) { }
26 191 elsif ($class eq T('halfling')) { }
43 148 elsif ($class eq T('thief')) { }
1602 0 43 if $n > 5
1626 5 300 if (member("portrait", @_))
1627 5 0 unless $char->{'portrait'}
1633 5 0 unless my $face_generator_url = app()->config("face_generator_url")
1635 0 0 if ($char->{'class'} eq T('elf') or $char->{'race'} eq T('elf')) { }
0 0 elsif ($char->{'class'} eq T('dwarf') or $char->{'race'} eq T('dwarf')) { }
0 0 elsif ($gender eq 'F') { }
0 0 elsif ($gender eq 'M') { }
1651 0 0 if ($tx->res->code == 302) { }
1658 0 0 $tx->res->code ? :
1699 32 108 if /starting gold:/u or /gold$/u
1700 36 72 if /Startgold:/u or /Gold$/u
1708 0 0 unless defined $str
1713 0 0 unless $safe{$letter}