Mercurial > hg-stable
changeset 12483:fecd4966f8d4
tests: unify test-push-http
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 26 Sep 2010 13:44:49 -0500 |
parents | 2f8740c639e4 |
children | 59012130b43e |
files | tests/test-push-http tests/test-push-http.out tests/test-push-http.t |
diffstat | 3 files changed, 87 insertions(+), 92 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-push-http Sun Sep 26 13:44:49 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,54 +0,0 @@ -#!/bin/sh - -cp "$TESTDIR"/printenv.py . - -hg init test -cd test -echo a > a -hg ci -Ama - -cd .. -hg clone test test2 -cd test2 -echo a >> a -hg ci -mb - -req() { - hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log - cat hg.pid >> $DAEMON_PIDS - hg --cwd ../test2 push http://localhost:$HGPORT/ | sed -e "s,:$HGPORT/,:\$HGPORT/," - kill `cat hg.pid` - echo % serve errors - cat errors.log -} - -cd ../test - -echo % expect ssl error -req - -echo % expect authorization error -echo '[web]' > .hg/hgrc -echo 'push_ssl = false' >> .hg/hgrc -req - -echo % expect authorization error: must have authorized user -echo 'allow_push = unperson' >> .hg/hgrc -req - -echo % expect success -echo 'allow_push = *' >> .hg/hgrc -echo '[hooks]' >> .hg/hgrc -echo 'changegroup = python ../printenv.py changegroup 0' >> .hg/hgrc -req - -hg rollback -echo % expect authorization error: all users denied -echo '[web]' > .hg/hgrc -echo 'push_ssl = false' >> .hg/hgrc -echo 'deny_push = *' >> .hg/hgrc -req - -echo % expect authorization error: some users denied, users must be authenticated -echo 'deny_push = unperson' >> .hg/hgrc -req
--- a/tests/test-push-http.out Sun Sep 26 13:44:49 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -adding a -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -% expect ssl error -pushing to http://localhost:$HGPORT/ -searching for changes -remote: ssl required -% serve errors -% expect authorization error -abort: authorization failed -pushing to http://localhost:$HGPORT/ -searching for changes -% serve errors -% expect authorization error: must have authorized user -abort: authorization failed -pushing to http://localhost:$HGPORT/ -searching for changes -% serve errors -% expect success -pushing to http://localhost:$HGPORT/ -searching for changes -remote: adding changesets -remote: adding manifests -remote: adding file changes -remote: added 1 changesets with 1 changes to 1 files -remote: changegroup hook: HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_URL=remote:http -% serve errors -rolling back to revision 0 (undo serve) -% expect authorization error: all users denied -abort: authorization failed -pushing to http://localhost:$HGPORT/ -searching for changes -% serve errors -% expect authorization error: some users denied, users must be authenticated -abort: authorization failed -pushing to http://localhost:$HGPORT/ -searching for changes -% serve errors
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-push-http.t Sun Sep 26 13:44:49 2010 -0500 @@ -0,0 +1,87 @@ + + $ cp "$TESTDIR"/printenv.py . + $ hg init test + $ cd test + $ echo a > a + $ hg ci -Ama + adding a + $ cd .. + $ hg clone test test2 + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cd test2 + $ echo a >> a + $ hg ci -mb + $ req() { + > hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log + > cat hg.pid >> $DAEMON_PIDS + > hg --cwd ../test2 push http://localhost:$HGPORT/ + > kill `cat hg.pid` + > echo % serve errors + > cat errors.log + > } + $ cd ../test + +expect ssl error + + $ req + pushing to http://localhost:*/ (glob) + searching for changes + remote: ssl required + % serve errors + +expect authorization error + + $ echo '[web]' > .hg/hgrc + $ echo 'push_ssl = false' >> .hg/hgrc + $ req + pushing to http://localhost:*/ (glob) + searching for changes + abort: authorization failed + % serve errors + +expect authorization error: must have authorized user + + $ echo 'allow_push = unperson' >> .hg/hgrc + $ req + pushing to http://localhost:*/ (glob) + searching for changes + abort: authorization failed + % serve errors + +expect success + + $ echo 'allow_push = *' >> .hg/hgrc + $ echo '[hooks]' >> .hg/hgrc + $ echo 'changegroup = python ../printenv.py changegroup 0' >> .hg/hgrc + $ req + pushing to http://localhost:*/ (glob) + searching for changes + remote: adding changesets + remote: adding manifests + remote: adding file changes + remote: added 1 changesets with 1 changes to 1 files + remote: changegroup hook: HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_URL=remote:http + % serve errors + $ hg rollback + rolling back to revision 0 (undo serve) + +expect authorization error: all users denied + + $ echo '[web]' > .hg/hgrc + $ echo 'push_ssl = false' >> .hg/hgrc + $ echo 'deny_push = *' >> .hg/hgrc + $ req + pushing to http://localhost:*/ (glob) + searching for changes + abort: authorization failed + % serve errors + +expect authorization error: some users denied, users must be authenticated + + $ echo 'deny_push = unperson' >> .hg/hgrc + $ req + pushing to http://localhost:*/ (glob) + searching for changes + abort: authorization failed + % serve errors