tests/test-http-proxy
author Vadim Gelfer <vadim.gelfer@gmail.com>
Thu, 06 Jul 2006 11:45:34 -0700
changeset 2571 83cfd95eafb5
parent 2542 a20877c8a3e2
child 2612 ffb895f16925
permissions -rwxr-xr-x
tests: add timeouts, make run-tests.py clean up dead daemon processes test timeout feature is needed for test with python 2.5 beta. if test does not complete in time (30 seconds is default), it is killed. some times daemon process used in test can be alive after the test is killed by user or by timeout. tests now record daemon pids into $DAEMON_PIDS and run-tests.py kills all living daemons after every test. final little change is to add newline to end of pid file printed by "hg serve", else "cat hg.pid >> $DAEMON_FILES" gives garbage.

#!/bin/sh

hg init a
cd a
echo a > a
hg ci -Ama -d '1123456789 0'
hg serve -p 20059 -d --pid-file=hg.pid
cat hg.pid >> $DAEMON_PIDS

cd ..
("$TESTDIR/tinyproxy.py" 20060 localhost >proxy.log 2>&1 </dev/null &
echo $! > proxy.pid)
cat proxy.pid >> $DAEMON_PIDS
sleep 2

echo %% url for proxy
http_proxy=http://localhost:20060/ hg --config http_proxy.always=True clone http://localhost:20059/ b

echo %% host:port for proxy
http_proxy=localhost:20060 hg clone --config http_proxy.always=True http://localhost:20059/ c

echo %% proxy url with user name and password
http_proxy=http://user:passwd@localhost:20060 hg clone --config http_proxy.always=True http://localhost:20059/ d

echo %% url with user name and password
http_proxy=http://user:passwd@localhost:20060 hg clone --config http_proxy.always=True http://user:passwd@localhost:20059/ e

echo %% bad host:port for proxy
http_proxy=localhost:20061 hg clone --config http_proxy.always=True http://localhost:20059/ f

exit 0