sapling/eden/scm/tests/test-merge-ancestor-mergestate-t.py
Jun Wu 69b33a286f tests: enable visibility for more tests
Summary: Real strip no longer happens.  Revision numbers are changed.

Reviewed By: markbt

Differential Revision: D21894317

fbshipit-source-id: cc335eb9fdbe99c4b7975fead825400474ea1016
2020-06-10 19:29:37 -07:00

72 lines
1.9 KiB
Python

# Copyright (c) Facebook, Inc. and its affiliates.
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from __future__ import absolute_import
from testutil.dott import feature, sh, testtmp # noqa: F401
# Verify ancestry data is readable by mergedrivers by looking at mergestate:
sh % "newrepo"
sh % "enable rebase"
sh % "setconfig 'experimental.evolution='"
sh % "setconfig 'rebase.singletransaction=True'"
sh % "setconfig 'rebase.experimental.inmemory=True'"
sh % "mkdir driver"
sh % "cat" << r"""
def preprocess(ui, repo, hooktype, mergestate, wctx, labels=None):
unresolved_files = list(mergestate.unresolved())
ui.warn("ancestor nodes = %s\n" % [ctx.hex() for ctx in mergestate.ancestorctxs])
ui.warn("ancestor revs = %s\n" % [ctx.rev() for ctx in mergestate.ancestorctxs])
mergestate.commit()
def conclude(ui, repo, hooktype, mergestate, wctx, labels=None):
pass
""" > "driver/__init__.py"
sh % "setconfig 'experimental.mergedriver=python:driver/'"
sh % "hg commit -Aqm driver"
sh % "hg debugdrawdag" << r"""
E # E/file = 1\n2\n3\n4\n5
|
D
|
C F b # F/file = 0\n1\n2\n3\n4
|/
B
|
A # A/file = 1\n2\n3\n4
"""
sh % "hg rebase -s A -d 0" == r"""
rebasing 19c6d3b0d8fb "A" (A)
rebasing 5a83467e1fc3 "B" (B)
rebasing 09810f6b52c0 "F" (F)
rebasing 3ff755c5931b "C" (C)
rebasing dc7f2675f9ab "D" (D)
rebasing 5eb863826611 "E" (E)"""
sh % "showgraph" == r"""
o 13 e71547946f82 E
|
o 12 264c021e8fc6 D
|
o 11 34e41e21cd9d C
|
| o 10 aa431a9572c1 F
|/
o 9 01ba3ad89eb7 B
|
o 8 622e2d864a27 A
|
| o 2 520a9f665f6e b
|
@ 0 9309aa3b805a driver"""
sh % "hg rebase -r aa431a9572c1 -d e71547946f82" == r"""
rebasing aa431a9572c1 "F" (F)
ancestor nodes = ['01ba3ad89eb70070d81f052c0c40a3877c2ba5d8']
ancestor revs = [9]
merging file"""