Update switch hook tests
This commit is contained in:
parent
deea5f11b3
commit
1dca969a14
2 changed files with 76 additions and 77 deletions
|
@ -58,75 +58,5 @@
|
|||
(expect (kill-buffer (get-buffer-create "a"))))
|
||||
|
||||
(it "shouldn't kill the fallback buffer"
|
||||
(expect (not (kill-buffer (doom-fallback-buffer))))))
|
||||
|
||||
|
||||
(describe "switch hooks"
|
||||
:var (before-hook after-hook a b)
|
||||
(before-each
|
||||
(setq a (switch-to-buffer (get-buffer-create "a"))
|
||||
b (get-buffer-create "b"))
|
||||
(spy-on 'before-hook)
|
||||
(spy-on 'after-hook)
|
||||
(doom|init-custom-hooks))
|
||||
(after-each
|
||||
(doom|init-custom-hooks 'disable)
|
||||
(kill-buffer a)
|
||||
(kill-buffer b))
|
||||
|
||||
|
||||
(describe "switch-buffer"
|
||||
:var (doom-exit-buffer-hook
|
||||
doom-enter-buffer-hook)
|
||||
(before-each
|
||||
(setq doom-exit-buffer-hook '(before-hook)
|
||||
doom-enter-buffer-hook '(after-hook)))
|
||||
(after-each
|
||||
(setq doom-exit-buffer-hook nil
|
||||
doom-enter-buffer-hook nil))
|
||||
|
||||
(it "should trigger when switching buffers"
|
||||
(switch-to-buffer b)
|
||||
(switch-to-buffer a)
|
||||
(switch-to-buffer b)
|
||||
(expect 'before-hook :to-have-been-called-times 3)
|
||||
(expect 'after-hook :to-have-been-called-times 3))
|
||||
|
||||
(it "should trigger only once on the same buffer"
|
||||
(switch-to-buffer b)
|
||||
(switch-to-buffer b)
|
||||
(switch-to-buffer a)
|
||||
(expect 'before-hook :to-have-been-called-times 2)
|
||||
(expect 'after-hook :to-have-been-called-times 2)))
|
||||
|
||||
|
||||
(describe "switch-window"
|
||||
:var (doom-exit-window-hook
|
||||
doom-enter-window-hook
|
||||
x y)
|
||||
(before-each
|
||||
(delete-other-windows)
|
||||
(setq x (get-buffer-window a)
|
||||
y (save-selected-window (split-window)))
|
||||
(with-selected-window y
|
||||
(switch-to-buffer b))
|
||||
(select-window x)
|
||||
(spy-calls-reset 'before-hook)
|
||||
(spy-calls-reset 'after-hook)
|
||||
(setq doom-exit-window-hook '(before-hook)
|
||||
doom-enter-window-hook '(after-hook)))
|
||||
|
||||
(it "should trigger when switching windows"
|
||||
(select-window y)
|
||||
(select-window x)
|
||||
(select-window y)
|
||||
(expect 'before-hook :to-have-been-called-times 3)
|
||||
(expect 'after-hook :to-have-been-called-times 3))
|
||||
|
||||
(it "should trigger only once on the same window"
|
||||
(select-window y)
|
||||
(select-window y)
|
||||
(select-window x)
|
||||
(expect 'before-hook :to-have-been-called-times 2)
|
||||
(expect 'after-hook :to-have-been-called-times 2)))))
|
||||
(expect (not (kill-buffer (doom-fallback-buffer)))))))
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue