view tests/test-serve @ 13445:61a898576888 stable

hgweb: handle invalid requests with both form data and querystring Invalid requests could give an unhandled ErrorResponse. Now this ErrorResponse is handled like other ErrorResponses so the client gets an error message which also is logged on the server.
author Mads Kiilerich <mads@kiilerich.com>
date Mon, 21 Feb 2011 00:57:19 +0100
parents fdb0983ad395
children
line wrap: on
line source

#!/bin/sh

hgserve()
{
    hg serve -a localhost -d --pid-file=hg.pid -E errors.log -v $@ \
        | sed -e "s/:$HGPORT1\\([^0-9]\\)/:HGPORT1\1/g" \
              -e "s/:$HGPORT2\\([^0-9]\\)/:HGPORT2\1/g" \
              -e 's/http:\/\/[^/]*\//http:\/\/localhost\//'
    cat hg.pid >> "$DAEMON_PIDS"
    echo % errors
    cat errors.log
    sleep 1
    if [ "$KILLQUIETLY" = "Y" ]; then
        kill `cat hg.pid` 2>/dev/null
    else
        kill `cat hg.pid`
    fi
    sleep 1
}

hg init test
cd test

echo '[web]' > .hg/hgrc
echo 'accesslog = access.log' >> .hg/hgrc
echo "port = $HGPORT1" >> .hg/hgrc

echo % Without -v
hg serve -a localhost -p $HGPORT -d --pid-file=hg.pid -E errors.log
cat hg.pid >> "$DAEMON_PIDS"
if [ -f access.log ]; then
    echo 'access log created - .hg/hgrc respected'
fi
echo % errors
cat errors.log

echo % With -v
hgserve

echo % With -v and -p HGPORT2
hgserve -p "$HGPORT2"

echo '% With -v and -p daytime (should fail because low port)'
KILLQUIETLY=Y
hgserve -p daytime
KILLQUIETLY=N

echo % With --prefix foo
hgserve --prefix foo

echo % With --prefix /foo
hgserve --prefix /foo

echo % With --prefix foo/
hgserve --prefix foo/

echo % With --prefix /foo/
hgserve --prefix /foo/