counsel-projectile/tests/test-counsel-projectile.el
Maciej Szlosarczyk 5ac22ced29
Some checks failed
/ Test on 28.2 (push) Failing after 3m14s
/ Test on 29.1 (push) Failing after 3m22s
/ Test on snapshot (push) Failing after 6m16s
Remove with-simulated-input
2024-08-20 08:41:16 +03:00

70 lines
2.2 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 "[29.1] Find file: "
nil
:matcher 'counsel-projectile--find-file-matcher
:require-match t
:sort nil
:action counsel-projectile-find-file-action
:caller 'counsel-projectile-find-file)))
;;; test-counsel-projectile.el ends here