svn >/dev/null 2>&1
 if test $? -ne 1
 then
-    skip_all='skipping git svn tests, svn not found'
-    test_done
+       skip_all='skipping git svn tests, svn not found'
+       test_done
 fi
 
 svnrepo=$PWD/svnrepo
 }
 
 require_svnserve () {
-    if test -z "$SVNSERVE_PORT"
-    then
-       skip_all='skipping svnserve test. (set $SVNSERVE_PORT to enable)'
-        test_done
-    fi
+       test_tristate GIT_TEST_SVNSERVE
+       if ! test "$GIT_TEST_SVNSERVE" = true
+       then
+               skip_all='skipping svnserve test. (set $GIT_TEST_SVNSERVE to enable)'
+               test_done
+       fi
 }
 
 start_svnserve () {
-    svnserve --listen-port $SVNSERVE_PORT \
-             --root "$rawsvnrepo" \
-             --listen-once \
-             --listen-host 127.0.0.1 &
+       SVNSERVE_PORT=${SVNSERVE_PORT-${this_test#t}}
+       svnserve --listen-port $SVNSERVE_PORT \
+                --root "$rawsvnrepo" \
+                --listen-once \
+                --listen-host 127.0.0.1 &
 }
 
 prepare_a_utf8_locale () {