counsel-projectile/tests/test-counsel-projectile.el
Maciej Szlosarczyk a2c0085cf1
Some checks failed
/ Test on 28.2 (push) Failing after 3m21s
/ Test on snapshot (push) Waiting to run
/ Test on 29.4 (push) Has been cancelled
Use format instead of hardcode string
2024-09-02 12:50:03 +03:00

73 lines
2.3 KiB
EmacsLisp

;;; test-counsel-projectile.el --- Buttercup tests for counsel-projectile -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(require 'counsel-projectile)
(require 'buttercup)
;; Example test!
(describe "counsel-projectile-switch-project"
(before-each
(spy-on 'ivy-read)
(spy-on 'projectile-project-root :and-return-value "/usr/fake-project")
(setq
projectile-known-projects '("/usr/fake-project" "~/some-project")
counsel-projectile-switch-project-action 'counsel-projectile-switch-project-action))
(it "calls ivy-read"
(counsel-projectile-switch-project)
(expect 'projectile-project-root :to-have-been-called)
(expect
'ivy-read
:to-have-been-called-with
"[fake-project] Switch to project: "
'("/usr/fake-project" "~/some-project")
:preselect "/usr/fake-project"
:action 'counsel-projectile-switch-project-action
:require-match t
:sort nil
:caller 'counsel-projectile-switch-project)))
(describe "counsel-projectile-rg"
(before-each
(spy-on 'ivy-read)
(spy-on 'projectile-project-root :and-return-value "/usr/fake-project"))
(it "calls ivy-read"
(counsel-projectile-rg)
(expect
'ivy-read
:to-have-been-called-with
"[fake-project] rg: "
'counsel-ag-function
:initial-input nil
:dynamic-collection t
:keymap '(keymap
(24 keymap (4 . counsel-cd))
(67108903 . swiper-avy)
(27 keymap (113 . counsel-git-grep-query-replace))
(12 . ivy-call-and-recenter))
:history 'counsel-git-grep-history
:action 'counsel-git-grep-action
:require-match t
:caller 'counsel-rg)))
(describe "counsel-projectile-find-file"
(before-each
(spy-on 'ivy-read)
(spy-on 'projectile-project-root :and-return-value user-emacs-directory))
(it "calls ivy-read"
(counsel-projectile-find-file)
(expect
'ivy-read
:to-have-been-called-with (format "[%s] Find file: " emacs-version)
nil
:matcher 'counsel-projectile--find-file-matcher
:require-match t
:sort nil
:action counsel-projectile-find-file-action
:caller 'counsel-projectile-find-file)))
;; Local Variables:
;; no-byte-compile: t
;; End:
;;; test-counsel-projectile.el ends here