Merge branch 'jk/format-patch-multiline-header'
[gitweb.git] / t / t9700 / test.pl
index e5d4b03fa44293066e49dd0c2895077475812e40..13ba96e21a9295805aed40c89ecd5178db6bfae4 100755 (executable)
@@ -1,7 +1,7 @@
 #!/usr/bin/perl
 use lib (split(/:/, $ENV{GITPERLLIB}));
 
-use 5.006002;
+use 5.008;
 use warnings;
 use strict;
 
@@ -10,8 +10,8 @@
 BEGIN {
        # t9700-perl-git.sh kicks off our testing, so we have to go from
        # there.
-       $Test::Builder::Test->{Curr_Test} = 1;
-       $Test::Builder::Test->{No_Ending} = 1;
+       Test::More->builder->current_test(1);
+       Test::More->builder->no_ending(1);
 }
 
 use Cwd;
@@ -113,6 +113,17 @@ BEGIN
 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::Builder::Test->{Curr_Test};
+# commands outside working tree
+chdir($abs_repo_dir . '/..');
+my $r3 = Git->repository(Directory => $abs_repo_dir);
+my $tmpfile3 = "$abs_repo_dir/file3.tmp";
+open TEMPFILE3, "+>$tmpfile3" or die "Can't open $tmpfile3: $!";
+is($r3->cat_blob($file1hash, \*TEMPFILE3), 15, "cat_blob(outside): size");
+close TEMPFILE3;
+unlink $tmpfile3;
+chdir($abs_repo_dir);
 
-exit($Test::Builder::Test->{Is_Passing} ? 0 : 1);
+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/;