summaryrefslogtreecommitdiff
path: root/t/t5501-old-fetch-and-upload.sh
blob: 596c88b1c2f28e91a247309d383c56f3d670fe92 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/sh
#
# Copyright (c) 2005 Johannes Schindelin
#

# Test that the current fetch-pack/upload-pack plays nicely with
# an old counterpart

cd $(dirname $0) || exit 1
: ${SHELL_PATH=/bin/sh}

tmp=`pwd`/.tmp$$

retval=0

if [ -z "$1" ]; then
	list="fetch upload"
else
	list="$@"
fi

for i in $list; do
	case "$i" in
	fetch) pgm="old-git-fetch-pack"; replace="$pgm";;
	upload) pgm="old-git-upload-pack"; replace="git-fetch-pack --exec=$pgm";;
	both) pgm="old-git-upload-pack"; replace="old-git-fetch-pack --exec=$pgm";;
	esac

	if where=`LANG=C LC_ALL=C which "$pgm" 2>/dev/null` &&
	   case "$where" in
	   "no "*) (exit 1) ;;
	   esac
	then
		echo "Testing with $pgm"
		sed -e "s/git-fetch-pack/$replace/g" \
			-e "s/# old fails/warn/" < t5500-fetch-pack.sh > $tmp

		"$SHELL_PATH" "$tmp" || retval=$?
		rm -f "$tmp"

		test $retval != 0 && exit $retval
	else
		echo "Skipping test for $i, since I cannot find $pgm"
	fi
done

exit 0