diff options
-rw-r--r-- | lisp/emacs-lisp/ert-x.el | 4 | ||||
-rw-r--r-- | test/lisp/emacs-lisp/ert-x-tests.el | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/ert-x.el b/lisp/emacs-lisp/ert-x.el index 752ac3bfdd4..ffeead4179d 100644 --- a/lisp/emacs-lisp/ert-x.el +++ b/lisp/emacs-lisp/ert-x.el @@ -445,7 +445,9 @@ See also `ert-with-temp-directory'." (or (macroexp-file-name) buffer-file-name))))) `(let* ((,temp-file (,(if directory 'file-name-as-directory 'identity) (make-temp-file ,prefix ,directory ,suffix ,text))) - (,name ,temp-file)) + (,name ,(if directory + `(file-name-as-directory ,temp-file) + temp-file))) (unwind-protect (progn ,@body) (ignore-errors diff --git a/test/lisp/emacs-lisp/ert-x-tests.el b/test/lisp/emacs-lisp/ert-x-tests.el index d7c0985b13e..9baa9941586 100644 --- a/test/lisp/emacs-lisp/ert-x-tests.el +++ b/test/lisp/emacs-lisp/ert-x-tests.el @@ -320,7 +320,8 @@ desired effect." (ert-with-temp-directory dir (setq saved dir) (should (file-exists-p dir)) - (should (file-directory-p dir))) + (should (file-directory-p dir)) + (should (equal dir (file-name-as-directory dir)))) (should-not (file-exists-p saved)))) (ert-deftest ert-x-tests-with-temp-directory/text-signals-error () |