Mercurial > hg
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