mirror of
https://github.com/facebook/sapling.git
synced 2024-10-06 06:47:41 +03:00
tests: remove filepeer usage from several tests (part3)
Summary: This is part of removing filepeer. I also enabled treemanifest and modernclient (i.e. lazy changelog) on a few tests. Reviewed By: quark-zju Differential Revision: D31309311 fbshipit-source-id: e1c81b8433e7400b2273aea6b2a5d7a6f5c91a9e
This commit is contained in:
parent
3e5e46f131
commit
a7dae2f7ee
@ -1,5 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
The ordering and format of case collisions detected using treemanifest is
|
||||
different, so this is a different test script.
|
||||
|
@ -1,6 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ configure modern
|
||||
|
||||
$ export HG_TEST_DYNAMICCONFIG="$TESTTMP/test_hgrc"
|
||||
|
@ -1,6 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ configure modern
|
||||
$ enable shelve
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
$ configure modernclient
|
||||
|
||||
Testing diff --change
|
||||
|
||||
$ hg init a
|
||||
$ cd a
|
||||
$ newclientrepo a
|
||||
|
||||
$ echo "first" > file.txt
|
||||
$ hg add file.txt
|
||||
$ hg commit -m 'first commit' # 0
|
||||
$ hg push -q -r . --to head0 --create
|
||||
|
||||
$ echo "second" > file.txt
|
||||
$ hg commit -m 'second commit' # 1
|
||||
@ -31,14 +31,12 @@ Testing diff --change
|
||||
@@ -1,1 +1,1 @@
|
||||
-first
|
||||
+second
|
||||
|
||||
$ cd ..
|
||||
$ hg push -q -r . --to book --create
|
||||
|
||||
Test dumb revspecs: top-level "x:y", "x:", ":y" and ":" ranges should be handled
|
||||
as pairs even if x == y, but not for "f(x:y)" nor "x::y" (issue3474, issue4774)
|
||||
|
||||
$ hg clone -q a dumbspec
|
||||
$ cd dumbspec
|
||||
$ newclientrepo dumbspec test:a_server book
|
||||
$ echo "wdir" > file.txt
|
||||
|
||||
$ hg diff -r 'desc(third)':'desc(third)'
|
||||
@ -71,13 +69,10 @@ as pairs even if x == y, but not for "f(x:y)" nor "x::y" (issue3474, issue4774)
|
||||
abort: empty revision range
|
||||
[255]
|
||||
|
||||
$ cd ..
|
||||
|
||||
$ hg clone -qr0 a dumbspec-rev0
|
||||
$ cd dumbspec-rev0
|
||||
$ newclientrepo dumbspec-rev0 test:a_server book head0
|
||||
$ hg up -q head0
|
||||
$ echo "wdir" > file.txt
|
||||
|
||||
$ hg diff -r :
|
||||
$ hg diff -r 'first(:)' --nodates
|
||||
diff -r 4bb65dda5db4 file.txt
|
||||
--- a/file.txt
|
||||
|
@ -1,6 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ configure modern
|
||||
$ newserver server1
|
||||
$ drawdag << 'EOS'
|
||||
|
@ -1,5 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ configure modern
|
||||
$ setconfig format.use-symlink-atomic-write=1
|
||||
|
@ -1,6 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ configure modern
|
||||
|
||||
$ setconfig paths.default=test:e1 ui.traceback=1
|
||||
|
@ -8,75 +8,21 @@ from __future__ import absolute_import
|
||||
|
||||
from testutil.dott import feature, sh, testtmp # noqa: F401
|
||||
|
||||
sh % "configure modernclient"
|
||||
|
||||
sh % "setconfig experimental.allowfilepeer=True"
|
||||
sh % "setconfig 'extensions.treemanifest=!'"
|
||||
# Create an empty repo:
|
||||
|
||||
sh % "hg init a"
|
||||
sh % "cd a"
|
||||
sh % "newclientrepo a"
|
||||
|
||||
# Try some commands:
|
||||
|
||||
sh % "hg log"
|
||||
sh % "hg histgrep wah" == "[1]"
|
||||
sh % "hg manifest"
|
||||
sh % "hg verify" == "warning: verify does not actually check anything in this repo"
|
||||
|
||||
# Check the basic files created:
|
||||
|
||||
sh % "ls .hg" == r"""
|
||||
00changelog.i
|
||||
blackbox
|
||||
hgrc.dynamic
|
||||
reponame
|
||||
requires
|
||||
store
|
||||
treestate"""
|
||||
|
||||
# Should be empty:
|
||||
# It's not really empty, though.
|
||||
|
||||
sh % "ls .hg/store" == r"""
|
||||
allheads
|
||||
metalog
|
||||
requires"""
|
||||
|
||||
# Poke at a clone:
|
||||
sh % "hg push -r . -q --to book --create"
|
||||
|
||||
sh % "cd .."
|
||||
sh % "hg clone a b" == r"""
|
||||
updating to branch default
|
||||
0 files updated, 0 files merged, 0 files removed, 0 files unresolved"""
|
||||
sh % "cd b"
|
||||
sh % "hg verify" == "warning: verify does not actually check anything in this repo"
|
||||
sh % "ls .hg" == r"""
|
||||
00changelog.i
|
||||
blackbox
|
||||
dirstate
|
||||
hgrc
|
||||
hgrc.dynamic
|
||||
reponame
|
||||
requires
|
||||
store
|
||||
treestate
|
||||
undo.branch
|
||||
undo.desc
|
||||
undo.dirstate"""
|
||||
|
||||
# Should be empty:
|
||||
# It's not really empty, though.
|
||||
|
||||
sh % "ls .hg/store" == r"""
|
||||
00changelog.d
|
||||
00changelog.i
|
||||
00changelog.len
|
||||
allheads
|
||||
metalog
|
||||
requires
|
||||
undo
|
||||
undo.backupfiles
|
||||
undo.bookmarks
|
||||
undo.phaseroots"""
|
||||
|
||||
sh % "cd .."
|
||||
sh % "newclientrepo b test:a_server" == ""
|
||||
sh % "hg log" == ""
|
||||
|
@ -1,6 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ configure mutation-norecord dummyssh
|
||||
$ enable amend crdump remotenames
|
||||
$ showgraph() {
|
||||
|
@ -1,5 +1,4 @@
|
||||
$ configure modern
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ newserver master
|
||||
$ cat >> .hg/hgrc <<EOF
|
||||
|
@ -1,6 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
|
||||
$ configure dummyssh
|
||||
$ enable fastannotate
|
||||
|
@ -8,7 +8,6 @@ from __future__ import absolute_import
|
||||
from testutil.dott import feature, sh, testtmp # noqa: F401
|
||||
|
||||
|
||||
sh % "setconfig experimental.allowfilepeer=True"
|
||||
(
|
||||
sh % "cat"
|
||||
<< r"""
|
||||
@ -53,8 +52,8 @@ sh % "hg log -r D1234 -T '{desc}\n'" == r"""
|
||||
[255]"""
|
||||
|
||||
# 'pull -r Dxxx' will be rewritten to 'pull -r HASH'
|
||||
sh % "hg pull -r D1234 --config paths.default=." == r"""
|
||||
pulling from $TESTTMP/repo
|
||||
sh % "hg pull -r D1234 --config paths.default=test:fake_server" == r"""
|
||||
pulling from test:fake_server
|
||||
rewriting pull rev 'D1234' into '6008bb23d775556ff6c3528541ca5a2177b4bb92'
|
||||
abort: unknown revision '6008bb23d775556ff6c3528541ca5a2177b4bb92'!
|
||||
[255]"""
|
||||
|
@ -1,6 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
|
||||
Setup
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ disable treemanifest
|
||||
|
||||
|
@ -1,5 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
$ enable blackbox rage smartlog sparse
|
||||
|
||||
|
@ -10,8 +10,7 @@ from __future__ import absolute_import
|
||||
from testutil.dott import feature, sh, testtmp # noqa: F401
|
||||
|
||||
|
||||
sh % "setconfig experimental.allowfilepeer=True"
|
||||
sh % "setconfig 'extensions.treemanifest=!'"
|
||||
sh % "configure modernclient"
|
||||
(
|
||||
sh % "cat"
|
||||
<< r"""
|
||||
@ -22,25 +21,22 @@ remotenames=
|
||||
>> "$HGRCPATH"
|
||||
)
|
||||
|
||||
sh % "hg init repo"
|
||||
sh % "cd repo"
|
||||
sh % "newclientrepo repo"
|
||||
|
||||
sh % "echo x" > "x"
|
||||
sh % "hg commit -qAm x"
|
||||
sh % "hg book foo"
|
||||
sh % "echo x" >> "x"
|
||||
sh % "hg commit -qAm x2"
|
||||
sh % "hg push -q -r . --to foo --create"
|
||||
|
||||
# Resetting past a remote bookmark should not delete the remote bookmark
|
||||
|
||||
sh % "cd .."
|
||||
sh % "hg clone repo client" == r"""
|
||||
updating to branch default
|
||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved"""
|
||||
sh % "cd client"
|
||||
sh % "newclientrepo client test:repo_server foo"
|
||||
sh % "hg book --list-remote *"
|
||||
sh % "hg book bar"
|
||||
sh % "hg reset --clean 'default/foo^'"
|
||||
sh % "hg reset --clean 'remote/foo^'"
|
||||
sh % "hg log -G -T '{node|short} {bookmarks} {remotebookmarks}\\n'" == r"""
|
||||
o a89d614e2364 default/foo
|
||||
o a89d614e2364 remote/foo
|
||||
│
|
||||
@ b292c1e3311f bar"""
|
||||
|
@ -1,5 +1,4 @@
|
||||
#chg-compatible
|
||||
$ setconfig experimental.allowfilepeer=True
|
||||
|
||||
To run this test against other shells, use the shell argument, eg:
|
||||
run-tests.py --shell=zsh test-scm-prompt*
|
||||
|
@ -10,8 +10,8 @@ from __future__ import absolute_import
|
||||
from testutil.dott import feature, sh, testtmp # noqa: F401
|
||||
|
||||
|
||||
sh % "setconfig experimental.allowfilepeer=True"
|
||||
sh % "setconfig 'extensions.treemanifest=!'"
|
||||
sh % "configure modernclient"
|
||||
|
||||
(
|
||||
sh % "cat"
|
||||
<< r"""
|
||||
@ -22,38 +22,34 @@ remotenames=
|
||||
>> "$HGRCPATH"
|
||||
)
|
||||
|
||||
sh % "hg init repo"
|
||||
sh % "cd repo"
|
||||
sh % "newclientrepo repo"
|
||||
|
||||
sh % "echo x" > "x"
|
||||
sh % "hg commit -qAm x"
|
||||
sh % "hg book master"
|
||||
sh % "hg commit -qAm x1"
|
||||
sh % "hg book master1"
|
||||
sh % "echo x" >> "x"
|
||||
sh % "hg commit -qAm x2"
|
||||
sh % "hg push -r . -q --to master1 --create"
|
||||
|
||||
# Non-bookmarked public heads should not be visible in smartlog
|
||||
|
||||
sh % "cd .."
|
||||
sh % "hg clone repo client" == r"""
|
||||
updating to branch default
|
||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved"""
|
||||
sh % "cd client"
|
||||
sh % "hg book mybook -r 0"
|
||||
sh % "hg up 0" == "1 files updated, 0 files merged, 0 files removed, 0 files unresolved"
|
||||
sh % "hg smartlog -T '{rev} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o 1 default/master
|
||||
sh % "newclientrepo client test:repo_server master1" == ""
|
||||
sh % "hg book mybook -r 'desc(x1)'"
|
||||
sh % "hg up 'desc(x1)'" == "1 files updated, 0 files merged, 0 files removed, 0 files unresolved"
|
||||
sh % "hg smartlog -T '{desc} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o x2 remote/master1
|
||||
│
|
||||
@ 0 mybook"""
|
||||
@ x1 mybook"""
|
||||
|
||||
# Old head (rev 1) is still visible
|
||||
|
||||
sh % "echo z" >> "x"
|
||||
sh % "hg commit -qAm x3"
|
||||
sh % "hg push --non-forward-move -q --to master"
|
||||
sh % "hg smartlog -T '{rev} {bookmarks} {remotebookmarks}'" == r"""
|
||||
@ 2 default/master
|
||||
sh % "hg push --non-forward-move -q --to master1"
|
||||
sh % "hg smartlog -T '{desc} {bookmarks} {remotebookmarks}'" == r"""
|
||||
@ x3 remote/master1
|
||||
│
|
||||
o 0 mybook"""
|
||||
o x1 mybook"""
|
||||
|
||||
# Test configuration of "interesting" bookmarks
|
||||
|
||||
@ -61,18 +57,20 @@ sh % "hg up -q '.^'"
|
||||
sh % "echo x" >> "x"
|
||||
sh % "hg commit -qAm x4"
|
||||
sh % "hg push -q --to project/bookmark --create"
|
||||
sh % "hg smartlog -T '{rev} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o 2 default/master
|
||||
sh % "hg smartlog -T '{desc} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o x3 remote/master1
|
||||
│
|
||||
│ @ 3 default/project/bookmark
|
||||
│ @ x4
|
||||
├─╯
|
||||
o 0 mybook"""
|
||||
o x1 mybook"""
|
||||
|
||||
sh % "hg up '.^'" == "1 files updated, 0 files merged, 0 files removed, 0 files unresolved"
|
||||
sh % "hg smartlog -T '{rev} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o 2 default/master
|
||||
sh % "hg smartlog -T '{desc} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o x3 remote/master1
|
||||
│
|
||||
@ 0 mybook"""
|
||||
│ o x4
|
||||
├─╯
|
||||
@ x1 mybook"""
|
||||
(
|
||||
sh % "cat"
|
||||
<< r"""
|
||||
@ -82,10 +80,12 @@ names=project/bookmark
|
||||
"""
|
||||
>> "$HGRCPATH"
|
||||
)
|
||||
sh % "hg smartlog -T '{rev} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o 3 default/project/bookmark
|
||||
sh % "hg smartlog -T '{desc} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o x3 remote/master1
|
||||
│
|
||||
@ 0 mybook"""
|
||||
│ o x4
|
||||
├─╯
|
||||
@ x1 mybook"""
|
||||
(
|
||||
sh % "cat"
|
||||
<< r"""
|
||||
@ -94,9 +94,9 @@ names=master project/bookmark
|
||||
"""
|
||||
>> "$HGRCPATH"
|
||||
)
|
||||
sh % "hg smartlog -T '{rev} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o 2 default/master
|
||||
sh % "hg smartlog -T '{desc} {bookmarks} {remotebookmarks}'" == r"""
|
||||
o x3 remote/master1
|
||||
│
|
||||
│ o 3 default/project/bookmark
|
||||
│ o x4
|
||||
├─╯
|
||||
@ 0 mybook"""
|
||||
@ x1 mybook"""
|
||||
|
@ -348,7 +348,7 @@ def setconfig(*args):
|
||||
|
||||
|
||||
def setmodernconfig():
|
||||
enable("remotenames", "amend", "journal", "blackbox")
|
||||
enable("remotenames", "amend", "journal", "blackbox", "infinitepush")
|
||||
setconfig(
|
||||
"experimental.narrow-heads=true",
|
||||
"visibility.enabled=true",
|
||||
@ -357,6 +357,22 @@ def setmodernconfig():
|
||||
"mutation.date=0 0",
|
||||
"experimental.evolution=obsolete",
|
||||
"remotenames.rename.default=remote",
|
||||
"remotenames.hoist=remote",
|
||||
"remotenames.selectivepull=True",
|
||||
"remotenames.selectivepulldefault=master",
|
||||
"experimental.changegroup3=True",
|
||||
)
|
||||
|
||||
|
||||
def setmodernclient():
|
||||
setmodernconfig()
|
||||
from .. import testtmp # avoid side effect
|
||||
|
||||
open(os.path.join(testtmp.TESTTMP, ".eagerepo"), "w+").write("")
|
||||
setconfig(
|
||||
"clone.force-edenapi-clonedata=True",
|
||||
"remotefilelog.http=True",
|
||||
"treemanifest.http=True",
|
||||
)
|
||||
|
||||
|
||||
@ -364,6 +380,8 @@ def configure(*args):
|
||||
for arg in args:
|
||||
if arg == "dummyssh":
|
||||
setconfig("ui.ssh={}".format(DUMMYSSH))
|
||||
elif arg == "modernclient":
|
||||
setmodernclient()
|
||||
else:
|
||||
raise RuntimeError("Unrecognised configure: {}".format(arg))
|
||||
|
||||
@ -383,6 +401,25 @@ def newrepo(name=None):
|
||||
cd(path)
|
||||
|
||||
|
||||
def newclientrepo(name=None, server=None, *bookmarks):
|
||||
from .. import testtmp # avoid side effect
|
||||
|
||||
if name is None:
|
||||
global _newrepoid
|
||||
_newrepoid += 1
|
||||
name = "repo%s" % _newrepoid
|
||||
path = os.path.join(testtmp.TESTTMP, name)
|
||||
if server is None:
|
||||
server = "test:%s_server" % name
|
||||
hgexcept("clone", server, path)
|
||||
|
||||
cd(path)
|
||||
for bookmark in bookmarks:
|
||||
hgexcept("pull", "-q", "-B", bookmark)
|
||||
hg("up", "-q", "tip")
|
||||
rm(os.path.join(path, ".hg", "blackbox*"))
|
||||
|
||||
|
||||
def drawdag(*args, **kwargs):
|
||||
result = hg("debugdrawdag", *args, **kwargs)
|
||||
for line in hg("book", "-T", "{bookmark}={node}\n").splitlines():
|
||||
|
Loading…
Reference in New Issue
Block a user