diff options
| -rw-r--r-- | tests/Makefile | 2 | ||||
| -rw-r--r-- | tests/test-integration-chime-mode.el | 6 | ||||
| -rw-r--r-- | tests/test-integration-recurring-events-tooltip.el | 4 | ||||
| -rw-r--r-- | tests/test-integration-startup.el | 5 |
4 files changed, 16 insertions, 1 deletions
diff --git a/tests/Makefile b/tests/Makefile index 8635861..7cd6c0b 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -71,7 +71,7 @@ test-all: check-deps for testfile in $(ALL_TESTS); do \ echo " Testing $$testfile..."; \ $(EMACS_BATCH) -l ert -l "$$testfile" \ - --eval '(ert-run-tests-batch-and-exit)' || failed=$$((failed + 1)); \ + --eval '(ert-run-tests-batch-and-exit t)' || failed=$$((failed + 1)); \ done; \ if [ $$failed -eq 0 ]; then \ printf "$(GREEN)[✓] All tests passed$(NC)\n"; \ diff --git a/tests/test-integration-chime-mode.el b/tests/test-integration-chime-mode.el index 69ad176..cd1fec5 100644 --- a/tests/test-integration-chime-mode.el +++ b/tests/test-integration-chime-mode.el @@ -36,6 +36,7 @@ (ert-deftest test-integration-chime-mode-enable-adds-to-global-mode-string () "Enabling chime-mode should add chime-modeline-string to global-mode-string." + :tags '(:slow) (let ((chime-enable-modeline t) (chime-modeline-lookahead-minutes 60)) (unwind-protect @@ -47,6 +48,7 @@ (ert-deftest test-integration-chime-mode-disable-removes-from-global-mode-string () "Disabling chime-mode should remove chime-modeline-string from global-mode-string and set it to nil." + :tags '(:slow) (let ((chime-enable-modeline t) (chime-modeline-lookahead-minutes 60)) (chime-mode 1) @@ -56,6 +58,7 @@ and set it to nil." (ert-deftest test-integration-chime-mode-disable-nils-timer () "Disabling chime-mode should set chime--timer to nil." + :tags '(:slow) (let ((chime-enable-modeline t) (chime-modeline-lookahead-minutes 60)) (chime-mode 1) @@ -68,6 +71,7 @@ and set it to nil." (ert-deftest test-integration-chime-mode-enable-sets-modeline-string-immediately () "Enabling chime-mode should set chime-modeline-string to a non-nil value immediately, before the first async check completes." + :tags '(:slow) (let ((chime-enable-modeline t) (chime-modeline-lookahead-minutes 120) (chime-modeline-no-events-text " ⏰")) @@ -81,6 +85,7 @@ immediately, before the first async check completes." (ert-deftest test-integration-chime-mode-enable-immediate-string-has-tooltip () "The immediate modeline string should have a help-echo tooltip." + :tags '(:slow) (let ((chime-enable-modeline t) (chime-modeline-lookahead-minutes 120) (chime-modeline-no-events-text " ⏰")) @@ -93,6 +98,7 @@ immediately, before the first async check completes." (ert-deftest test-integration-chime-mode-validation-failure-keeps-icon-visible () "When validation fails, modeline should still show the icon with error info in the tooltip, not go blank." + :tags '(:slow) (let ((chime-enable-modeline t) (chime-modeline-lookahead-minutes 120) (chime-modeline-no-events-text " ⏰") diff --git a/tests/test-integration-recurring-events-tooltip.el b/tests/test-integration-recurring-events-tooltip.el index b612755..810e3ee 100644 --- a/tests/test-integration-recurring-events-tooltip.el +++ b/tests/test-integration-recurring-events-tooltip.el @@ -148,6 +148,7 @@ Validates: - Recurring event expanded 365 times is deduplicated to one entry - Tooltip shows event title exactly once - The shown occurrence is the soonest one" + :tags '(:slow) (test-integration-recurring-setup) (unwind-protect (let* ((now (test-time-now)) @@ -207,6 +208,7 @@ Components integrated: Validates: - Weekly recurring events are deduplicated correctly - Tooltip shows only soonest occurrence" + :tags '(:slow) (test-integration-recurring-setup) (unwind-protect (let* ((now (test-time-now)) @@ -253,6 +255,7 @@ Validates: - Recurring event appears once - Non-recurring events all appear - Total count is correct (recurring deduplicated, others preserved)" + :tags '(:slow) (test-integration-recurring-setup) (unwind-protect (let* ((now (test-time-now)) @@ -320,6 +323,7 @@ Validates: - Each recurring event title appears exactly once - Different recurring frequencies handled correctly - Deduplication works independently for each title" + :tags '(:slow) (test-integration-recurring-setup) (unwind-protect (let* ((now (test-time-now)) diff --git a/tests/test-integration-startup.el b/tests/test-integration-startup.el index 6592cf4..1f60b54 100644 --- a/tests/test-integration-startup.el +++ b/tests/test-integration-startup.el @@ -107,6 +107,7 @@ Components integrated: - chime-check (async wrapper around event gathering) - chime--gather-info (extracts event details) - chime--update-modeline (updates modeline display)" + :tags '(:slow) (with-startup-config (let* ((now (test-time-now)) ;; Create events at various times @@ -181,6 +182,7 @@ Validates that chime-validate-configuration returns nil (no issues) when: - All other dependencies are available This ensures the startup validation doesn't block legitimate configurations." + :tags '(:slow) (with-startup-config (let ((content "#+TITLE: Minimal Test\n\n* TODO Test event\nSCHEDULED: <2025-12-01 Mon 10:00>\n")) ;; Create minimal org file @@ -205,6 +207,7 @@ When validation fails on first check, chime-check should: - NOT proceed to event gathering This validates the early-return mechanism works correctly." + :tags '(:slow) (with-startup-config ;; Set up invalid configuration (empty org-agenda-files) (setq org-agenda-files nil) @@ -239,6 +242,7 @@ This validates the early-return mechanism works correctly." Boundary case: org-agenda-files with only one event. Validates that the gathering and modeline logic work with minimal data." + :tags '(:slow) (with-startup-config (let* ((now (test-time-now)) (event-time (test-time-at 0 1 0)) ; 1 hour from now @@ -266,6 +270,7 @@ Validates that the gathering and modeline logic work with minimal data." Boundary case: Events exist but are far in the future (beyond lookahead window). Validates that chime doesn't error and modeline shows appropriate state." + :tags '(:slow) (with-startup-config (let* ((now (test-time-now)) ;; Event 30 days from now (beyond 24-hour lookahead) |
