test-serve.t
120 lines
| 3.0 KiB
| text/troff
|
Tads3Lexer
/ tests / test-serve.t
Matt Mackall
|
r22046 | #require serve | ||
Patrick Mezard
|
r13540 | |||
$ 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\//' | ||||
Gregory Szorc
|
r37865 | > if [ -f hg.pid ]; then | ||
> killdaemons.py hg.pid | ||||
> fi | ||||
Patrick Mezard
|
r13540 | > echo % errors | ||
> cat errors.log | ||||
> } | ||||
$ hg init test | ||||
$ cd test | ||||
$ echo '[web]' > .hg/hgrc | ||||
$ echo 'accesslog = access.log' >> .hg/hgrc | ||||
$ echo "port = $HGPORT1" >> .hg/hgrc | ||||
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 | ||||
Mads Kiilerich
|
r16487 | > echo 'access log created - .hg/hgrc respected' | ||
> fi | ||||
Patrick Mezard
|
r13540 | access log created - .hg/hgrc respected | ||
errors | ||||
$ cat errors.log | ||||
With -v | ||||
$ hgserve | ||||
Matt Harbison
|
r31769 | listening at http://localhost/ (bound to *$LOCALIP*:HGPORT1) (glob) (?) | ||
Patrick Mezard
|
r13540 | % errors | ||
With -v and -p HGPORT2 | ||||
$ hgserve -p "$HGPORT2" | ||||
Matt Harbison
|
r31769 | listening at http://localhost/ (bound to *$LOCALIP*:HGPORT2) (glob) (?) | ||
Patrick Mezard
|
r13540 | % errors | ||
r48573 | With -v and -p daytime | |||
Patrick Mezard
|
r13540 | |||
r48573 | # On some system this will fails because port < 1024 are not bindable by normal | |||
# users. | ||||
# | ||||
# On some others the kernel is configured to allow any user to bind them and | ||||
# this will work fine | ||||
#if no-windows | ||||
Patrick Mezard
|
r13540 | $ KILLQUIETLY=Y | ||
$ hgserve -p daytime | ||||
r48573 | abort: cannot start server at 'localhost:13': Permission denied (?) | |||
abort: child process failed to start (?) | ||||
pacien
|
r49135 | abort: no port number associated with service 'daytime' (?) | ||
r48573 | listening at http://localhost/ (bound to $LOCALIP:13) (?) | |||
Patrick Mezard
|
r13540 | % errors | ||
$ KILLQUIETLY=N | ||||
Matt Mackall
|
r20008 | #endif | ||
Patrick Mezard
|
r13540 | |||
With --prefix foo | ||||
$ hgserve --prefix foo | ||||
Matt Harbison
|
r31769 | listening at http://localhost/foo/ (bound to *$LOCALIP*:HGPORT1) (glob) (?) | ||
Patrick Mezard
|
r13540 | % errors | ||
With --prefix /foo | ||||
$ hgserve --prefix /foo | ||||
Matt Harbison
|
r31769 | listening at http://localhost/foo/ (bound to *$LOCALIP*:HGPORT1) (glob) (?) | ||
Patrick Mezard
|
r13540 | % errors | ||
With --prefix foo/ | ||||
$ hgserve --prefix foo/ | ||||
Matt Harbison
|
r31769 | listening at http://localhost/foo/ (bound to *$LOCALIP*:HGPORT1) (glob) (?) | ||
Patrick Mezard
|
r13540 | % errors | ||
With --prefix /foo/ | ||||
$ hgserve --prefix /foo/ | ||||
Matt Harbison
|
r31769 | listening at http://localhost/foo/ (bound to *$LOCALIP*:HGPORT1) (glob) (?) | ||
Patrick Mezard
|
r13540 | % errors | ||
Mads Kiilerich
|
r16913 | |||
Matt Harbison
|
r39743 | $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS | ||
Matt Harbison
|
r37288 | |||
With out of bounds accesses | ||||
$ rm access.log | ||||
$ hg serve -a localhost -p $HGPORT -d --prefix some/dir \ | ||||
> --pid-file=hg.pid -E errors.log | ||||
$ cat hg.pid >> "$DAEMON_PIDS" | ||||
$ hg id http://localhost:$HGPORT/some/dir7 | ||||
abort: HTTP Error 404: Not Found | ||||
Martin von Zweigbergk
|
r46443 | [100] | ||
Matt Harbison
|
r37288 | $ hg id http://localhost:$HGPORT/some | ||
abort: HTTP Error 404: Not Found | ||||
Martin von Zweigbergk
|
r46443 | [100] | ||
Matt Harbison
|
r37288 | |||
$ cat access.log errors.log | ||||
$LOCALIP - - [$LOGDATE$] "GET /some/dir7?cmd=capabilities HTTP/1.1" 404 - (glob) | ||||
$LOCALIP - - [$LOGDATE$] "GET /some?cmd=capabilities HTTP/1.1" 404 - (glob) | ||||
Manuel Jacob
|
r45578 | $ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS | ||
issue6362: Previously, this crashed on Python 3 | ||||
Matt Harbison
|
r45627 | $ hg serve -a 0.0.0.0 -d --pid-file=hg.pid | ||
listening at http://*:$HGPORT1/ (bound to *:$HGPORT1) (glob) (?) | ||||
$ cat hg.pid > "$DAEMON_PIDS" | ||||
$ "$PYTHON" $RUNTESTDIR/killdaemons.py $DAEMON_PIDS | ||||
Manuel Jacob
|
r45578 | |||
Mads Kiilerich
|
r16913 | $ cd .. | ||