# HG changeset patch # User Dirkjan Ochtman # Date 1203761914 -3600 # Node ID f53b9a383476c04a37bcc0d25922b4bb80f4f574 # Parent f857eac30cd54fc2249c8044388718687df7bed5 tests: easier hg serve error diagnosis diff -r f857eac30cd5 -r f53b9a383476 tests/test-push-http --- a/tests/test-push-http Thu Feb 21 20:56:06 2008 +0100 +++ b/tests/test-push-http Sat Feb 23 11:18:34 2008 +0100 @@ -13,53 +13,44 @@ echo a >> a hg ci -mb -d '0 0' +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,:[0-9][0-9]*/,/,' + kill `cat hg.pid` + echo % serve errors + cat errors.log +} + cd ../test echo % expect ssl error -hg serve -p $HGPORT -d --pid-file=hg.pid -cat hg.pid >> $DAEMON_PIDS -hg --cwd ../test2 push http://localhost:$HGPORT/ | sed -e 's,:[0-9][0-9]*/,/,' -kill `cat hg.pid` +req echo % expect authorization error echo '[web]' > .hg/hgrc echo 'push_ssl = false' >> .hg/hgrc -hg serve -p $HGPORT -d --pid-file=hg.pid -cat hg.pid >> $DAEMON_PIDS -hg --cwd ../test2 push http://localhost:$HGPORT/ | sed -e 's,:[0-9][0-9]*/,/,' -kill `cat hg.pid` +req echo % expect authorization error: must have authorized user echo 'allow_push = unperson' >> .hg/hgrc -hg serve -p $HGPORT -d --pid-file=hg.pid -cat hg.pid >> $DAEMON_PIDS -hg --cwd ../test2 push http://localhost:$HGPORT/ | sed -e 's,:[0-9][0-9]*/,/,' -kill `cat hg.pid` +req echo % expect success echo 'allow_push = *' >> .hg/hgrc echo '[hooks]' >> .hg/hgrc echo 'changegroup = python ../printenv.py changegroup 0 ../urls' >> .hg/hgrc -hg serve -p $HGPORT -d --pid-file=hg.pid -cat hg.pid >> $DAEMON_PIDS -hg --cwd ../test2 push http://localhost:$HGPORT/ | sed -e 's,:[0-9][0-9]*/,/,' -kill `cat hg.pid` -hg rollback +req cat ../urls +hg rollback echo % expect authorization error: all users denied echo '[web]' > .hg/hgrc echo 'push_ssl = false' >> .hg/hgrc echo 'deny_push = *' >> .hg/hgrc -hg serve -p $HGPORT -d --pid-file=hg.pid -cat hg.pid >> $DAEMON_PIDS -hg --cwd ../test2 push http://localhost:$HGPORT/ | sed -e 's,:[0-9][0-9]*/,/,' -kill `cat hg.pid` +req echo % expect authorization error: some users denied, users must be authenticated echo 'deny_push = unperson' >> .hg/hgrc -hg serve -p $HGPORT -d --pid-file=hg.pid -cat hg.pid >> $DAEMON_PIDS -hg --cwd ../test2 push http://localhost:$HGPORT/ | sed -e 's,:[0-9][0-9]*/,/,' -kill `cat hg.pid` +req diff -r f857eac30cd5 -r f53b9a383476 tests/test-push-http.out --- a/tests/test-push-http.out Thu Feb 21 20:56:06 2008 +0100 +++ b/tests/test-push-http.out Sat Feb 23 11:18:34 2008 +0100 @@ -4,14 +4,17 @@ pushing to http://localhost/ searching for changes ssl required +% serve errors % expect authorization error pushing to http://localhost/ searching for changes push not authorized +% serve errors % expect authorization error: must have authorized user pushing to http://localhost/ searching for changes push not authorized +% serve errors % expect success pushing to http://localhost/ searching for changes @@ -19,13 +22,16 @@ adding manifests adding file changes added 1 changesets with 1 changes to 1 files +% serve errors +changegroup hook: HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_URL=remote:http rolling back last transaction -changegroup hook: HG_NODE=ba677d0156c1196c1a699fa53f390dcfc3ce3872 HG_SOURCE=serve HG_URL=remote:http % expect authorization error: all users denied pushing to http://localhost/ searching for changes push not authorized +% serve errors % expect authorization error: some users denied, users must be authenticated pushing to http://localhost/ searching for changes push not authorized +% serve errors