D3060: tests: disallow using simple store repo with bundlerepo
indygreg (Gregory Szorc)
phabricator at mercurial-scm.org
Wed Apr 4 01:57:33 UTC 2018
indygreg created this revision.
Herald added a reviewer: durin42.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
bundlerepo is... going to be difficult to port to an alternate
store because it assumes revlogs for storage and essentially
overlays the contents of a bundle onto a fake revlog-like
primitive. It will be a good test case for our eventual new
storage interface.
Refactoring bundlerepo to make it work with non-revlog storage is
going to be a bit of work. So for now, let's refuse to use the
simple store repo when a bundlerepo is in play.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D3060
AFFECTED FILES
tests/simplestorerepo.py
tests/test-manifest.t
tests/test-mq-pull-from-bundle.t
tests/test-narrow-strip.t
tests/test-obsolete.t
tests/test-shelve.t
tests/test-treemanifest.t
CHANGE DETAILS
diff --git a/tests/test-treemanifest.t b/tests/test-treemanifest.t
--- a/tests/test-treemanifest.t
+++ b/tests/test-treemanifest.t
@@ -325,6 +325,8 @@
rev linkrev nodeid p1 p2
0 4 064927a0648a 000000000000 000000000000
1 5 25ecb8cb8618 000000000000 000000000000
+
+#if no-reposimplestore
$ hg incoming .hg/strip-backup/*
comparing with .hg/strip-backup/*-backup.hg (glob)
searching for changes
@@ -334,6 +336,8 @@
date: Thu Jan 01 00:00:00 1970 +0000
summary: modify dir1/a
+#endif
+
$ hg unbundle .hg/strip-backup/*
adding changesets
adding manifests
diff --git a/tests/test-shelve.t b/tests/test-shelve.t
--- a/tests/test-shelve.t
+++ b/tests/test-shelve.t
@@ -771,10 +771,12 @@
$ hg shelve
shelved as default
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+#if no-reposimplestore
$ hg log -G --template '{rev} {desc|firstline} {author}' -R bundle://.hg/shelved/default.hg -r 'bundle()'
o 4 changes to: commit stuff shelve at localhost
|
~
+#endif
$ hg log -G --template '{rev} {desc|firstline} {author}'
@ 3 commit stuff test
|
diff --git a/tests/test-obsolete.t b/tests/test-obsolete.t
--- a/tests/test-obsolete.t
+++ b/tests/test-obsolete.t
@@ -1244,6 +1244,7 @@
o 0:4b34ecfb0d56 (draft) [ ] A
+#if no-reposimplestore
$ hg incoming ../repo-bundleoverlay --bundle ../bundleoverlay.hg
comparing with ../repo-bundleoverlay
searching for changes
@@ -1256,6 +1257,7 @@
|/
o 0:4b34ecfb0d56 (draft) [ ] A
+#endif
#if serve
diff --git a/tests/test-narrow-strip.t b/tests/test-narrow-strip.t
--- a/tests/test-narrow-strip.t
+++ b/tests/test-narrow-strip.t
@@ -128,6 +128,8 @@
$ hg strip 0
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
saved backup bundle to $TESTTMP/narrow/.hg/strip-backup/*-backup.hg (glob)
+
+#if no-reposimplestore
$ hg incoming .hg/strip-backup/*-backup.hg
comparing with .hg/strip-backup/*-backup.hg (glob)
changeset: 0:* (glob)
@@ -150,6 +152,8 @@
date: Thu Jan 01 00:00:00 1970 +0000
summary: modify inside
+#endif
+
$ hg unbundle .hg/strip-backup/*-backup.hg
adding changesets
adding manifests
diff --git a/tests/test-mq-pull-from-bundle.t b/tests/test-mq-pull-from-bundle.t
--- a/tests/test-mq-pull-from-bundle.t
+++ b/tests/test-mq-pull-from-bundle.t
@@ -1,3 +1,5 @@
+#require no-reposimplestore
+
$ cat <<EOF >> $HGRCPATH
> [extensions]
> mq=
diff --git a/tests/test-manifest.t b/tests/test-manifest.t
--- a/tests/test-manifest.t
+++ b/tests/test-manifest.t
@@ -1,3 +1,5 @@
+#require no-reposimplestore
+
Source bundle was generated with the following script:
# hg init
diff --git a/tests/simplestorerepo.py b/tests/simplestorerepo.py
--- a/tests/simplestorerepo.py
+++ b/tests/simplestorerepo.py
@@ -24,6 +24,7 @@
)
from mercurial import (
ancestor,
+ bundlerepo,
error,
filelog,
mdiff,
@@ -587,6 +588,9 @@
if not repo.local():
return
+ if isinstance(repo, bundlerepo.bundlerepository):
+ raise error.Abort(_('cannot use simple store with bundlerepo'))
+
class simplestorerepo(repo.__class__):
def file(self, f):
return filestorage(self.svfs, f)
To: indygreg, durin42, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list