70 lines
2.2 KiB
EmacsLisp
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
|