Mercurial > hg
annotate tests/test-gendoc.t @ 31454:a5bad127128d
branchmap: handle nullrev in setcachedata
906be86990 recently changed to switch from:
self._rbcrevs[rbcrevidx:rbcrevidx + _rbcrecsize] = rec
to
pack_into(_rbcrecfmt, self._rbcrevs, rbcrevidx, node, branchidx)
This causes an exception if rbcrevidx is -1 (i.e. the nullrev). The old code
handled this because python handles out of bound sets to arrays gracefully. The
new code throws because the self._rbcrevs buffer isn't long enough to write 8
bytes to. Normally it would've been resized by the immediately preceding line,
but because the 0 length buffer is greater than the idx (-1) times the size, no
resize happens.
Setting the branch for the nullrev doesn't make sense anyway, so let's skip it.
This was caught by external tests in the Facebook extensions repo, but I've
added a test here that catches the issue.
author | Durham Goode <durham@fb.com> |
---|---|
date | Wed, 15 Mar 2017 15:48:57 -0700 |
parents | 7a1ad08b9ff5 |
children | 75be14993fda |
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 | 4 Test document extraction |
9446
57d682d7d2da
test-gendoc: test documentation generation
Martin Geisler <mg@lazybytes.net>
parents:
diff
changeset
|
5 |
12427 | 6 $ HGENCODING=UTF-8 |
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 | 10 > echo "% extracting documentation from $LOCALE" |
19922
f27deed5c23f
tests: really test translations for rst syntax errors (issue4003)
Simon Heimberg <simohe@besonet.ch>
parents:
16350
diff
changeset
|
11 > LANGUAGE=$LOCALE python "$TESTDIR/../doc/gendoc.py" >> gendoc-$LOCALE.txt 2> /dev/null || exit |
12427 | 12 > |
19923
52bc80d0769f
tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents:
19922
diff
changeset
|
13 > if [ $LOCALE != C ]; then |
28809
7a1ad08b9ff5
tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
27733
diff
changeset
|
14 > if [ ! -f $TESTDIR/test-gendoc-$LOCALE.t ]; then |
7a1ad08b9ff5
tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
27733
diff
changeset
|
15 > echo missing test-gendoc-$LOCALE.t |
7a1ad08b9ff5
tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
27733
diff
changeset
|
16 > fi |
7a1ad08b9ff5
tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
27733
diff
changeset
|
17 > cmp -s gendoc-C.txt gendoc-$LOCALE.txt && echo "** NOTHING TRANSLATED ($LOCALE) **" |
19923
52bc80d0769f
tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents:
19922
diff
changeset
|
18 > fi |
28809
7a1ad08b9ff5
tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
27733
diff
changeset
|
19 > done; true |
12427 | 20 % extracting documentation from C |
21 % extracting documentation from da | |
22 % extracting documentation from de | |
23 % extracting documentation from el | |
24 % extracting documentation from fr | |
25 % extracting documentation from it | |
26 % extracting documentation from ja | |
27 % extracting documentation from pt_BR | |
28 % extracting documentation from ro | |
14475
ac9a89dbdc00
test-gendoc: update for new Russian translation
Martin Geisler <mg@lazybytes.net>
parents:
12427
diff
changeset
|
29 % extracting documentation from ru |
12427 | 30 % extracting documentation from sv |
31 % extracting documentation from zh_CN | |
32 % extracting documentation from zh_TW |