Acme-EyeDrops
view release on metacpan or search on metacpan
t/04_Apocalyptic.t view on Meta::CPAN
$outstr eq "" or print "not ";
++$itest; print "ok $itest - $e output\n";
$prog =~ s/^.+\n// if $] >= 5.017; # remove leading use re 'eval' line
$prog =~ tr/\n// == $enlf or print "not ";
++$itest; print "ok $itest - $e nlf $enlf\n";
$prog =~ tr/!-~/#/;
$prog eq $shapestr or print "not ";
++$itest; print "ok $itest - $e shape\n";
}
sub test_one_empty {
my $shapestr = shift;
my $prog = sightly( { ShapeString => $shapestr,
InformHandler => sub {} } );
build_file($tmpf, $prog);
my $outstr = `$^X -w -Mstrict $tmpf`;
$? >> 8 == 0 or print "not ";
++$itest; print "ok $itest - rc\n";
$outstr eq "" or print "not ";
++$itest; print "ok $itest - output\n";
$prog =~ tr/\n// == 1 or print "not ";
++$itest; print "ok $itest - nlf\n";
$prog =~ tr/!-~/#/;
$prog eq $shapestr or print "not ";
++$itest; print "ok $itest - shape\n";
}
# --------------------------------------------------
my $bugshape =
'#######################################################' .
'#######################################################' .
"\n" . "# # #\n";
my $onetoomanyshape =
'#######################################################' .
'#######################################################' .
"\n" . "# # # #\n";
# -----------------------------------------------------
test_one('One too many bug', $onetoomanyshape, 2);
test_one('Invalid program bug', $bugshape, 2);
# more invalid program tests --------------------------
# This one failed prior to EyeDrops version 1.17.
test_one_empty("############ ###### ### ###\n");
test_one_empty("############ ### ### #\n");
test_one_empty("############ ##### ### #\n");
test_one_empty("############ ### #### #\n");
test_one_empty("############ #\n");
test_one_empty("############ ##\n");
test_one_empty("############ ###\n");
test_one_empty("############ ####\n");
test_one_empty("############\n");
# -----------------------------------------------------
unlink($tmpf) or die "error: unlink '$tmpf': $!";
( run in 0.845 second using v1.01-cache-2.11-cpan-39bf76dae61 )