dirstate-tree: Add a dirstate-v1-tree variant of some tests
The `dirstate-v1` variant has the previous behavior.
`dirstate-v1-tree` uses the same format on disk, but uses the new
`DirstateMap` with a tree data structure and the new `status` algorithm.
These were untested so far.
Differential Revision: https://phab.mercurial-scm.org/D10698
--- a/tests/test-dirstate-race.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-dirstate-race.t Mon May 03 20:04:19 2021 +0200
@@ -1,3 +1,11 @@
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
$ hg init repo
$ cd repo
$ echo a > a
--- a/tests/test-dirstate-race2.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-dirstate-race2.t Mon May 03 20:04:19 2021 +0200
@@ -1,3 +1,11 @@
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
Checking the size/permissions/file-type of files stored in the
dirstate after an update where the files are changed concurrently
outside of hg's control.
--- a/tests/test-dirstate.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-dirstate.t Mon May 03 20:04:19 2021 +0200
@@ -1,3 +1,11 @@
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
------ Test dirstate._dirs refcounting
$ hg init t
--- a/tests/test-hgignore.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-hgignore.t Mon May 03 20:04:19 2021 +0200
@@ -1,3 +1,11 @@
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
$ hg init ignorerepo
$ cd ignorerepo
--- a/tests/test-permissions.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-permissions.t Mon May 03 20:04:19 2021 +0200
@@ -1,5 +1,13 @@
#require unix-permissions no-root reporevlogstore
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
$ hg init t
$ cd t
--- a/tests/test-purge.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-purge.t Mon May 03 20:04:19 2021 +0200
@@ -1,3 +1,11 @@
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
init
$ hg init t
--- a/tests/test-status.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-status.t Mon May 03 20:04:19 2021 +0200
@@ -1,3 +1,11 @@
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
$ hg init repo1
$ cd repo1
$ mkdir a b a/1 b/1 b/2
--- a/tests/test-symlinks.t Fri May 07 22:06:25 2021 -0400
+++ b/tests/test-symlinks.t Mon May 03 20:04:19 2021 +0200
@@ -1,5 +1,13 @@
#require symlink
+#testcases dirstate-v1 dirstate-v1-tree
+
+#if dirstate-v1-tree
+#require rust
+ $ echo '[experimental]' >> $HGRCPATH
+ $ echo 'dirstate-tree.in-memory=1' >> $HGRCPATH
+#endif
+
== tests added in 0.7 ==
$ hg init test-symlinks-0.7; cd test-symlinks-0.7;