[t/spec] Add tricky tests (which pass after latest Rakudo patch), unfudge old simple...
[pugs.git] / t / run / 06-dash-version.t
blobbe59e87ceed89e5f16e24d6ffd1cea41361a33ca
1 use v6;
3 use Test;
5 =begin pod
7 Test that the C<--version> command in its various incantations
8 works.
10 =end pod
12 my @tests = any(< -v --version >);
13 @tests = map -> Junction $_ { $_.eigenstates },
14          map -> Junction $_ { $_, "-w $_", "$_ -w", "-w $_ -w" },
15          @tests;
17 plan +@tests;
18 if $*OS eq "browser" {
19   skip_rest "Programs running in browsers don't have access to regular IO.";
20   exit;
23 diag "Running under $*OS";
25 my $redir = ">";
27 sub nonce () { return (".{$*PID}." ~ (1..1000).pick) }
29 for @tests -> $ex {
30   my $out_fn = "temp-ex-output" ~ nonce;
31   my $command = "$*EXECUTABLE_NAME $ex $redir $out_fn";
32   diag $command;
33   run $command;
35   my $got = slurp $out_fn;
36   unlink $out_fn;
38   like($got, rx:Perl5/Version:.6\.\d+\.\d+/, "'$ex' displays version");