tests/fakemergerecord.py
author Manuel Jacob <me@manueljacob.de>
Thu, 15 Sep 2022 01:48:38 +0200
changeset 49494 c96ed4029fda
parent 48875 6000f5b25c9b
permissions -rw-r--r--
templates: add filter to reverse list The filter supports only lists because for lists, it’s straightforward to implement. Reversing text doesn’t seem very useful and is hard to implement. Reversing the bytes would break multi-bytes encodings. Reversing the code points would break characters consisting of multiple code points. Reversing graphemes is non-trivial without using a library not included in the standard library.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     1
# Extension to write out fake unsupported records into the merge state
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     2
#
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     3
#
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     4
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     5
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     6
from mercurial import (
44856
b7808443ed6a mergestate: split out merge state handling code from main merge module
Augie Fackler <augie@google.com>
parents: 43076
diff changeset
     7
    mergestate as mergestatemod,
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 29754
diff changeset
     8
    registrar,
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     9
)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
    10
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
    11
cmdtable = {}
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 29754
diff changeset
    12
command = registrar.command(cmdtable)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
    13
43076
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    14
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    15
@command(
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    16
    b'fakemergerecord',
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    17
    [
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    18
        (b'X', b'mandatory', None, b'add a fake mandatory record'),
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    19
        (b'x', b'advisory', None, b'add a fake advisory record'),
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    20
    ],
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    21
    '',
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    22
)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
    23
def fakemergerecord(ui, repo, *pats, **opts):
29754
b303b3817d0e fakemergerecord: take wlock to write the merge state
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27027
diff changeset
    24
    with repo.wlock():
44856
b7808443ed6a mergestate: split out merge state handling code from main merge module
Augie Fackler <augie@google.com>
parents: 43076
diff changeset
    25
        ms = mergestatemod.mergestate.read(repo)
29754
b303b3817d0e fakemergerecord: take wlock to write the merge state
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27027
diff changeset
    26
        records = ms._makerecords()
36480
4dc6f0905722 py3: backout changeset 56635c506608 which wrongly added couple of b''
Pulkit Goyal <7895pulkit@gmail.com>
parents: 36184
diff changeset
    27
        if opts.get('mandatory'):
36173
8173eeb69fb3 tests: port fakemergerecord to python3
Augie Fackler <augie@google.com>
parents: 32337
diff changeset
    28
            records.append((b'X', b'mandatory record'))
36480
4dc6f0905722 py3: backout changeset 56635c506608 which wrongly added couple of b''
Pulkit Goyal <7895pulkit@gmail.com>
parents: 36184
diff changeset
    29
        if opts.get('advisory'):
36173
8173eeb69fb3 tests: port fakemergerecord to python3
Augie Fackler <augie@google.com>
parents: 32337
diff changeset
    30
            records.append((b'x', b'advisory record'))
29754
b303b3817d0e fakemergerecord: take wlock to write the merge state
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27027
diff changeset
    31
        ms._writerecords(records)