4 test_description='server pre-receive ticket enforcer'
8 test_expect_success 'setup' '
9 echo This is a test. >a &&
12 git clone ./. server &&
13 rm -fr server/.git/hooks &&
14 git remote add origin ./server &&
15 git config --add branch.master.remote origin &&
16 git config --add branch.master.merge refs/heads/master
19 # setup the pre-receive hook
20 install_server_hook 'pre-receive-ticket' 'pre-receive'
22 test_expect_success 'reject with bad message' '
24 git commit -a -m "foo" &&
25 git push >push.out 2>push.err
26 head=$(git rev-parse HEAD)
27 cat push.err | grep "Commit $head does not reference a ticket"
30 # the last test has a dirty commit message, so ammend it with a good message
31 test_expect_success 'accept with re' '
33 git commit --amend -m "foo re #3222" &&
37 test_expect_success 'accept with re on second line' '
39 echo "first subject line" >msg
40 echo "second line re #322" >>msg
41 git commit -a -F msg &&