annotate tests/test-interhg @ 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 634b0e7561ec
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10473
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
1 #!/bin/sh
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
2
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
3 hg init test
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
4 cd test
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
5
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
6 cat > .hg/hgrc <<EOF
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
7 [extensions]
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
8 interhg =
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
9
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
10 [interhg]
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
11 issues = s|Issue(\d+)|<a href="http://bts.example.org/issue\1">Issue\1</a>|
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
12
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
13 # yes, 'x' is a weird delimiter...
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
14 markbugs = sxbugx<i class="\x">bug</i>x
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
15 EOF
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
16
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
17 touch foo
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
18 hg add foo
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
19 hg commit -d '1 0' -m 'Issue123: fixed the bug!'
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
20
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
21 hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
22 cat hg.pid >> $DAEMON_PIDS
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
23
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
24 echo % log
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
25 "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/' | grep bts
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
26
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
27 echo % errors
634b0e7561ec test-interhg: test the extension
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
28 cat errors.log