diff options
Diffstat (limited to 'tests/testutil-events.el')
| -rw-r--r-- | tests/testutil-events.el | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/tests/testutil-events.el b/tests/testutil-events.el index 0ee3d57..91fdcfc 100644 --- a/tests/testutil-events.el +++ b/tests/testutil-events.el @@ -128,9 +128,9 @@ Example: (list (cons ts-str time)) '((10 . medium))))) (should (string= \"Meeting\" (cdr (assoc 'title event)))))" - `((times . ,time-alist) - (title . ,title) - (intervals . ,(or intervals '((10 . medium)))))) + (chime--make-event time-alist + title + (or intervals '((10 . medium))))) (defun test-make-simple-event (title time &optional interval-minutes severity) "Create simple event data structure with single time and interval. @@ -182,6 +182,19 @@ Example: `(let ((,events-var (test-gather-events-from-content ,content))) ,@body)) +(defmacro with-chime-tooltip-from-content (content tooltip-var &rest body) + "Create org CONTENT, update modeline events, and bind TOOLTIP-VAR. +The helper keeps modeline globals dynamically isolated so tests can assert on +tooltip text without leaking `chime--upcoming-events' or `chime-modeline-string'." + (declare (indent 2)) + (let ((events-var (make-symbol "events"))) + `(let ((chime--upcoming-events nil) + (chime-modeline-string nil)) + (with-gathered-events ,content ,events-var + (chime--update-modeline ,events-var) + (let ((,tooltip-var (chime--make-tooltip chime--upcoming-events))) + ,@body))))) + ;;; Setup/Teardown Helpers (defun test-standard-setup () |
