From fd17e50cb86d263fe8aaffffb931726c697731dd Mon Sep 17 00:00:00 2001 From: Nelson Ferreira Date: Sat, 9 Jan 2016 15:18:26 -0500 Subject: [PATCH] Add tests for file-name-directory, etc * tests/automated/lisp-tests.el: Add tests for file-name-directory, file-name-nondirectory, file-dirname, file-basename, file-name-join. Signed-off-by: Nelson Ferreira --- tests/automated/lisp-tests.el | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/tests/automated/lisp-tests.el b/tests/automated/lisp-tests.el index 92a02f6..5570fc8 100644 --- a/tests/automated/lisp-tests.el +++ b/tests/automated/lisp-tests.el @@ -1106,3 +1106,31 @@ ;; Check all-completions ignore element start with space. (Assert (not (all-completions "" '((" hidden" . "object"))))) (Assert (all-completions " " '((" hidden" . "object")))) + + +;; Check filename/path manipulations +(let ((cases '(("/usr/lib" "/usr/" "lib" "/usr" "lib" "/usr/lib") + ("/usr/lib/" "/usr/lib/" "" "/usr" "lib" "/usr/lib") + ("/usr/" "/usr/" "" "/" "usr" "/usr") + ("/usr" "/" "usr" "/" "usr" "/usr") + ("usr" nil "usr" "." "usr" "./usr") + ("/" "/" "" "/" "/" "/") + ("." nil "." "." "." "./.") + ("./" "./" "" "." "." "./.") + (".." nil ".." "." ".." "./..")))) + (mapcar #'(lambda (case) + (let* ((path (car case)) + (directory (file-name-directory path)) + (nondirectory (file-name-nondirectory path)) + (dirname (file-dirname path)) + (basename (file-basename path))) + (Assert (equal directory (nth 1 case))) + (Assert (equal nondirectory (nth 2 case))) + (Assert (equal dirname (nth 3 case))) + (Assert (equal basename (nth 4 case))) + (Assert (equal path (concat directory nondirectory))) + (Assert (equal (file-name-join directory nondirectory) + (file-name-join dirname basename))) + (Assert (equal (file-name-join directory nondirectory) (nth 5 case))) + (Assert (equal (file-name-join dirname basename) (nth 5 case))))) + cases)) -- 2.25.1