tests/fakemergerecord.py
author Joerg Sonnenberger <joerg@bec.de>
Wed, 26 Feb 2020 22:35:39 +0100
changeset 44627 947e6df4ff77
parent 43076 2372284d9457
child 44856 b7808443ed6a
permissions -rw-r--r--
notify: optional mail threading based on obsmarker When notify.reply is set and a changeset has a predecessor in the repository, include In-Reply-To pointing to the message-id that would have been generated for the oldest predecessor. This allows mail threading like Phabricator for common cases like rebasing changes, but will be optimal for cases like folding. Differential Revision: https://phab.mercurial-scm.org/D8172
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
from __future__ import absolute_import
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     6
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     7
from mercurial import (
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
     8
    merge,
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 29754
diff changeset
     9
    registrar,
27027
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
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
    12
cmdtable = {}
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 29754
diff changeset
    13
command = registrar.command(cmdtable)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
    14
43076
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    15
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    16
@command(
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    17
    b'fakemergerecord',
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    18
    [
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    19
        (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
    20
        (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
    21
    ],
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    22
    '',
2372284d9457 formatting: blacken the codebase
Augie Fackler <augie@google.com>
parents: 36480
diff changeset
    23
)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
diff changeset
    24
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
    25
    with repo.wlock():
b303b3817d0e fakemergerecord: take wlock to write the merge state
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27027
diff changeset
    26
        ms = merge.mergestate.read(repo)
b303b3817d0e fakemergerecord: take wlock to write the merge state
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27027
diff changeset
    27
        records = ms._makerecords()
36480
4dc6f0905722 py3: backout changeset 56635c506608 which wrongly added couple of b''
Pulkit Goyal <7895pulkit@gmail.com>
parents: 36184
diff changeset
    28
        if opts.get('mandatory'):
36173
8173eeb69fb3 tests: port fakemergerecord to python3
Augie Fackler <augie@google.com>
parents: 32337
diff changeset
    29
            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
    30
        if opts.get('advisory'):
36173
8173eeb69fb3 tests: port fakemergerecord to python3
Augie Fackler <augie@google.com>
parents: 32337
diff changeset
    31
            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
    32
        ms._writerecords(records)