fix codetest failure - ASSERT_ARGS does not have a ; after and
[parrot.git] / t / steps / auto / inline-01.t
blobb53c4c0ebd595ff21e2506cc7b6239d373c3ea55
1 #! perl
2 # Copyright (C) 2007, Parrot Foundation.
3 # $Id$
4 # auto/inline-01.t
6 use strict;
7 use warnings;
8 use Test::More tests =>  32;
9 use Carp;
10 use lib qw( lib t/configure/testlib );
11 use_ok('config::auto::inline');
12 use Parrot::Configure::Options qw( process_options );
13 use Parrot::Configure::Step::Test;
14 use Parrot::Configure::Test qw(
15     test_step_constructor_and_description
17 use IO::CaptureOutput qw( capture );
19 ########### regular  ###########
21 my ($args, $step_list_ref) = process_options(
22     {
23         argv => [ ],
24         mode => q{configure},
25     }
28 my $conf = Parrot::Configure::Step::Test->new;
29 $conf->include_config_results( $args );
31 my $pkg = q{auto::inline};
33 $conf->add_steps($pkg);
35 my $serialized = $conf->pcfreeze();
37 $conf->options->set( %{$args} );
38 my $step = test_step_constructor_and_description($conf);
40 my $ret = $step->runstep($conf);
41 ok( $ret, "runstep() returned true value" );
43 $conf->replenish($serialized);
45 ########### --inline ###########
47 ($args, $step_list_ref) = process_options( {
48     argv => [ q{--inline} ],
49     mode => q{configure},
50 } );
51 $conf->options->set( %{$args} );
52 $step = test_step_constructor_and_description($conf);
53 $ret = $step->runstep($conf);
54 ok( $ret, "runstep() returned true value" );
56 $conf->replenish($serialized);
58 ########### _evaluate_inline() ###########
60 ($args, $step_list_ref) = process_options( {
61     argv => [ ],
62     mode => q{configure},
63 } );
64 $conf->options->set( %{$args} );
65 $step = test_step_constructor_and_description($conf);
66 my $test = 1;
67 ok($step->_evaluate_inline($conf, $test),
68     "_evaluate_inline() returned true value");
69 is($step->result, q{yes}, "Got expected result");
70 is($conf->data->get( 'inline' ), 1,
71     "'inline' attribute has expected value");
73 $conf->replenish($serialized);
75 ########### _evaluate_inline() ###########
77 ($args, $step_list_ref) = process_options( {
78     argv => [ ],
79     mode => q{configure},
80 } );
81 $conf->options->set( %{$args} );
82 $step = test_step_constructor_and_description($conf);
83 $test = 0;
84 ok($step->_evaluate_inline($conf, $test),
85     "_evaluate_inline() returned true value");
86 is($step->result, q{no}, "Got expected result");
87 is($conf->data->get( 'inline' ), q{},
88     "'inline' attribute has expected value");
90 $conf->replenish($serialized);
92 ########### _evaluate_inline(); --verbose ###########
94 ($args, $step_list_ref) = process_options( {
95     argv => [ q{--verbose} ],
96     mode => q{configure},
97 } );
98 $conf->options->set( %{$args} );
99 $step = test_step_constructor_and_description($conf);
101     my $test = 1;
102     my $stdout;
103     my $ret = capture(
104         sub { $step->_evaluate_inline($conf, $test) },
105         \$stdout
106     );
107     ok($ret, "_evaluate_inline() returned true value");
108     is($step->result, q{yes}, "Got expected result");
109     is($conf->data->get( 'inline' ), 1,
110         "'inline' attribute has expected value");
113 $conf->replenish($serialized);
115 ########### _second_probe_for_inline(); _evaluate_inline() ###########
117 ($args, $step_list_ref) = process_options( {
118     argv => [ ],
119     mode => q{configure},
120 } );
121 $conf->options->set( %{$args} );
122 $step = test_step_constructor_and_description($conf);
123 $test = 0;
124 $test = $step->_second_probe_for_inline($conf, $test);
125 ok($step->_evaluate_inline($conf, $test),
126     "_evaluate_inline() returned true value");
128 pass("Completed all tests in $0");
130 ################### DOCUMENTATION ###################
132 =head1 NAME
134 auto/inline-01.t - test auto::inline
136 =head1 SYNOPSIS
138     % prove t/steps/auto/inline-01.t
140 =head1 DESCRIPTION
142 The files in this directory test functionality used by F<Configure.pl>.
144 The tests in this file test auto::inline.
146 =head1 AUTHOR
148 James E Keenan
150 =head1 SEE ALSO
152 config::auto::inline, F<Configure.pl>.
154 =cut
156 # Local Variables:
157 #   mode: cperl
158 #   cperl-indent-level: 4
159 #   fill-column: 100
160 # End:
161 # vim: expandtab shiftwidth=4: