tests/revnamesext.py
author Raphaël Gomès <rgomes@octobus.net>
Fri, 11 Feb 2022 23:43:17 +0100
branchstable
changeset 48373 46d12f7762e4
parent 43076 2372284d9457
child 48966 6000f5b25c9b
permissions -rw-r--r--
dirstate-v2: fix infinite loop in pure packer Due to the naive approach to path relative-ness, some tree shapes like the one introduced in the associated test could result in the packer going into an endless loop which allocated new `Node` objects endlessly until the process was killed by Linux's OOM killer. Differential Revision: https://phab.mercurial-scm.org/D12170
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
33060
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: 36577
diff changeset
     5
from mercurial import namespaces
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
     6
33060
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):
36577
086fc71fbb09 py3: mark all string literals in test-command-template.t as bytes
Yuya Nishihara <yuya@tcha.org>
parents: 33060
diff changeset
     9
    names = {b'r%d' % rev: repo[rev].node() for rev in repo}
33060
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)
36577
086fc71fbb09 py3: mark all string literals in test-command-template.t as bytes
Yuya Nishihara <yuya@tcha.org>
parents: 33060
diff changeset
    11
    nodemap = lambda r, node: [b'r%d' % repo[node].rev()]
33060
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: 36577
diff changeset
    13
    ns = namespaces.namespace(
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
    14
        b'revnames',
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
    15
        templatename=b'revname',
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
    16
        logname=b'revname',
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
    17
        listnames=lambda r: names.keys(),
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
    18
        namemap=namemap,
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
    19
        nodemap=nodemap,
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36577
diff changeset
    20
    )
33060
46fa46608ca5 namespaces: record and expose whether namespace is built-in
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    21
    repo.names.addnamespace(ns)