sapling/eden/scm/tests/test-restack-old-stack-t.py
Xavier Deguillard 467f4aef45 tests: mark python3 tests as passing
Summary:
Ran ./run-tests.py --json and used the following script:

  import json
  import subprocess

  with open("report.json", "r") as f:
      tests = json.load(f)
      for name, t in tests.items():
          if t["result"] == "success":
              print("%s successful" % name)
              subprocess.run("sed -i '/#require py2/d' %s" % name, shell=True)
              subprocess.run("sed -i '/require.*py2/d' %s" % name, shell=True)

Reviewed By: singhsrb

Differential Revision: D19664298

fbshipit-source-id: fa67c7c7abd110c9f0df9345daf09f2792aacd44
2020-01-31 10:13:45 -08:00

41 lines
996 B
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.
from __future__ import absolute_import
from testutil.dott import feature, sh, testtmp # noqa: F401
# Using modern setup
sh % "enable remotenames amend rebase"
sh % 'setconfig experimental.narrow-heads=true visibility.enabled=true mutation.record=true mutation.enabled=true "mutation.date=0 0" experimental.evolution= remotenames.rename.default=remote'
# Test restack behavior with old stacks.
sh % "newrepo"
sh % "drawdag" << r"""
D2 # amend: D1 -> D2
/ # (This suggests a rebase from E1 to D2)
M
| E1
| |
| D1
| |
| | C1
| |/
| B1
|/
| B2 # amend: B1 -> B2
|/ # (This suggests a rebase from C1 to B2)
A
"""
sh % 'hg debugremotebookmark master "$M"'
sh % 'hg up -q "$D2"'
# Restack should not rebase C1 to B2, since the user is not on the B2 stack.
sh % "hg rebase --restack" == 'rebasing 87d9afc4bc4e "E1"'