Code

t/t9700/test.pl: don't access private object members, use public access methods
authorBrandon Casey <drafnel@gmail.com>
Mon, 28 Jun 2010 22:51:02 +0000 (17:51 -0500)
committerJunio C Hamano <gitster@pobox.com>
Tue, 29 Jun 2010 16:32:56 +0000 (09:32 -0700)
This test is accessing private object members of the Test::More and
Test::Builder objects.  Older versions of Test::More did not implement
these variables using a hash.

My system complains as follows:

   Can't coerce array into hash at <snip>/t/t9700/test.pl line 13.
   BEGIN failed--compilation aborted at <snip>/t/t9700/test.pl line 15.

There are public access methods available for retrieving and setting these
variables, so let's use them instead.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Acked-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t9700/test.pl

index f2820d2f267c1604f211563999ac429f1eeac572..671f38db2bb78c076b281602ca5b87f10fdf4d00 100755 (executable)
@@ -10,8 +10,8 @@ use Test::More qw(no_plan);
 BEGIN {
        # t9700-perl-git.sh kicks off our testing, so we have to go from
        # there.
-       Test::More->builder->{Curr_Test} = 1;
-       Test::More->builder->{No_Ending} = 1;
+       Test::More->builder->current_test(1);
+       Test::More->builder->no_ending(1);
 }
 
 use Cwd;
@@ -113,7 +113,7 @@ like($last_commit, qr/^[0-9a-fA-F]{40}$/, 'rev-parse returned hash');
 my $dir_commit = $r2->command_oneline('log', '-n1', '--pretty=format:%H', '.');
 isnt($last_commit, $dir_commit, 'log . does not show last commit');
 
-printf "1..%d\n", Test::More->builder->{Curr_Test};
+printf "1..%d\n", Test::More->builder->current_test;
 
 my $is_passing = eval { Test::More->is_passing };
 exit($is_passing ? 0 : 1) unless $@ =~ /Can't locate object method/;