tests/test-hgweb-commands
author Martin Geisler <mg@daimi.au.dk>
Tue, 24 Feb 2009 18:09:16 +0100
changeset 7801 e5627562b9f2
parent 7544 c5e37dc38a52
child 8167 6c82beaaa11a
permissions -rwxr-xr-x
setup: run hg with empty HGRCPATH for robustness. Otherwise a bad hgrc file can make the version detection fail.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5590
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     1
#!/bin/sh
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     2
# An attempt at more fully testing the hgweb web interface.
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     3
# The following things are tested elsewhere and are therefore omitted:
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     4
# - archive, tested in test-archive
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     5
# - unbundle, tested in test-push-http
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     6
# - changegroupsubset, tested in test-pull
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     7
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     8
echo % Set up the repo
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     9
hg init test
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    10
cd test
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    11
mkdir da
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    12
echo foo > da/foo
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    13
echo foo > foo
5593
6ae8ed59c7b4 Fix breaking test from 05451f6b5f07
Bryan O'Sullivan <bos@serpentine.com>
parents: 5590
diff changeset
    14
hg ci -d'0 0' -Ambase
5590
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    15
hg tag 1.0
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    16
hg serve -n test -p $HGPORT -d --pid-file=hg.pid -E errors.log
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    17
cat hg.pid >> $DAEMON_PIDS
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    18
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    19
echo % Logs and changes
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    20
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/?style=atom' | sed "s/http:\/\/[^/]*\//http:\/\/127.0.0.1\//"
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    21
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/1/?style=atom' | sed "s/http:\/\/[^/]*\//http:\/\/127.0.0.1\//"
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    22
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/1/foo/?style=atom' | sed "s/http:\/\/[^/]*\//http:\/\/127.0.0.1\//"
7544
c5e37dc38a52 test-hgweb-*: replace "XX years ago" by a fixed string in get-with-headers.py
Gilles Moris <gilles.moris@free.fr>
parents: 6786
diff changeset
    23
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/shortlog/'
c5e37dc38a52 test-hgweb-*: replace "XX years ago" by a fixed string in get-with-headers.py
Gilles Moris <gilles.moris@free.fr>
parents: 6786
diff changeset
    24
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/0/'
5590
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    25
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/1/?style=raw'
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    26
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    27
echo % File-related
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    28
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo/?style=raw'
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    29
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/annotate/1/foo/?style=raw'
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    30
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/?style=raw'
7544
c5e37dc38a52 test-hgweb-*: replace "XX years ago" by a fixed string in get-with-headers.py
Gilles Moris <gilles.moris@free.fr>
parents: 6786
diff changeset
    31
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo'
5590
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    32
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/filediff/1/foo/?style=raw'
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    33
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    34
echo % Overviews
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    35
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/tags/?style=atom' | sed "s/http:\/\/[^/]*\//http:\/\/127.0.0.1\//"
7544
c5e37dc38a52 test-hgweb-*: replace "XX years ago" by a fixed string in get-with-headers.py
Gilles Moris <gilles.moris@free.fr>
parents: 6786
diff changeset
    36
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/summary/?style=gitweb'
c5e37dc38a52 test-hgweb-*: replace "XX years ago" by a fixed string in get-with-headers.py
Gilles Moris <gilles.moris@free.fr>
parents: 6786
diff changeset
    37
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/graph/?style=gitweb'
5590
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    38
5593
6ae8ed59c7b4 Fix breaking test from 05451f6b5f07
Bryan O'Sullivan <bos@serpentine.com>
parents: 5590
diff changeset
    39
echo % capabilities
6777
44c5157474e7 hgweb: protocol requests are processed immediately
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6335
diff changeset
    40
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=capabilities'
5593
6ae8ed59c7b4 Fix breaking test from 05451f6b5f07
Bryan O'Sullivan <bos@serpentine.com>
parents: 5590
diff changeset
    41
echo % heads
6777
44c5157474e7 hgweb: protocol requests are processed immediately
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6335
diff changeset
    42
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=heads'
5593
6ae8ed59c7b4 Fix breaking test from 05451f6b5f07
Bryan O'Sullivan <bos@serpentine.com>
parents: 5590
diff changeset
    43
echo % lookup
6777
44c5157474e7 hgweb: protocol requests are processed immediately
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6335
diff changeset
    44
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=lookup&node=1'
5593
6ae8ed59c7b4 Fix breaking test from 05451f6b5f07
Bryan O'Sullivan <bos@serpentine.com>
parents: 5590
diff changeset
    45
echo % branches
6777
44c5157474e7 hgweb: protocol requests are processed immediately
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6335
diff changeset
    46
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=branches'
5593
6ae8ed59c7b4 Fix breaking test from 05451f6b5f07
Bryan O'Sullivan <bos@serpentine.com>
parents: 5590
diff changeset
    47
echo % changegroup
6777
44c5157474e7 hgweb: protocol requests are processed immediately
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6335
diff changeset
    48
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=changegroup'
5593
6ae8ed59c7b4 Fix breaking test from 05451f6b5f07
Bryan O'Sullivan <bos@serpentine.com>
parents: 5590
diff changeset
    49
echo % stream_out
6777
44c5157474e7 hgweb: protocol requests are processed immediately
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6335
diff changeset
    50
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=stream_out'
6335
e29557d687c9 hgweb: only accept POST requests for unbundle
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6168
diff changeset
    51
echo % failing unbundle, requires POST request
6777
44c5157474e7 hgweb: protocol requests are processed immediately
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6335
diff changeset
    52
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=unbundle'
5590
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    53
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    54
echo % Static files
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    55
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/static/style.css'
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    56
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    57
echo % ERRORS ENCOUNTERED
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    58
cat errors.log