summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-12-11 04:55:32 (GMT)
committerJunio C Hamano <junkio@cox.net>2005-12-11 04:55:32 (GMT)
commiteea420693befc2f876079a8a4585ea8ebf07c047 (patch)
treefa577fa4487251d2cc2fb0d0e2fddbfa4e9e7c02
parent73ab46d6d03fc38e7b57f7fb731da432d4433268 (diff)
downloadgit-eea420693befc2f876079a8a4585ea8ebf07c047.zip
git-eea420693befc2f876079a8a4585ea8ebf07c047.tar.gz
git-eea420693befc2f876079a8a4585ea8ebf07c047.tar.bz2
t0000: catch trivial pilot errors.
People seem to be getting test failure from t6021 not becuase git is faulty but because they forgot to install "merge". Check this and other trivial pilot errors in the first test. Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-xt/t0000-basic.sh29
-rwxr-xr-xt/test-lib.sh9
2 files changed, 36 insertions, 2 deletions
diff --git a/t/t0000-basic.sh b/t/t0000-basic.sh
index 22bdaca..bc3e711 100755
--- a/t/t0000-basic.sh
+++ b/t/t0000-basic.sh
@@ -17,8 +17,37 @@ IDs. When object ID computation changes, like in the previous case of
swapping compression and hashing order, the person who is making the
modification *should* take notice and update the test vectors here.
'
+
+################################################################
+# It appears that people are getting bitten by not installing
+# 'merge' (usually part of RCS package in binary distributions)
+# or have too old python without subprocess. Check them and error
+# out before running any tests. Also catch the bogosity of trying
+# to run tests without building while we are at it.
+
+../git >/dev/null
+if test $? != 1
+then
+ echo >&2 'You do not seem to have built git yet.'
+ exit 1
+fi
+
+merge >/dev/null 2>/dev/null
+if test $? == 127
+then
+ echo >&2 'You do not seem to have "merge" installed.
+Please check INSTALL document.'
+ exit 1
+fi
+
. ./test-lib.sh
+"$PYTHON" -c 'import subprocess' || {
+ echo >&2 'Your python seem to lack "subprocess" module.
+Please check INSTALL document.'
+ exit 1
+}
+
################################################################
# init-db has been done in an empty repository.
# make sure it is empty.
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 447d9e2..2819bef 100755
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -179,11 +179,16 @@ export PATH GIT_EXEC_PATH
PYTHON=`sed -e '1{
s/^#!//
q
-}' ../git-merge-recursive` &&
+}' ../git-merge-recursive` || {
+ error "You haven't built things yet, have you?"
+}
"$PYTHON" -c 'import subprocess' 2>/dev/null || {
PYTHONPATH=$(pwd)/../compat
export PYTHONPATH
}
+test -d ../templates/blt || {
+ error "You haven't built things yet, have you?"
+}
# Test repository
test=trash
@@ -191,6 +196,6 @@ rm -fr "$test"
mkdir "$test"
cd "$test"
"$GIT_EXEC_PATH/git" init-db --template=../../templates/blt/ 2>/dev/null ||
-error "cannot run git init-db"
+error "cannot run git init-db -- have you built things yet?"
mv .git/hooks .git/hooks-disabled