test: add general Emacs hook counter

Replace `notmuch-hello-mode-hook-counter' with general `hook-counter'
and `add-hook-counter' functions to allow counting calls for any hook.
This commit is contained in:
Dmitry Kurochkin 2011-12-21 22:18:25 +04:00 committed by David Bremner
parent 7edf9e2765
commit eb8638ba2e

View file

@ -62,11 +62,16 @@ running, quit if it terminated."
(kill-emacs) (kill-emacs)
(run-at-time "1 min" nil 'orphan-watchdog pid))) (run-at-time "1 min" nil 'orphan-watchdog pid)))
(defun notmuch-hello-mode-hook-counter () (defun hook-counter (hook)
"Count how many times `notmuch-hello-mode-hook' is called. "Count how many times a hook is called. Increments
Increments `notmuch-hello-mode-hook-counter' variable value if it `hook'-counter variable value if it is bound, otherwise does
is bound, otherwise does nothing." nothing."
(if (boundp 'notmuch-hello-mode-hook-counter) (let ((counter (intern (concat (symbol-name hook) "-counter"))))
(setq notmuch-hello-mode-hook-counter (if (boundp counter)
(1+ notmuch-hello-mode-hook-counter)))) (set counter (1+ (symbol-value counter))))))
(add-hook 'notmuch-hello-mode-hook 'notmuch-hello-mode-hook-counter)
(defun add-hook-counter (hook)
"Add hook to count how many times `hook' is called."
(add-hook hook (apply-partially 'hook-counter hook)))
(add-hook-counter 'notmuch-hello-mode-hook)