# New Ticket Created by François PERRAD
# Please include the string: [perl #36862]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=36862 >
*nix utilities are not available on Win32.
But Perl allows to write portable test.
m4/t/freezing/001_freeze.t
cat --> perl -MExtUtils::Command -e cat
rm -> perl -MExtUtils::Command -e rm_f
m4/t/builtins/010_sysval.t
true -> perl -e exit(0)
false -> perl -e exit(1)
François Perrad.
svn diff
Index: languages/m4/t/freezing/001_freeze.t
===================================================================
--- languages/m4/t/freezing/001_freeze.t (revision 8911)
+++ languages/m4/t/freezing/001_freeze.t (working copy)
@@ -7,11 +7,14 @@
use Parrot::Config;
use Test::More tests => 1;
my $parrot_m4 = "cd .. && .$PConfig{slash_exec}parrot$PConfig{exe}
languages/m4/m4.pbc";
+my $cat = "$PConfig{perl} -MExtUtils::Command -e cat";
+my $rm = "$PConfig{perl} -MExtUtils::Command -e rm_f";
-
#--------------------------------------------
-my $real_out = `$parrot_m4
--reload-state=languages/m4/examples/only_builtin.frozen
--freeze-state=languages/m4/examples/hello.frozen
languages/m4/examples/hello.m4; cat languages/m4/examples/hello.frozen; rm
languages/m4/examples/hello.frozen`;
+my $real_out = `$parrot_m4
--reload-state=languages/m4/examples/only_builtin.frozen
--freeze-state=languages/m4/examples/hello.frozen
languages/m4/examples/hello.m4`;
+$real_out .= `$cat m4/examples/hello.frozen`;
+$real_out .= `$rm m4/examples/hello.frozen`;
is( $real_out, << 'END_OUT', '1 file' );
Hello
T8,8
Index: languages/m4/t/builtins/010_sysval.t
===================================================================
--- languages/m4/t/builtins/010_sysval.t (revision 8911)
+++ languages/m4/t/builtins/010_sysval.t (working copy)
@@ -4,14 +4,17 @@
use FindBin;
use lib "$FindBin::Bin/../../lib", "$FindBin::Bin/../../../../lib";
+use Parrot::Config;
use Parrot::Test tests => 1 + 1;
+my $true = "$PConfig{perl} -e exit(0)";
+my $false = "$PConfig{perl} -e exit(1)";
+
SKIP:
{
- skip( "`false' not available on $^O", 1 ) if ($^O =~ /MSWin32/);
skip( "difference between running a process in a fork, or with system()", 1
);
language_output_is( 'm4', <<'CODE', <<'OUT', 'output of "false"' );
-syscmd(`false')
+syscmd(`$false`)
sysval()
CODE
@@ -20,10 +23,8 @@
}
{
- skip( "`true' not available on $^O", 1 ) if ($^O =~ /MSWin32/);
-
language_output_is( 'm4', <<'CODE', <<'OUT', 'output of "true"' );
-syscmd(`true')
+syscmd(`$true`)
sysval()
CODE