annotate tests/test-gendoc.t @ 24500:7b0a20cd8c95

run-tests: explicitly handle unicode when writing xunit file The xunit writer was passing a str to a minidom API. An implicit .decode('ascii') was performed somewhere, causing UnicodeDecodeError if test output contained non-ascii sequences. This patch converts test output to utf-8 before passing it to minidom. We use the "replace" strategy to ensure invalid utf-8 sequences get munged into �.
author Gregory Szorc <gregory.szorc@gmail.com>
date Sun, 29 Mar 2015 10:41:23 -0700
parents 1fdb1d909c79
children 4a080cf31565
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 20390
diff changeset
1 #require docutils
24043
1fdb1d909c79 test-gendoc: require gettext
Eric Sumner <ericsumner@fb.com>
parents: 22046
diff changeset
2 #require gettext
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 20390
diff changeset
3
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
4 Test document extraction
9446
57d682d7d2da test-gendoc: test documentation generation
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
5
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
6 $ HGENCODING=UTF-8
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
7 $ export HGENCODING
20390
3fedc29a98bb tests: use ls instead of find, all files are in the same directory
Simon Heimberg <simohe@besonet.ch>
parents: 19923
diff changeset
8 $ { echo C; ls "$TESTDIR/../i18n"/*.po | sort; } | while read PO; do
16350
4f795f5fbb0b tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents: 14475
diff changeset
9 > LOCALE=`basename "$PO" .po`
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
10 > echo
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
11 > echo "% extracting documentation from $LOCALE"
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
12 > echo ".. -*- coding: utf-8 -*-" > gendoc-$LOCALE.txt
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
13 > echo "" >> gendoc-$LOCALE.txt
19922
f27deed5c23f tests: really test translations for rst syntax errors (issue4003)
Simon Heimberg <simohe@besonet.ch>
parents: 16350
diff changeset
14 > LANGUAGE=$LOCALE python "$TESTDIR/../doc/gendoc.py" >> gendoc-$LOCALE.txt 2> /dev/null || exit
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
15 >
19923
52bc80d0769f tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents: 19922
diff changeset
16 > if [ $LOCALE != C ]; then
52bc80d0769f tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents: 19922
diff changeset
17 > cmp -s gendoc-C.txt gendoc-$LOCALE.txt && echo '** NOTHING TRANSLATED **'
52bc80d0769f tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents: 19922
diff changeset
18 > fi
52bc80d0769f tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents: 19922
diff changeset
19 >
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
20 > # We call runrst without adding "--halt warning" to make it report
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
21 > # all errors instead of stopping on the first one.
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
22 > echo "checking for parse errors"
16350
4f795f5fbb0b tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents: 14475
diff changeset
23 > python "$TESTDIR/../doc/runrst" html gendoc-$LOCALE.txt /dev/null
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
24 > done
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
25
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
26 % extracting documentation from C
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
27 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
28
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
29 % extracting documentation from da
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
30 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
31
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
32 % extracting documentation from de
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
33 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
34
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
35 % extracting documentation from el
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
36 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
37
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
38 % extracting documentation from fr
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
39 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
40
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
41 % extracting documentation from it
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
42 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
43
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
44 % extracting documentation from ja
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
45 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
46
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
47 % extracting documentation from pt_BR
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
48 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
49
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
50 % extracting documentation from ro
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
51 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
52
14475
ac9a89dbdc00 test-gendoc: update for new Russian translation
Martin Geisler <mg@lazybytes.net>
parents: 12427
diff changeset
53 % extracting documentation from ru
ac9a89dbdc00 test-gendoc: update for new Russian translation
Martin Geisler <mg@lazybytes.net>
parents: 12427
diff changeset
54 checking for parse errors
ac9a89dbdc00 test-gendoc: update for new Russian translation
Martin Geisler <mg@lazybytes.net>
parents: 12427
diff changeset
55
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
56 % extracting documentation from sv
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
57 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
58
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
59 % extracting documentation from zh_CN
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
60 checking for parse errors
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
61
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
62 % extracting documentation from zh_TW
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
63 checking for parse errors