tests/test-hgweb-commands
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
Wed, 10 Sep 2008 22:37:07 +0200
changeset 7022 bdc8d00c4ffa
parent 6786 97e214dccaa9
child 7544 c5e37dc38a52
permissions -rwxr-xr-x
osutil: proper error checking and reporting
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\//"
05451f6b5f07 add more tests for hgweb commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    23
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/shortlog/' | sed "s/[0-9]* years/many years/"
6168
2ab54f48dbe8 hgweb: fix parameter mixup (issue1001)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5923
diff changeset
    24
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/0/' | sed "s/[0-9]* years ago/long ago/g"
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'
5923
f39110afc039 hgweb: fix a stupid KeyError introduced in a0e20a5eba3c
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5687
diff changeset
    31
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo' | sed "s/[0-9]* years/many years/"
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\//"
5687
ca7af19debea test-hgweb-commands: replace all "XX years ago" occurences
Patrick Mezard <pmezard@gmail.com>
parents: 5593
diff changeset
    36
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/summary/?style=gitweb' | sed "s/[0-9]* years ago/long ago/g"
6786
97e214dccaa9 tests: add a test for the hgweb graph
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6777
diff changeset
    37
"$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/graph/?style=gitweb' | sed "s/[0-9]* years/long/g"
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