]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t1517: skip svn tests if svn is not installed
authorbrian m. carlson <sandals@crustytoothpaste.net>
Wed, 8 Jul 2026 00:15:54 +0000 (00:15 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 8 Jul 2026 00:48:56 +0000 (17:48 -0700)
The svn tests currently assume that git-svn's option parsing will always
fail the tests because it exits 0 on --help, not 129.  However, in a
future commit, we'll expect it to exit 0 and the tests will then need to
be updated to succeed in some cases and fail in others.

We therefore need to have t1517 determine whether the Subversion Perl
modules are present, since if they are not, git-svn will die on start
and then it needs to continue to expect failure.  Add a stripped down
version of the tests in t/lib-git-svn.sh as a prerequisite we can use
here for our svn tests.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t1517-outside-repo.sh

index c557f2f55c217591b54b83cba307c97c431b1fca..6421bdb3c3a4da306f1c386f179a66ba52f76f66 100755 (executable)
@@ -4,6 +4,13 @@ test_description='check random commands outside repo'
 
 . ./test-lib.sh
 
+test_lazy_prereq SVN '
+       test_have_prereq PERL && test -z "$NO_SVN_TESTS" && perl -w -e "
+               use SVN::Core;
+               use SVN::Repos;
+       "
+'
+
 test_expect_success 'set up a non-repo directory and test file' '
        GIT_CEILING_DIRECTORIES=$(pwd) &&
        export GIT_CEILING_DIRECTORIES &&
@@ -138,6 +145,8 @@ do
        case "$cmd" in
        instaweb)
                prereq=PERL ;;
+       svn)
+               prereq=SVN ;;
        *)
                prereq= ;;
        esac