]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix handling of folder "+/" in MH-E
authorMike Kupfer <mkupfer@alum.berkeley.edu>
Tue, 16 Nov 2021 06:03:54 +0000 (22:03 -0800)
committerStephen Gildea <stepheng+emacs@gildea.com>
Tue, 16 Nov 2021 06:03:54 +0000 (22:03 -0800)
* lisp/mh-e/mh-utils.el (mh-sub-folders): Fix handling of "+/".
* test/lisp/mh-e/mh-utils-tests.el
(mh-folder-completion-function-08-plus-slash)
(mh-folder-completion-function-09-plus-slash-tmp):
Fix errors made importing tests from mh-unit.el; remove declaration
that these tests are expected to fail.

lisp/mh-e/mh-utils.el
test/lisp/mh-e/mh-utils-tests.el

index feebf6416fec9340056ea21e5d1d8c04ad43b376..1c322b803402ec7e0d2f50561f597818fc66b097 100644 (file)
@@ -531,7 +531,12 @@ results of the actual folders call.
 If optional argument ADD-TRAILING-SLASH-FLAG is non-nil then a
 slash is added to each of the sub-folder names that may have
 nested folders within them."
-  (let* ((folder (mh-normalize-folder-name folder nil nil t))
+  ;; In most cases we want to remove a trailing slash.  We keep the
+  ;; slash for "+/", because it refers to folders in the system root
+  ;; directory, whereas "+" refers to the user's top-level folders.
+  (let* ((folder (mh-normalize-folder-name folder nil
+                                           (string= folder "+/")
+                                           t))
          (match (gethash folder mh-sub-folders-cache 'no-result))
          (sub-folders (cond ((eq match 'no-result)
                              (setf (gethash folder mh-sub-folders-cache)
index d9a26e58959ff109656fc6ef0392226d75cf113b..0df4d44646fe2ecfb43cc4c96387374bfdc0af64 100644 (file)
@@ -437,8 +437,7 @@ and the `should' macro requires idempotent evaluation anyway."
 
 (ert-deftest mh-folder-completion-function-08-plus-slash ()
   "Test `mh-folder-completion-function' with `+/'."
-  :expected-result :failed              ;to be fixed in a patch by mkupfer
-  (mh-test-folder-completion-1 "+/" "+/" "tmp/" nil)
+  (mh-test-folder-completion-1 "+/" "+/" "tmp/" t)
     ;; case "bb"
     (with-mh-test-env
       (should (equal nil
@@ -447,8 +446,7 @@ and the `should' macro requires idempotent evaluation anyway."
 
 (ert-deftest mh-folder-completion-function-09-plus-slash-tmp ()
   "Test `mh-folder-completion-function' with `+/tmp'."
-  :expected-result :failed              ;to be fixed in a patch by mkupfer
-  (mh-test-folder-completion-1 "+/tmp" "+/tmp" "tmp/" t))
+  (mh-test-folder-completion-1 "+/tmp" "+/tmp/" "tmp/" t))
 
 (ert-deftest mh-folder-completion-function-10-plus-slash-abs-folder ()
   "Test `mh-folder-completion-function' with `+/abso-folder'."