Rewrite and move doom-resolve-vim-path tests
This commit is contained in:
parent
b4aadb100e
commit
e8ff048c9b
2 changed files with 51 additions and 42 deletions
|
@ -4,14 +4,14 @@
|
||||||
;; --- Helpers ----------------------------
|
;; --- Helpers ----------------------------
|
||||||
|
|
||||||
;; `doom--resolve-path-forms'
|
;; `doom--resolve-path-forms'
|
||||||
(def-test! resolve-paths
|
(def-test! resolve-path-forms
|
||||||
(should
|
(should
|
||||||
(equal (doom--resolve-path-forms '(and "fileA" "fileB"))
|
(equal (doom--resolve-path-forms '(and "fileA" "fileB"))
|
||||||
'(and (file-exists-p (expand-file-name "fileA" (doom-project-root)))
|
'(and (file-exists-p (expand-file-name "fileA" (doom-project-root)))
|
||||||
(file-exists-p (expand-file-name "fileB" (doom-project-root)))))))
|
(file-exists-p (expand-file-name "fileB" (doom-project-root)))))))
|
||||||
|
|
||||||
;; `doom--resolve-hook-forms'
|
;; `doom--resolve-hook-forms'
|
||||||
(def-test! resolve-hooks
|
(def-test! resolve-hook-forms
|
||||||
(should (equal (doom--resolve-hook-forms '(js2-mode haskell-mode))
|
(should (equal (doom--resolve-hook-forms '(js2-mode haskell-mode))
|
||||||
'(js2-mode-hook haskell-mode-hook)))
|
'(js2-mode-hook haskell-mode-hook)))
|
||||||
(should (equal (doom--resolve-hook-forms '(quote (js2-mode-hook haskell-mode-hook)))
|
(should (equal (doom--resolve-hook-forms '(quote (js2-mode-hook haskell-mode-hook)))
|
||||||
|
@ -32,6 +32,48 @@
|
||||||
(should (equal (doom-enlist 'a) '(a)))
|
(should (equal (doom-enlist 'a) '(a)))
|
||||||
(should (equal (doom-enlist '(a)) '(a))))
|
(should (equal (doom-enlist '(a)) '(a))))
|
||||||
|
|
||||||
|
;; `doom-resolve-vim-path'
|
||||||
|
(def-test! resolve-vim-path
|
||||||
|
(cl-flet ((do-it #'doom-resolve-vim-path))
|
||||||
|
;; file modifiers
|
||||||
|
(let ((buffer-file-name "~/.emacs.d/test/modules/feature/test-evil.el")
|
||||||
|
(default-directory "~/.emacs.d/test/modules/"))
|
||||||
|
(should (equal (do-it "%") "feature/test-evil.el"))
|
||||||
|
(should (equal (do-it "%:r") "feature/test-evil"))
|
||||||
|
(should (equal (do-it "%:r.elc") "feature/test-evil.elc"))
|
||||||
|
(should (equal (do-it "%:e") "el"))
|
||||||
|
(should (equal (do-it "%:p") (expand-file-name buffer-file-name)))
|
||||||
|
(should (equal (do-it "%:h") "feature"))
|
||||||
|
(should (equal (do-it "%:t") "test-evil.el"))
|
||||||
|
(should (equal (do-it "%:.") "feature/test-evil.el"))
|
||||||
|
(should (equal (do-it "%:~") "~/.emacs.d/test/modules/feature/test-evil.el"))
|
||||||
|
(should (equal (file-truename (do-it "%:p"))
|
||||||
|
(file-truename buffer-file-name))))
|
||||||
|
;; nested file modifiers
|
||||||
|
(let ((buffer-file-name "~/vim/src/version.c")
|
||||||
|
(default-directory "~/vim/"))
|
||||||
|
(should (equal (do-it "%:p") (expand-file-name "~/vim/src/version.c")))
|
||||||
|
(should (equal (do-it "%:p:.") "src/version.c"))
|
||||||
|
(should (equal (do-it "%:p:~") "~/vim/src/version.c"))
|
||||||
|
(should (equal (do-it "%:h") "src"))
|
||||||
|
(should (equal (do-it "%:p:h") (expand-file-name "~/vim/src")))
|
||||||
|
(should (equal (do-it "%:p:h:h") (expand-file-name "~/vim")))
|
||||||
|
(should (equal (do-it "%:t") "version.c"))
|
||||||
|
(should (equal (do-it "%:p:t") "version.c"))
|
||||||
|
(should (equal (do-it "%:r") "src/version"))
|
||||||
|
(should (equal (do-it "%:p:r") (expand-file-name "~/vim/src/version")))
|
||||||
|
(should (equal (do-it "%:t:r") "version")))
|
||||||
|
;; empty file modifiers
|
||||||
|
(let (buffer-file-name default-directory)
|
||||||
|
(should (equal (do-it "%") ""))
|
||||||
|
(should (equal (do-it "%:r") ""))
|
||||||
|
(should (equal (do-it "%:e") ""))
|
||||||
|
(should (equal (do-it "%:h") ""))
|
||||||
|
(should (equal (do-it "%:t") ""))
|
||||||
|
(should (equal (do-it "%:.") ""))
|
||||||
|
(should (equal (do-it "%:~") ""))
|
||||||
|
(should (equal (do-it "%:P") "")))))
|
||||||
|
|
||||||
|
|
||||||
;; --- Macros -----------------------------
|
;; --- Macros -----------------------------
|
||||||
|
|
||||||
|
|
|
@ -3,52 +3,19 @@
|
||||||
|
|
||||||
(require! :feature evil)
|
(require! :feature evil)
|
||||||
|
|
||||||
;; `+evil*ex-replace-special-filenames'
|
;; `evil-ex-replace-special-filenames'
|
||||||
|
;; NOTE The majority of this function is tested in core/test/core-lib.el, this
|
||||||
|
;; only tests the evil-mode-specific functionality.
|
||||||
(def-test! file-modifiers
|
(def-test! file-modifiers
|
||||||
(cl-flet ((do-it #'+evil*ex-replace-special-filenames))
|
(cl-flet ((do-it #'evil-ex-replace-special-filenames))
|
||||||
(let ((buffer-file-name "~/.emacs.d/test/modules/feature/test-evil.el")
|
(let ((buffer-file-name "~/.emacs.d/test/modules/feature/test-evil.el")
|
||||||
(default-directory "~/.emacs.d/test/modules/"))
|
(default-directory "~/.emacs.d/test/modules/"))
|
||||||
(should (equal (do-it "%") "feature/test-evil.el"))
|
|
||||||
(should (equal (do-it "%:r") "feature/test-evil"))
|
|
||||||
(should (equal (do-it "%:r.elc") "feature/test-evil.elc"))
|
|
||||||
(should (equal (do-it "%:e") "el"))
|
|
||||||
(should (equal (do-it "%:p") (expand-file-name buffer-file-name)))
|
|
||||||
(should (equal (do-it "%:h") "feature"))
|
|
||||||
(should (equal (do-it "%:t") "test-evil.el"))
|
|
||||||
(should (equal (do-it "%:.") "feature/test-evil.el"))
|
|
||||||
(should (equal (do-it "%:~") "~/.emacs.d/test/modules/feature/test-evil.el"))
|
|
||||||
(should (equal (do-it "%:s?e?x?") "fxature/test-evil.el"))
|
(should (equal (do-it "%:s?e?x?") "fxature/test-evil.el"))
|
||||||
(should (equal (do-it "%:gs?e?x?") "fxaturx/txst-xvil.xl"))
|
(should (equal (do-it "%:gs?e?x?") "fxaturx/txst-xvil.xl")))))
|
||||||
(should (equal (file-truename (do-it "%:p"))
|
|
||||||
(file-truename buffer-file-name))))))
|
|
||||||
|
|
||||||
(def-test! nested-file-modifiers
|
|
||||||
(cl-flet ((do-it #'+evil*ex-replace-special-filenames))
|
|
||||||
(let ((buffer-file-name "~/vim/src/version.c")
|
|
||||||
(default-directory "~/vim/"))
|
|
||||||
(should (equal (do-it "%:p") (expand-file-name "~/vim/src/version.c")))
|
|
||||||
(should (equal (do-it "%:p:.") "src/version.c"))
|
|
||||||
(should (equal (do-it "%:p:~") "~/vim/src/version.c"))
|
|
||||||
(should (equal (do-it "%:h") "src"))
|
|
||||||
(should (equal (do-it "%:p:h") (expand-file-name "~/vim/src")))
|
|
||||||
(should (equal (do-it "%:p:h:h") (expand-file-name "~/vim")))
|
|
||||||
(should (equal (do-it "%:t") "version.c"))
|
|
||||||
(should (equal (do-it "%:p:t") "version.c"))
|
|
||||||
(should (equal (do-it "%:r") "src/version"))
|
|
||||||
(should (equal (do-it "%:p:r") (expand-file-name "~/vim/src/version")))
|
|
||||||
(should (equal (do-it "%:t:r") "version")))))
|
|
||||||
|
|
||||||
(def-test! empty-file-modifiers
|
(def-test! empty-file-modifiers
|
||||||
(cl-flet ((do-it #'+evil*ex-replace-special-filenames))
|
(cl-flet ((do-it #'evil-ex-replace-special-filenames))
|
||||||
(let (buffer-file-name default-directory)
|
(let (buffer-file-name default-directory)
|
||||||
(should (equal (do-it "%") ""))
|
|
||||||
(should (equal (do-it "%:r") ""))
|
|
||||||
(should (equal (do-it "%:e") ""))
|
|
||||||
(should (equal (do-it "%:h") ""))
|
|
||||||
(should (equal (do-it "%:t") ""))
|
|
||||||
(should (equal (do-it "%:.") ""))
|
|
||||||
(should (equal (do-it "%:~") ""))
|
|
||||||
(should (equal (do-it "%:s?e?x?") ""))
|
(should (equal (do-it "%:s?e?x?") ""))
|
||||||
(should (equal (do-it "%:gs?e?x?") ""))
|
(should (equal (do-it "%:gs?e?x?") "")))))
|
||||||
(should (equal (do-it "%:P") "")))))
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue