[t/spec] Add tricky tests (which pass after latest Rakudo patch), unfudge old simple...
[pugs.git] / t / run / 12-script-args.t
blob2f614a5c84dbfdb18178ebdd880b3c8f52cf74f4
1 use v6;
3 use Test;
5 plan 10;
6 if $*OS eq "browser" {
7   skip_rest "Programs running in browsers don't have access to regular IO.";
8   exit;
11 # Win9x breakage:
12 my $redir = "2>&1 >";
14 sub nonce () { return (".{$*PID}." ~ (1..1000).pick) }
16 sub run_test ($args) {
17     my $out_fn = "temp-ex-output" ~ nonce;
18     my $command = "$*EXECUTABLE_NAME $args $redir $out_fn";
19     run $command;
21     my $expected = "Unrecognized switch: -foo  (-h will show valid options).\n";
22     my $got      = chomp( slurp $out_fn );
23     unlink $out_fn;
24     return $got;
27 is run_test("t/run/dump_params.pl 1"), ("1",).perl,     " bare arg works";
28 is run_test("t/run/dump_params.pl --n"), ("--n",).perl, " --n arg works";
29 for (qw/n p c e h V v/) {
30     is run_test("t/run/dump_params.pl -$_"), ("-$_",).perl, " -$_ arg works";
32 is run_test("t/run/dump_params.pl -a"), ('-a',).perl, " -a arg works";