tests/test-help
author Steve Borho <steve@borho.org>
Thu, 03 Jun 2010 23:18:18 -0500
changeset 11302 e1dde7363601
parent 10446 a565a2445eb5
permissions -rwxr-xr-x
color: labeled text should be passed to ui.write() as ui.labeled Some implementations of ui.label() (HTML versions in particular) must escape the provided text and then markup the text with their tags. When this marked up text is then passed to ui.write(), we must label the text as 'ui.labeled' so the implementation knows not to escape it a second time (exposing the initial markup). This required the addition of a 'ui.plain' label for text that is purposefully not marked up. I was a little pedantic here, passing even ' ' strings to ui.label() when it would be included with other labeled text in a ui.write() call. But it seemed appropriate to lean to the side of caution.

#!/bin/sh

hg
hg -q
hg help
hg -q help

echo %% test short command list with verbose option
hg -v help shortlist | sed 's/[(]version [^)]*[)]/(version xxx)/'

hg add -h

echo %% verbose help for add
hg add -hv

echo %% test help option with version option
hg add -h --version | sed 's/[(]version [^)]*[)]/(version xxx)/'

hg add --skjdfks

echo %% test ambiguous command help
hg help ad

echo %% test command without options
hg help verify

hg help diff
hg help status
hg -q help status
hg help foo
hg skjdfks

cat > helpext.py <<EOF
import os
from mercurial import commands

def nohelp(ui, *args, **kwargs):
    pass

cmdtable = {
    "nohelp": (nohelp, [], "hg nohelp"),
}

commands.norepo += ' nohelp'
EOF
abspath=`pwd`/helpext.py

echo '[extensions]' >> $HGRCPATH
echo "helpext = $abspath" >> $HGRCPATH

echo %% test command with no help text
hg help nohelp

echo %% test that default list of commands omits extension commands
hg help

echo %% test list of commands with command with no help text
hg help helpext

echo %% test a help topic
hg help revs

exit 0