tests/test-help
author Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
Thu, 10 Jun 2010 11:49:48 +0200
changeset 11337 0f3c8a47960e
parent 10446 a565a2445eb5
permissions -rwxr-xr-x
debugbuilddag: build a changelog dag from a concise description Useful in tests to quickly build a complex DAG in an empty repo. Handles local tags and named branches. Options to, at each rev, - create a new file, - overwrite the same file, - append to the same file, - write to a specific line in a mergeable file. Can run shell commands during DAG buildup.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
544
3d4d5f2aba9a Remove bashisms and use /bin/sh instead of /bin/bash.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 429
diff changeset
     1
#!/bin/sh
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
     2
849
8933ef744325 Further help improvements:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
     3
hg
8933ef744325 Further help improvements:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
     4
hg -q
596
9a8daeff0ffa A bunch of parsing/help updates
mpm@selenic.com
parents: 547
diff changeset
     5
hg help
423
25afb21d97ba Support for 'hg --version'. setup.py stores version from hg repository.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 350
diff changeset
     6
hg -q help
10110
9ed13f718e53 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 896
diff changeset
     7
9ed13f718e53 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 896
diff changeset
     8
echo %% test short command list with verbose option
9ed13f718e53 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 896
diff changeset
     9
hg -v help shortlist | sed 's/[(]version [^)]*[)]/(version xxx)/'
9ed13f718e53 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 896
diff changeset
    10
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    11
hg add -h
10121
ac212bcc852b test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10110
diff changeset
    12
10446
a565a2445eb5 commands: add verbose example to help text for add
Martin Geisler <mg@lazybytes.net>
parents: 10144
diff changeset
    13
echo %% verbose help for add
a565a2445eb5 commands: add verbose example to help text for add
Martin Geisler <mg@lazybytes.net>
parents: 10144
diff changeset
    14
hg add -hv
a565a2445eb5 commands: add verbose example to help text for add
Martin Geisler <mg@lazybytes.net>
parents: 10144
diff changeset
    15
10121
ac212bcc852b test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10110
diff changeset
    16
echo %% test help option with version option
ac212bcc852b test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10110
diff changeset
    17
hg add -h --version | sed 's/[(]version [^)]*[)]/(version xxx)/'
ac212bcc852b test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10110
diff changeset
    18
596
9a8daeff0ffa A bunch of parsing/help updates
mpm@selenic.com
parents: 547
diff changeset
    19
hg add --skjdfks
10139
d09bed527343 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10121
diff changeset
    20
d09bed527343 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10121
diff changeset
    21
echo %% test ambiguous command help
d09bed527343 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10121
diff changeset
    22
hg help ad
d09bed527343 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10121
diff changeset
    23
10140
5d868e0565f6 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10139
diff changeset
    24
echo %% test command without options
5d868e0565f6 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10139
diff changeset
    25
hg help verify
5d868e0565f6 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10139
diff changeset
    26
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    27
hg help diff
849
8933ef744325 Further help improvements:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
    28
hg help status
8933ef744325 Further help improvements:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
    29
hg -q help status
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    30
hg help foo
849
8933ef744325 Further help improvements:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
    31
hg skjdfks
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    32
10141
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    33
cat > helpext.py <<EOF
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    34
import os
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    35
from mercurial import commands
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    36
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    37
def nohelp(ui, *args, **kwargs):
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    38
    pass
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    39
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    40
cmdtable = {
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    41
    "nohelp": (nohelp, [], "hg nohelp"),
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    42
}
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    43
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    44
commands.norepo += ' nohelp'
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    45
EOF
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    46
abspath=`pwd`/helpext.py
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    47
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    48
echo '[extensions]' >> $HGRCPATH
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    49
echo "helpext = $abspath" >> $HGRCPATH
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    50
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    51
echo %% test command with no help text
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    52
hg help nohelp
827b7d6f9016 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10140
diff changeset
    53
10142
44fa0e205ec9 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10141
diff changeset
    54
echo %% test that default list of commands omits extension commands
44fa0e205ec9 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10141
diff changeset
    55
hg help
44fa0e205ec9 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10141
diff changeset
    56
10143
f6ac05b5684b test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10142
diff changeset
    57
echo %% test list of commands with command with no help text
f6ac05b5684b test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10142
diff changeset
    58
hg help helpext
f6ac05b5684b test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10142
diff changeset
    59
10144
69a974125938 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10143
diff changeset
    60
echo %% test a help topic
69a974125938 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10143
diff changeset
    61
hg help revs
69a974125938 test-help: improve test coverage
Henri Wiechers <hwiechers@gmail.com>
parents: 10143
diff changeset
    62
423
25afb21d97ba Support for 'hg --version'. setup.py stores version from hg repository.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 350
diff changeset
    63
exit 0