[tap]:
[parrot.git] / t / pharness / 02-get_test_prog_args.t
blobe432c5ffa23b104fe15f0a1e657170a4a90f54df
1 #! perl
2 # Copyright (C) 2007, The Perl Foundation.
3 # $Id$
4 # 02-get_test_prog_args.t
6 use strict;
7 use warnings;
9 use lib qw( lib );
10 use Test::More;
11 eval {
12     use Parrot::Config qw( %PConfig );
14 plan( skip_all => 't/harness only runs once configuration has completed' )
15     if $@;
16 plan( tests => 16 );
17 use Carp;
18 use Parrot::Harness::Options qw( get_test_prog_args );
20 my ($args, $optsref);
21 my ($gc_debug, $run_exec);
23 $optsref = {
24     'd'     => 1,
25     'g'     => 1,
26     'D'     => 40,
28 ($gc_debug, $run_exec) = (0,0);
29 $args = get_test_prog_args($optsref, $gc_debug, $run_exec);
30 like($args, qr/-d/, "Got expected option");
31 like($args, qr/-g/, "Got expected option");
32 like($args, qr/-D40/, "Got expected option");
34 $optsref = {
35     'd'     => 1,
36     'g'     => 1,
37     'D'     => 40,
38     'O'     => 2,
40 ($gc_debug, $run_exec) = (0,0);
41 $args = get_test_prog_args($optsref, $gc_debug, $run_exec);
42 like($args, qr/-d/, "Got expected option");
43 like($args, qr/-g/, "Got expected option");
44 like($args, qr/-D40/, "Got expected option");
45 like($args, qr/-O2/, "Got expected option");
47 $optsref = {
48     'd'     => 1,
49     'g'     => 1,
50     'D'     => 40,
52 ($gc_debug, $run_exec) = (1,0);
53 $args = get_test_prog_args($optsref, $gc_debug, $run_exec);
54 like($args, qr/-d/, "Got expected option");
55 like($args, qr/-g/, "Got expected option");
56 like($args, qr/-D40/, "Got expected option");
57 like($args, qr/\s--gc-debug/, "Got expected option");
59 $optsref = {
60     'd'     => 1,
61     'g'     => 1,
62     'D'     => 40,
64 ($gc_debug, $run_exec) = (0,1);
65 $args = get_test_prog_args($optsref, $gc_debug, $run_exec);
66 like($args, qr/-d/, "Got expected option");
67 like($args, qr/-g/, "Got expected option");
68 like($args, qr/-D40/, "Got expected option");
69 like($args, qr/\s--run-exec/, "Got expected option");
71 pass("Completed all tests in $0");
73 ################### DOCUMENTATION ###################
75 =head1 NAME
77 02-get_test_prog_args.t - test Parrot::Harness::Options
79 =head1 SYNOPSIS
81     % prove t/pharness/02-get_test_prog_args.t
83 =head1 DESCRIPTION
85 This file holds tests for Parrot::Harness::Options::get_test_prog_args().
87 =head1 AUTHOR
89 James E Keenan
91 =head1 SEE ALSO
93 Parrot::Harness::Options, F<t/harness>.
95 =cut
97 # Local Variables:
98 #   mode: cperl
99 #   cperl-indent-level: 4
100 #   fill-column: 100
101 # End:
102 # vim: expandtab shiftwidth=4: