3 test_description='server pre-receive trac ticket enforcer via shim'
7 test_expect_success 'setup' '
8 echo This is a test. >a &&
11 git clone ./. server &&
12 rm -fr server/.git/hooks &&
13 git remote add origin ./server &&
14 git config --add branch.master.remote origin &&
15 git config --add branch.master.merge refs/heads/master
19 install_server_hook 'noop' 'noop'
20 install_server_hook 'pre-receive-trac' 'pre-receive-trac'
21 install_server_hook 'pre-receive-trac-then-noop' 'pre-receive'
23 test_expect_success 'reject with bad message via shim' '
25 git commit -a -m "$test_name" &&
26 head=$(git rev-parse HEAD) &&
27 ! git push >push.out 2>push.err &&
28 cat push.err | grep "Commit $head does not reference a ticket"
31 # the last test has a dirty commit message, so ammend it with a good message
32 test_expect_success 'accept with re via shim' '
34 git commit --amend -m "$test_name re #3222" &&