Branch Coverage

blib/lib/Lingua/Zompist/Verdurian.pm
Criterion Covered Total %
branch 172 188 91.4


line true false branch
109 2 15 if ($stem =~ s/^(\S+)(fassec|mizec|shrifec|zhanen|zhusir)$/$1/)
113 8 7 if exists $demeric{$verb}
115 3 4 if ($stem =~ s/[ea]n$//) { }
2 2 elsif ($stem =~ s/[ie]r$//) { }
2 0 elsif ($stem =~ s/ec$//) { }
146 5 78 if exists $scrifel{$verb}
148 52 26 if ($stem =~ s/(${cons}[lr])([ea]n|[ie]r|ec)$/$1i$2/)
152 29 49 if ($stem =~ s/c[ea]n$/sn/ or $stem =~ s/ch[ea]n$/dn/ or $stem =~ s/d[ea]n$/zn/ or $stem =~ s/g[ea]n$/zhn/ or $stem =~ s/[ea]n$/n/) { }
29 20 elsif ($stem =~ s/ch[ie]r$/dr/ or $stem =~ s/m[ie]r$/mbr/ or $stem =~ s/n[ie]r$/ndr/ or $stem =~ s/z[ie]r$/dr/ or $stem =~ s/[ie]r$/r/) { }
20 0 elsif ($stem =~ s/cec$/sc/ or $stem =~ s/chec$/shc/ or $stem =~ s/mec$/nc/ or $stem =~ s/sec$/sh/ or $stem =~ s/zec$/zh/ or $stem =~ s/ec$/c/) { }
175 52 26 if ($add)
212 4 78 if exists $izhcrifel{$verb}
214 52 26 if ($stem =~ s/(${cons}[lr])([ea]n|[ie]r|ec)$/$1i$2/)
218 29 49 if ($stem =~ s/c[ea]n$/sner/ or $stem =~ s/ch[ea]n$/dner/ or $stem =~ s/d[ea]n$/zner/ or $stem =~ s/g[ea]n$/zhner/ or $stem =~ s/[ea]n$/ner/) { }
29 20 elsif ($stem =~ s/ch[ie]r$/dre/ or $stem =~ s/m[ie]r$/mbre/ or $stem =~ s/n[ie]r$/ndre/ or $stem =~ s/z[ie]r$/dre/ or $stem =~ s/[ie]r$/re/) { }
20 0 elsif ($stem =~ s/cec$/scer/ or $stem =~ s/chec$/shcer/ or $stem =~ s/mec$/ncer/ or $stem =~ s/sec$/sher/ or $stem =~ s/zec$/zher/ or $stem =~ s/ec$/cer/) { }
260 4 17 if exists $ctanec{$verb}
262 1 16 if ($stem =~ s/(${cons}[lr])([ea]n|[ie]r|ec)$/$1i$2/)
266 7 10 if ($stem =~ s/ch[ea]n$/dm/ or $stem =~ s/g[ea]n$/zhm/ or $stem =~ s/[ea]n$/m/) { }
8 2 elsif ($stem =~ s/ch[ie]r$/tret/ or $stem =~ s/m[ie]r$/mbret/ or $stem =~ s/n[ie]r$/ndret/ or $stem =~ s/z[ie]r$/dret/ or $stem =~ s/[ie]r$/ret/) { }
2 0 elsif ($stem =~ s/ec$/t/) { }
282 1 16 if ($add)
320 3 19 if exists $epesec{$verb}
322 0 19 if ($stem =~ s/($cons$cons)([ea]n|[ie]r|ec)$/$1i$2/)
326 7 12 if ($stem =~ s/c[ea]n$/scel/ or $stem =~ s/ch[ea]n$/shcel/ or $stem =~ s/m[ea]n$/ncel/ or $stem =~ s/s[ea]n$/shel/ or $stem =~ s/z[ea]n$/zhel/ or $stem =~ s/[ea]n$/cel/) { }
6 6 elsif ($stem =~ s/c[ie]r$/scel/ or $stem =~ s/ch[ie]r$/shcel/ or $stem =~ s/m[ie]r$/ncel/ or $stem =~ s/s[ie]r$/shel/ or $stem =~ s/z[ie]r$/zhel/ or $stem =~ s/[ie]r$/cel/) { }
6 0 elsif ($stem =~ s/cec$/scel/ or $stem =~ s/chec$/shcel/ or $stem =~ s/mec$/ncel/ or $stem =~ s/sec$/shel/ or $stem =~ s/zec$/zhel/ or $stem =~ s/ec$/cel/) { }
361 1 11 if $verb eq 'kies'
363 5 6 if ($stem =~ /[ea]n$/) { }
3 3 elsif ($stem =~ /[ie]r$/) { }
3 0 elsif ($stem =~ /ec$/) { }
380 1 11 if $verb eq 'kies'
382 5 6 if ($stem =~ s/[ea]n$//) { }
3 3 elsif ($stem =~ s/[ie]r$//) { }
3 0 elsif ($stem =~ s/ec$//) { }
406 4 20 if (exists $part{$verb}) { }
409 0 20 unless $verb =~ /(?:ec|[ea]n|[ie]r)$/
414 14 6 unless s/ec$/\353/
426 12 12 wantarray ? :
448 8 138 if exists $masc{$noun}
451 0 146 if $noun eq 'so'
452 0 146 if $noun eq 'soa'
455 1 145 if $noun eq 'se'
456 1 144 if $noun eq 'le'
457 1 143 if $noun eq 'ilu'
458 1 142 if $noun eq 'ila'
459 1 141 if $noun eq 'il'
460 1 140 if $noun eq 'ze'
461 1 139 if $noun eq 'tu'
462 1 138 if $noun eq 'ta'
463 1 137 if $noun eq 'mu'
464 1 136 if $noun eq 'ca'
465 1 135 if $noun eq 'za'
468 3 132 if ($stem =~ s/^((?:if|nib|ti)?k)e$/$1/) { }
3 129 elsif ($stem =~ s/^((?:if|nib|ti)?ki)o$/$1/) { }
4 125 elsif ($stem =~ s/^((?:n\353c|nik|sh|e)t)o$/$1/) { }
1 124 elsif ($noun eq 'tot') { }
1 123 elsif ($noun eq 'fsya') { }
5 118 elsif ($stem =~ s/^((?:if|nib|ti)c|kt|fs)\353$/$1/) { }
1 117 elsif ($noun eq 'zdesy') { }
1 116 elsif ($noun eq 'cechel') { }
1 115 elsif ($noun eq 'nish') { }
494 48 67 if ($stem =~ /[pbtdhcgkfvszmnlr]$/) { }
5 62 elsif ($type eq 'fem' and $stem =~ s/ia$//) { }
14 48 elsif ($type eq 'fem' and $stem =~ s/a$//) { }
2 46 elsif ($stem =~ s/o$//) { }
2 44 elsif ($stem =~ s/u$//) { }
2 42 elsif ($stem =~ s/iy$//) { }
4 38 elsif ($stem =~ s/\355y$//) { }
2 36 elsif ($stem =~ s/y$//) { }
8 28 elsif ($type eq 'masc' and $stem =~ s/a$//) { }
2 26 elsif ($stem =~ s/i$//) { }
2 24 elsif ($stem =~ s/e$//) { }
2 22 elsif ($stem =~ s/\353$//) { }
2 20 elsif ($type eq 'fem' and $stem =~ s/\341$//) { }
8 12 elsif ($stem =~ s/\363$//) { }
4 8 elsif ($stem =~ s/\372$//) { }
0 8 elsif ($type eq 'masc' and $stem =~ s/\341$//) { }
1 7 elsif ($stem =~ s/\355$//) { }
7 0 elsif ($stem =~ s/\351$//) { }
507 3 1 $Lingua::Zompist::Verdurian::keep_accents ? :
523 6 2 $Lingua::Zompist::Verdurian::keep_accents ? :
527 3 1 $Lingua::Zompist::Verdurian::keep_accents ? :
531 0 0 $Lingua::Zompist::Verdurian::keep_accents ? :
537 5 2 $Lingua::Zompist::Verdurian::keep_accents ? :
547 60 860 if (/[\341\355]n$/)
564 688 4 unless s/^aklog\356$/aklozhi/ or s/^aklo$g/aklozh/o or s/^\341nselcu$d/\341nselcuz/o or s/^bars\372$c/bars\372s/o or s/^bela$c/belas/o or s/^bo$c/bos/o or s/^br\366$ca/br\366s/o or s/^b\374$t/b\374s/o or s/^chedesnag\356$/chedesnazhi/ or s/^chedesna$ga/chedesnazh/o or s/^chu$ca/chus/o or s/^dosi$c/dosis/o or s/^dra$c/dras/o or s/^dushi$c/dushis/o or s/^dha$c/dhas/o or s/^dhie$c/dhies/o or s/^ecel\363g\356$/ecel\363zhi/ or s/^ecel\363$g/ecel\363zh/o or s/^etal\363g\356$/etal\363zhi/ or s/^etal\363$g/etal\363zh/o or s/^feri$ca/feris/o or s/^fifachi$c/fifachis/o or s/^formi$ca/formis/o or s/^gl\344$ca/gl\344s/o or s/^gorat\356$/goradhi/ or s/^gora$t/goradh/o or s/^gra$k/grah/o or s/^gut\356$/gudhi/ or s/^gu$t/gudh/o or s/^hu$ca/hus/o or s/^kt\353log\356$/kt\353lozhi/ or s/^kt\353lo$g/kt\353lozh/o or s/^ku$d/kuz/o or s/^lertlog\356$/lertlozhi/ or s/^lertlo$g/lertlozh/o or s/^log\356$/lozhi/ or s/^lo$g/lozh/o or s/^mati$ca/matis/o or s/^me$ca/mes/o or s/^mevlog\356$/mevlozhi/ or s/^mevlo$g/mevlozh/o or s/^morut\356$/morudhi/ or s/^moru$t/morudh/o or s/^nag\356$/nazhi/ or s/^na$ga/nazh/o or s/^ni$d/niz/o or s/^pag\356$/pazhi/ or s/^pa$g/pazh/o or s/^prolog\356$/prolozhi/ or s/^prolo$g/prolozh/o or s/^ra$k/rah/o or s/^rog\356$/rozhi/ or s/^ro$g/rozh/o or s/^rhit\356$/rhichi/ or s/^rhi$t/rhich/o or s/^sfi$ca/sfis/o or s/^shan$k/shanh/o or s/^smeri$c/smeris/o or s/^verat\356$/veradhi/ or s/^vera$t/veradh/o or s/^yag\356$/yazhi/ or s/^ya$g/yazh/o
628 80 840 unless ($Lingua::Zompist::Verdurian::keep_accents)
644 2 7 if ($stem =~ /[pbtdhcgkfvszmnlr]$/ or $stem eq 'so') { }
1 6 elsif ($stem =~ s/e$//) { }
1 5 elsif ($stem =~ s/y$//) { }
5 0 elsif ($stem =~ s/\353$//) { }
663 13 131 if (/[\341\355\351]n$/ or /\363m$/)
673 16 128 unless ($Lingua::Zompist::Verdurian::keep_accents)