1#!/bin/sh
2#
3# Copyright (c) 2008 Lea Wiemann
4#
5
6test_description='perl interface (Git.pm)'
7. ./test-lib.sh
8
9if ! test_have_prereq PERL; then
10 skip_all='skipping perl interface tests, perl not available'
11 test_done
12fi
13
14"$PERL_PATH" -MTest::More -e 0 2>/dev/null || {
15 skip_all="Perl Test::More unavailable, skipping test"
16 test_done
17}
18
19# set up test repository
20
21test_expect_success \
22 'set up test repository' \
23 'echo "test file 1" > file1 &&
24 echo "test file 2" > file2 &&
25 mkdir directory1 &&
26 echo "in directory1" >> directory1/file &&
27 mkdir directory2 &&
28 echo "in directory2" >> directory2/file &&
29 git add . &&
30 git commit -m "first commit" &&
31
32 echo "new file in subdir 2" > directory2/file2 &&
33 git add . &&
34 git commit -m "commit in directory2" &&
35
36 echo "changed file 1" > file1 &&
37 git commit -a -m "second commit" &&
38
39 git config --add color.test.slot1 green &&
40 git config --add test.string value &&
41 git config --add test.dupstring value1 &&
42 git config --add test.dupstring value2 &&
43 git config --add test.booltrue true &&
44 git config --add test.boolfalse no &&
45 git config --add test.boolother other &&
46 git config --add test.int 2k &&
47 git config --add test.path "~/foo" &&
48 git config --add test.pathexpanded "$HOME/foo" &&
49 git config --add test.pathmulti foo &&
50 git config --add test.pathmulti bar
51 '
52
53# The external test will outputs its own plan
54test_external_has_tap=1
55
56test_external_without_stderr \
57 'Perl API' \
58 "$PERL_PATH" "$TEST_DIRECTORY"/t9700/test.pl
59
60test_done