aboutsummaryrefslogtreecommitdiffstats
path: root/tests/blogc-git-receiver/check_shell.sh.in
diff options
context:
space:
mode:
authorRafael G. Martins <rafael@rafaelmartins.eng.br>2018-06-12 18:45:32 +0200
committerRafael G. Martins <rafael@rafaelmartins.eng.br>2018-06-12 16:32:19 +0200
commit76448e806720d99a57f492fbaeff44bf3250b914 (patch)
treecd24992275917a00de7a0d31081ee00e1f3dcecc /tests/blogc-git-receiver/check_shell.sh.in
parent4a50ba03e31295a4c37ec2576fe113751a7f32ec (diff)
downloadblogc-76448e806720d99a57f492fbaeff44bf3250b914.tar.gz
blogc-76448e806720d99a57f492fbaeff44bf3250b914.tar.bz2
blogc-76448e806720d99a57f492fbaeff44bf3250b914.zip
git-receiver: git shell should reinstall hooks if symlinks are broken
Diffstat (limited to 'tests/blogc-git-receiver/check_shell.sh.in')
-rwxr-xr-xtests/blogc-git-receiver/check_shell.sh.in15
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/blogc-git-receiver/check_shell.sh.in b/tests/blogc-git-receiver/check_shell.sh.in
index 8743293..f70fc50 100755
--- a/tests/blogc-git-receiver/check_shell.sh.in
+++ b/tests/blogc-git-receiver/check_shell.sh.in
@@ -36,6 +36,21 @@ fi
[[ -h "${TEMP}/repos/lol.git/hooks/post-receive" ]]
[[ "$(readlink "${TEMP}/repos/lol.git/hooks/post-receive")" == "${SELF}" ]]
+rm "${TEMP}/repos/lol.git/hooks/pre-receive"
+ln -s /lolheheasdxd "${TEMP}/repos/lol.git/hooks/pre-receive"
+
+echo 0000 | call_bgr -c "git-receive-pack 'lol.git'" 2>&1 > "${TEMP}/output.txt"
+if [[ -n "${VALGRIND}" ]]; then
+ grep "git-shell -c \"git-receive-pack '.*repos/lol.git'\"" "${TEMP}/output.txt" &> /dev/null
+else
+ grep "agent=" "${TEMP}/output.txt" &> /dev/null
+fi
+[[ -d "${TEMP}/repos/lol.git" ]]
+[[ -h "${TEMP}/repos/lol.git/hooks/pre-receive" ]]
+[[ "$(readlink "${TEMP}/repos/lol.git/hooks/pre-receive")" == "${SELF}" ]]
+[[ -h "${TEMP}/repos/lol.git/hooks/post-receive" ]]
+[[ "$(readlink "${TEMP}/repos/lol.git/hooks/post-receive")" == "${SELF}" ]]
+
cat > "${TEMP}/tmp.txt" <<EOF
blob
mark :1