view tests/test-help @ 12252:4481f8a93c7a stable

convert/darcs: handle non-ASCII metadata in darcs changelog (issue2354) Given a commit author or message with non-ASCII characters in a darcs repo, convert would raise a UnicodeEncodeError when adding changesets to the hg changelog. This happened because etree returns back unicode objects for any text it can't encode into ASCII. convert was passing these objects to changelog.add(), which would then attempt encoding.fromlocal() on them. This patch ensures converter_source.recode() is called on each piece of commit data returned by etree. (Also note that darcs is currently encoding agnostic and will print out whatever is in a patch's metadata byte-for-byte, even in the XML changelog.)
author Brodie Rao <brodie@bitheap.org>
date Fri, 10 Sep 2010 09:30:50 -0500
parents a565a2445eb5
children
line wrap: on
line source

#!/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