Browse Source

t5541-http-push.sh: add tests for non-fast-forward pushes

Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Tay Ray Chuan 15 years ago committed by Junio C Hamano
parent
commit
1945237486
  1. 23
      t/t5541-http-push.sh

23
t/t5541-http-push.sh

@ -88,5 +88,28 @@ test_expect_success 'used receive-pack service' ' @@ -88,5 +88,28 @@ test_expect_success 'used receive-pack service' '
test_cmp exp act
'

test_expect_success 'non-fast-forward push fails' '
cd "$ROOT_PATH"/test_repo_clone &&
git checkout master &&
echo "changed" > path2 &&
git commit -a -m path2 --amend &&

HEAD=$(git rev-parse --verify HEAD) &&
!(git push -v origin >output 2>&1) &&
(cd "$HTTPD_DOCUMENT_ROOT_PATH"/test_repo.git &&
test $HEAD != $(git rev-parse --verify HEAD))
'

test_expect_failure 'non-fast-forward push show ref status' '
grep "^ ! \[rejected\][ ]*master -> master (non-fast-forward)$" output
'

test_expect_failure 'non-fast-forward push shows help message' '
grep \
"To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes before pushing again. See the '"'non-fast-forward'"'
section of '"'git push --help'"' for details." output
'

stop_httpd
test_done

Loading…
Cancel
Save