[svn:parrot] r37155 - trunk/t/configure
jkeenan at svn.parrot.org
jkeenan at svn.parrot.org
Sat Mar 7 04:23:02 UTC 2009
Author: jkeenan
Date: Sat Mar 7 04:23:01 2009
New Revision: 37155
URL: https://trac.parrot.org/parrot/changeset/37155
Log:
Add tests for Parrot::BuildUtil::get_bc_version().
Modified:
trunk/t/configure/023-version.t
Modified: trunk/t/configure/023-version.t
==============================================================================
--- trunk/t/configure/023-version.t Sat Mar 7 04:12:31 2009 (r37154)
+++ trunk/t/configure/023-version.t Sat Mar 7 04:23:01 2009 (r37155)
@@ -6,7 +6,7 @@
use strict;
use warnings;
-use Test::More tests => 7;
+use Test::More tests => 14;
use Carp;
use Cwd;
use File::Copy;
@@ -36,8 +36,42 @@
ok( chdir $cwd, "Able to change back to directory after testing" );
}
+{
+ my $tdir = tempdir( CLEANUP => 1 );
+ ok( chdir $tdir, "Changed to temporary directory for testing" );
+ my $rv = set_bc_version(q{3.07});
+ my ($bc_major, $bc_minor) = Parrot::BuildUtil::get_bc_version();
+ is( $bc_major, 3, "Got expected bytecode major version" );
+ is( $bc_minor, 7, "Got expected bytecode minor version" );
+
+ ok( chdir $cwd, "Able to change back to directory after testing" );
+}
+
+{
+ my $tdir = tempdir( CLEANUP => 1 );
+ ok( chdir $tdir, "Changed to temporary directory for testing" );
+ my $rv = set_bc_version(q{3.tomboy});
+ eval {
+ my ($bc_major, $bc_minor) = Parrot::BuildUtil::get_bc_version();
+ };
+ like( $@, qr/No bytecode version found/,
+ "Got expected error message on failure to find bytecode version" );
+
+ ok( chdir $cwd, "Able to change back to directory after testing" );
+}
+
pass("Completed all tests in $0");
+sub set_bc_version {
+ my $version_str = shift;
+ my $compat_file = 'PBC_COMPAT';
+ my ( $bc_major, $bc_minor );
+ open my $OUT, '>', $compat_file or die "Can't write $compat_file";
+ print $OUT "$version_str\n";
+ close $OUT;
+ return 1;
+}
+
################### DOCUMENTATION ###################
=head1 NAME
More information about the parrot-commits
mailing list