Skip to content
Browse files

Some prerequisites for successful operation of buildtools_tests are n…

…o longer

met upon completion of Configure.pl.  Make them dependent on 'make corevm'
instead.  Eliminate one test file; eliminate some tests in another file; TODO
one test.


git-svn-id: https://svn.parrot.org/parrot/branches/one_make@43550 d31e2699-5ff4-0310-a27c-f18f2fbe73fe
  • Loading branch information...
1 parent 90657d1 commit 272ac526683058f511b408f2be91396667a26954 @jkeenan jkeenan committed Jan 23, 2010
View
6 Configure.pl
@@ -183,11 +183,7 @@ =head2 General Options
=item C<--test=build>
-Run tests found in F<t/postconfigure/>, F<t/tools/pmc2cutils/>,
-F<t/tools/ops2cutils/> and F<t/tools/ops2pm/> I<after> configuration has
-completed. These tests demonstrate (a) that certain of Parrot's configuration
-tools are working properly post-configuration; and (b) that certain of
-Parrot's build tools will work properly once you call F<make>.
+Run tests found in F<t/steps/>, F<t/postconfigure/> and F<t/pharness>.
=item C<--test>
View
3 MANIFEST
@@ -1,7 +1,7 @@
# ex: set ro:
# $Id$
#
-# generated by tools/dev/mk_manifest_and_skip.pl Wed Jan 20 13:33:00 2010 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Sat Jan 23 04:05:44 2010 UT
#
# See below for documentation on the format of this file.
#
@@ -2129,7 +2129,6 @@ t/tools/pbc_disassemble.t [test]
t/tools/pbc_dump.t [test]
t/tools/pbc_merge.t [test]
t/tools/pgegrep.t [test]
-t/tools/pmc2cutils/00-qualify.t [test]
t/tools/pmc2cutils/01-pmc2cutils.t [test]
t/tools/pmc2cutils/02-find_file.t [test]
t/tools/pmc2cutils/03-dump_vtable.t [test]
View
2 config/gen/makefiles/root.in
@@ -1745,7 +1745,7 @@ codingstd_tests :
warnings_tests:
$(PERL) t/harness $(EXTRA_TEST_ARGS) -w $(RUNCORE_TEST_FILES)
-buildtools_tests :
+buildtools_tests : corevm
$(PERL) t/harness $(BUILDTOOLS_TEST_FILES)
manifest_tests :
View
3 lib/Parrot/Configure/Options/Test/Prepare.pm
@@ -36,9 +36,6 @@ sub get_postconfiguration_tests {
my @postconfiguration_tests = (
@steps_tests,
glob("t/postconfigure/*.t"),
- glob("t/tools/pmc2cutils/*.t"),
- glob("t/tools/ops2cutils/*.t"),
- glob("t/tools/ops2pm/*.t"),
glob("t/pharness/*.t"),
);
return @postconfiguration_tests;
View
34 t/tools/ops2pm/00-qualify.t
@@ -5,7 +5,7 @@
use strict;
use warnings;
-use Test::More tests => 11;
+use Test::More tests => 8;
use FindBin;
use lib ( "$FindBin::Bin/../../../lib", );
use_ok('Parrot::Ops2pm');
@@ -16,37 +16,7 @@ ok( -f "$FindBin::Bin/../../../lib/Parrot/OpsFile.pm", "lib/Parrot/OpsFile.pm lo
ok( -f "$FindBin::Bin/../../../src/ops/core.ops", "src/ops/core.ops located" );
ok( -f "$FindBin::Bin/../../../src/ops/ops.num", "src/ops/ops.num located" );
ok( -f "$FindBin::Bin/../../../src/ops/ops.skip", "src/ops/ops.skip located" );
-ok(
- !-e "$FindBin::Bin/../../../lib/Parrot/OpLib/core.pm",
- "lib/Parrot/OpLib/core.pm correctly does not yet exist"
-);
-ok(
- !-e "$FindBin::Bin/../../../include/parrot/oplib/ops.h",
- "include/parrot/oplib/ops.h correctly does not yet exist"
-);
-
-my $message = <<END_OF_MESSAGE;
-
-
-The files in this directory test the publicly callable methods and
-subroutines of Parrot::Ops2pm and Parrot::Ops2pm::Auxiliary.
-By doing so, they test the functionality of the ops2pm.pl utility.
-
-Since ops2pm.pl is invoked only once during 'make' -- very near the
-beginning of the build process -- and since its purpose is to create files
-used later in that process, tests of its functionality can give meaningful
-results only if you run them when your file system under the top-level
-Parrot directory is in a 'pre-make' state, i.e., *before* you have run 'perl
-Configure.pl' but *after* you have run 'make'. These tests should pass
-if run at that point in the build process, but if you have already
-executed 'make', some of these tests will necessarily fail. Hence, they
-should *not* be included in the set of tests run by 'make test'.
-
-In short, these are tests of Parrot::Ops2pm and
-Parrot::Ops2pm::Auxiliary but are *not* tests of Parrot itself.
-
-END_OF_MESSAGE
-pass($message);
+
pass("Completed all tests in $0");
################### DOCUMENTATION ###################
View
128 t/tools/pmc2cutils/00-qualify.t
@@ -1,128 +0,0 @@
-#! perl
-# Copyright (C) 2006-2007, Parrot Foundation.
-# $Id$
-# 00-qualify.t
-
-use strict;
-use warnings;
-use Test::More tests => 10;
-use FindBin;
-use lib ( "$FindBin::Bin/../..", "$FindBin::Bin/../../lib", "$FindBin::Bin/../../../lib", );
-use_ok('Parrot::Pmc2c::Pmc2cMain');
-
-ok( -f "$FindBin::Bin/../../../Makefile", "Makefile located" );
-ok( -f "$FindBin::Bin/../../../myconfig", "myconfig located" );
-ok( -f "$FindBin::Bin/../../../lib/Parrot/PMC.pm", "lib/Parrot/PMC.pm located" );
-
-my ( @files, %sfx );
-@files = glob("$FindBin::Bin/../../../src/pmc/*");
-for my $f (@files) {
- if ( $f =~ m/.*\.(.*)$/ ) {
- my $s = $1;
- $sfx{$s}++;
- }
-}
-
-# In src/pmc, we should have only .pmc files (81+ of them), 1 .num file,
-# and >= .h files none of whose names may begin 'pmc_' (lest they be left over
-# from a previous build).
-my $suffixqty = scalar( keys %sfx );
-ok( ( ( 2 <= $suffixqty ) and ( $suffixqty <= 3 ) ), "only 2 or 3 file suffixes in src/pmc" );
-
-ok( $sfx{'num'}, ".num suffix correctly located" );
-ok( $sfx{'pmc'}, ".pmc suffix correctly located" );
-if ( $sfx{'h'} ) {
- my $pmc_leftovers = 0;
- foreach my $f (@files) {
- $pmc_leftovers++ if $f =~ m/^pmc_.*\.h$/;
- }
- is( $pmc_leftovers, 0, "No left-over 'pmc_*.h' files in src/pmc/" );
-}
-else {
- pass("No .h files in src/pmc/");
-}
-
-my $message = <<END_OF_MESSAGE;
-
-
-The files in this directory test the publicly callable methods of
-Parrot::Pmc2c::Pmc2cMain. By doing so, they test the functionality
-of the pmc2c.pl utility.
-
-Since pmc2c.pl is invoked many times during 'make', tests of its
-functionality can give meaningful results only if you run them
-when your file system under the top-level Parrot directory is in
-a 'pre-make' state, i.e., you have run 'perl Configure.pl' but
-have *not* yet run 'make'. These tests should pass if run at
-that point in the build process, but some will necessarily fail
-if 'make' has already been executed. Hence, they should not be
-included in the set of tests run by 'make test'.
-
-In short, these are tests of Parrot::Pmc2c::Pmc2cMain but are *not*
-tests of Parrot itself.
-
-END_OF_MESSAGE
-pass($message);
-pass("Completed all tests in $0");
-
-################### DOCUMENTATION ###################
-
-=head1 NAME
-
-00-qualify.t - Is this the right point to test Parrot build tools?
-
-=head1 SYNOPSIS
-
- % prove t/tools/pmc2cutils/00-qualify.t
-
-=head1 DESCRIPTION
-
-The files in this directory test the publicly callable methods of
-F<lib/Parrot/Pmc2c/Pmc2cMain.pm>. By doing so, they test the functionality
-of the F<pmc2c.pl> utility. That functionality has largely been extracted
-into the methods of F<Pmc2cMain.pm>.
-
-Since F<pmc2c.pl> is invoked during C<make>, tests of its functionality can
-give meaningful results only if they take into consideration the status of the
-file structure at particular points in the build process:
-
-=over 4
-
-=item *
-
-after F<Configure.pl> has run but before F<make> has run;
-
-=item *
-
-at various points while F<make> is running; or
-
-=item *
-
-once F<make> has completed.
-
-=back
-
-The tests in F<00-qualify.t> attempt to confirm that you are at the first of
-these three stages. It tests for the presence or absence of certain files to
-form a judgment as to whether F<Configure.pl> has been run (it should have
-been) and whether F<make> has been run (it should I<not> have been). The
-tests make certain assumptions about what files should be present or not --
-assumptions which may be invalid if the Parrot build process changes in the
-future.
-
-=head1 AUTHOR
-
-James E Keenan
-
-=head1 SEE ALSO
-
-Parrot::Pmc2c, F<pmc2c.pl>.
-
-=cut
-
-# Local Variables:
-# mode: cperl
-# cperl-indent-level: 4
-# fill-column: 100
-# End:
-# vim: expandtab shiftwidth=4:
View
15 t/tools/pmc2cutils/04-dump_pmc.t
@@ -332,12 +332,15 @@ my @include_orig = ( qq{$main::topdir}, qq{$main::topdir/src/pmc}, );
$dump_file = $self->dump_vtable("$main::topdir/src/vtable.tbl");
ok( -e $dump_file, "dump_vtable created vtable.dump" );
- eval { $self->dump_pmc(); };
- like(
- $@,
- qr/^cannot find file 'scalar\.dump' in path/,
- "ERROR WAS '$@', path is $temppmcdir"
- );
+ TODO: {
+ local $TODO = q{needs reworking to work after 'make'};
+ eval { $self->dump_pmc(); };
+ like(
+ $@,
+ qr/^cannot find file 'scalar\.dump' in path/,
+ "ERROR WAS '$@', path is $temppmcdir"
+ );
+ }
ok( chdir $cwd, "changed back to original directory" );
}

0 comments on commit 272ac52

Please sign in to comment.
Something went wrong with that request. Please try again.