Mercurial > hg
annotate tests/revnamesext.py @ 43416:e7eb67eab53f stable
tests: write out file using bytes I/O
The encoding of sys.stdout varies between Python versions. So
using a one-liner to write a file from a Unicode string is not
deterministic.
This commit writes out the file using bytes I/O to ensure we
have exactly the bytes we want in the file.
This change fixes a test failure in Python 3.5/3.6.
Differential Revision: https://phab.mercurial-scm.org/D7226
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Mon, 04 Nov 2019 20:57:31 -0800 |
parents | 2372284d9457 |
children | 6000f5b25c9b |
rev | line source |
---|---|
33048
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1 # Dummy extension to define a namespace containing revision names |
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
2 |
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
3 from __future__ import absolute_import |
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
4 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
5 from mercurial import namespaces |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
6 |
33048
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
7 |
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
8 def reposetup(ui, repo): |
36548
086fc71fbb09
py3: mark all string literals in test-command-template.t as bytes
Yuya Nishihara <yuya@tcha.org>
parents:
33048
diff
changeset
|
9 names = {b'r%d' % rev: repo[rev].node() for rev in repo} |
33048
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
10 namemap = lambda r, name: names.get(name) |
36548
086fc71fbb09
py3: mark all string literals in test-command-template.t as bytes
Yuya Nishihara <yuya@tcha.org>
parents:
33048
diff
changeset
|
11 nodemap = lambda r, node: [b'r%d' % repo[node].rev()] |
33048
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
12 |
43076
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
13 ns = namespaces.namespace( |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
14 b'revnames', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
15 templatename=b'revname', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
16 logname=b'revname', |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
17 listnames=lambda r: names.keys(), |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
18 namemap=namemap, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
19 nodemap=nodemap, |
2372284d9457
formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents:
36548
diff
changeset
|
20 ) |
33048
46fa46608ca5
namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
21 repo.names.addnamespace(ns) |