git/t/t9700-perl-git.sh
Ævar Arnfjörð Bjarmason fadb5156e4 tests: Skip tests in a way that makes sense under TAP
SKIP messages are now part of the TAP plan. A TAP harness now knows
why a particular test was skipped and can report that information. The
non-TAP harness built into Git's test-lib did nothing special with
these messages, and is unaffected by these changes.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-06-25 10:08:20 -07:00

57 lines
1.4 KiB
Bash
Executable file

#!/bin/sh
#
# Copyright (c) 2008 Lea Wiemann
#
test_description='perl interface (Git.pm)'
. ./test-lib.sh
if ! test_have_prereq PERL; then
skip_all='skipping perl interface tests, perl not available'
test_done
fi
"$PERL_PATH" -MTest::More -e 0 2>/dev/null || {
skip_all="Perl Test::More unavailable, skipping test"
test_done
}
# set up test repository
test_expect_success \
'set up test repository' \
'echo "test file 1" > file1 &&
echo "test file 2" > file2 &&
mkdir directory1 &&
echo "in directory1" >> directory1/file &&
mkdir directory2 &&
echo "in directory2" >> directory2/file &&
git add . &&
git commit -m "first commit" &&
echo "new file in subdir 2" > directory2/file2 &&
git add . &&
git commit -m "commit in directory2" &&
echo "changed file 1" > file1 &&
git commit -a -m "second commit" &&
git config --add color.test.slot1 green &&
git config --add test.string value &&
git config --add test.dupstring value1 &&
git config --add test.dupstring value2 &&
git config --add test.booltrue true &&
git config --add test.boolfalse no &&
git config --add test.boolother other &&
git config --add test.int 2k
'
# The external test will outputs its own plan
test_external_has_tap=1
test_external_without_stderr \
'Perl API' \
"$PERL_PATH" "$TEST_DIRECTORY"/t9700/test.pl
test_done