auto-upgrade: add a test case with no permission to lock the repository
This show the current behavior when the repository is unlockable.
The current behavior is to abort, which is probably not great. Now that we have
a proper test, we can think about the behavior we want in a later changeset.
Differential Revision: https://phab.mercurial-scm.org/D12615
--- a/tests/test-upgrade-repo.t Tue Mar 22 14:14:52 2022 +0100
+++ b/tests/test-upgrade-repo.t Tue Apr 05 03:36:31 2022 +0200
@@ -2061,3 +2061,18 @@
tracked-hint: no
share-safe: yes
+Attempting Auto-upgrade on a read-only repository
+-------------------------------------------------
+
+ $ chmod -R a-w auto-upgrade
+
+ $ hg status -R auto-upgrade \
+ > --config format.use-dirstate-v2.automatic-upgrade-of-mismatching-repositories=yes \
+ > --config format.use-dirstate-v2=no
+ abort: could not lock working directory of auto-upgrade: Permission denied
+ [20]
+ $ hg debugformat -R auto-upgrade | grep dirstate-v2
+ dirstate-v2: yes
+
+ $ chmod -R u+w auto-upgrade
+