Remove debug output.
[git-central.git] / tests / test-lib.sh
index 2c5413d..01d0cee 100644 (file)
@@ -453,9 +453,58 @@ install_client_hook () {
     chmod +x "$TRASH_HOOKS/$2"
 }
 
+install_post_checkout_hook () {
+       mkdir -p ".git/hooks"
+       hook=".git/hooks/post-checkout"
+
+       echo "#!/bin/sh" >$hook
+       for ((i=1;i<=$#;i+=1)); do
+               eval script_name="$"$i
+               echo "../../client/$script_name \$1 \$2 \$3 &&" >>$hook
+       done
+       echo "echo >/dev/null" >>$hook
+
+       chmod +x $hook
+}
+
 install_server_hook () {
-    mkdir -p "server/.git/hooks"
-    cp "../../server/$1" "server/.git/hooks/$2"
-    chmod +x "server/.git/hooks/$2"
+       mkdir -p "server/.git/hooks"
+       cp "../../server/$1" "server/.git/hooks/$2"
+       chmod +x "server/.git/hooks/$2"
+}
+
+install_update_hook () {
+       mkdir -p "server/.git/hooks"
+       hook="server/.git/hooks/update"
+
+       echo "#!/bin/sh" >$hook
+       for ((i=1;i<=$#;i+=1)); do
+               eval script_name="$"$i
+               echo "../../../../server/$script_name \$1 \$2 \$3 &&" >>$hook
+       done
+       echo "echo >/dev/null" >>$hook
+
+       chmod +x $hook
+}
+
+install_post_receive_hook () {
+       mkdir -p "server/.git/hooks"
+       hook="server/.git/hooks/post-receive"
+
+       cat >$hook <<-'EOF'
+               #!/bin/sh
+               nl=$'\n'
+               input=""
+               while read newref oldref refname ; do
+                       input="$input$newref $oldref $refname$nl"
+               done
+       EOF
+
+       for ((i=1;i<=$#;i+=1)); do
+               eval script_name="$"$i
+               echo "echo -n \"\$input\" | ../../../../server/$script_name" >>$hook
+       done
+
+       chmod +x $hook
 }