]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix a vc test for Breezy by setting $HOME
authorStefan Kangas <stefankangas@gmail.com>
Sun, 2 Mar 2025 12:26:43 +0000 (13:26 +0100)
committerEshel Yaron <me@eshelyaron.com>
Tue, 4 Mar 2025 21:01:38 +0000 (22:01 +0100)
* test/lisp/vc/vc-tests.el (vc--fix-home-for-bzr): New macro.
(vc-test--create-repo, vc-test--register, vc-test--working-revision)
(vc-test--checkout-model, vc-test--rename-file)
(vc-test--version-diff): Fix test for Breezy by setting HOME to a
temporary directory.  (Bug#70195)

(cherry picked from commit e4d8095c3dccc4f37be54b083d8b511fac0142b3)

test/lisp/vc/vc-tests.el

index 62938c41227ea6acce1be440b645b9ed14542ea4..49a6f2c38f5f029cd2b4f6811e45be3ed195bdd6 100644 (file)
@@ -177,6 +177,12 @@ For backends which don't support it, it is emulated."
 
    (t (vc-create-repo backend))))
 
+(defmacro vc--fix-home-for-bzr (tempdir)
+  ;; See the comment in `vc-bzr-test-bug9726'.
+  '(when (eq backend 'Bzr)
+     (push (format "BZR_HOME=%s" tempdir) process-environment)
+     (push (format "HOME=%s" tempdir) process-environment)))
+
 (defun vc-test--create-repo (backend)
   "Create a test repository in `default-directory', a temporary directory."
   (ert-with-temp-directory tempdir
@@ -187,10 +193,7 @@ For backends which don't support it, it is emulated."
              (make-temp-name "vc-test") temporary-file-directory)))
           (process-environment process-environment)
           vc-test--cleanup-hook)
-      (when (eq backend 'Bzr)
-        (setq process-environment (cons (format "BZR_HOME=%s" tempdir)
-                                        process-environment)))
-
+      (vc--fix-home-for-bzr tempdir)
       (unwind-protect
           (progn
             ;; Cleanup.
@@ -242,9 +245,7 @@ This checks also `vc-backend' and `vc-responsible-backend'."
              (make-temp-name "vc-test") temporary-file-directory)))
           (process-environment process-environment)
           vc-test--cleanup-hook)
-      (when (eq backend 'Bzr)
-        (setq process-environment (cons (format "BZR_HOME=%s" tempdir)
-                                        process-environment)))
+      (vc--fix-home-for-bzr tempdir)
       (unwind-protect
           (progn
             ;; Cleanup.
@@ -323,9 +324,7 @@ This checks also `vc-backend' and `vc-responsible-backend'."
              (make-temp-name "vc-test") temporary-file-directory)))
           (process-environment process-environment)
           vc-test--cleanup-hook)
-      (when (eq backend 'Bzr)
-        (setq process-environment (cons (format "BZR_HOME=%s" tempdir)
-                                        process-environment)))
+      (vc--fix-home-for-bzr tempdir)
       (unwind-protect
           (progn
             ;; Cleanup.
@@ -388,10 +387,7 @@ This checks also `vc-backend' and `vc-responsible-backend'."
              (make-temp-name "vc-test") temporary-file-directory)))
           (process-environment process-environment)
           vc-test--cleanup-hook)
-      (when (eq backend 'Bzr)
-        (setq process-environment (cons (format "BZR_HOME=%s" tempdir)
-                                        process-environment)))
-
+      (vc--fix-home-for-bzr tempdir)
       (unwind-protect
           (progn
             ;; Cleanup.
@@ -466,10 +462,7 @@ This checks also `vc-backend' and `vc-responsible-backend'."
              (make-temp-name "vc-test") temporary-file-directory)))
           (process-environment process-environment)
           vc-test--cleanup-hook)
-      (when (eq backend 'Bzr)
-        (setq process-environment (cons (format "BZR_HOME=%s" tempdir)
-                                        process-environment)))
-
+      (vc--fix-home-for-bzr tempdir)
       (unwind-protect
           (progn
             ;; Cleanup.
@@ -549,10 +542,7 @@ This checks also `vc-backend' and `vc-responsible-backend'."
              (make-temp-name "vc-test") temporary-file-directory)))
           (process-environment process-environment)
           vc-test--cleanup-hook)
-      (when (eq backend 'Bzr)
-        (setq process-environment (cons (format "BZR_HOME=%s" tempdir)
-                                        process-environment)))
-
+      (vc--fix-home-for-bzr tempdir)
       (unwind-protect
           (progn
             ;; Cleanup.
@@ -601,9 +591,7 @@ This checks also `vc-backend' and `vc-responsible-backend'."
               (make-temp-name "vc-test") temporary-file-directory))))
           (process-environment process-environment)
           vc-test--cleanup-hook)
-      (when (eq backend 'Bzr)
-        (setq process-environment (cons (format "BZR_HOME=%s" tempdir)
-                                        process-environment)))
+      (vc--fix-home-for-bzr tempdir)
       ;; git tries various approaches to guess a user name and email,
       ;; which can fail depending on how the system is configured.
       ;; Eg if the user account has no GECOS, git commit can fail with