diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-03 07:53:51 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-03 07:53:51 -0500 |
| commit | 8ec668d6749b22f47a4c614d0965445dcfa86f50 (patch) | |
| tree | 35195dad12fd3680dc129b223a1668b95570a285 /modules/custom-comments.el | |
| parent | 6936f5b60b61dcf41cbda75813d7f259733eedf2 (diff) | |
| download | dotemacs-8ec668d6749b22f47a4c614d0965445dcfa86f50.tar.gz dotemacs-8ec668d6749b22f47a4c614d0965445dcfa86f50.zip | |
test(calendar-sync): fix weekday-string lookup to match production
The boundary test for `calendar-sync--expand-weekly` with a 5-element UNTIL built its byday string from `'("SU" "MO" "TU" "WE" "TH" "FR" "SA")`, a 0-indexed Sunday-first array. The production code uses Monday=1, Sunday=7 throughout: `calendar-sync--date-weekday` returns it that way and `calendar-sync--weekday-to-number` expects it. When start-date landed on a Sunday (start-weekday=7), `(nth 7 array)` overran the 7-element list and returned nil. Then byday=(nil), and inside expand-weekly `(mod (- nil current-weekday) 7)` raised "wrong-type-argument number-or-marker-p nil".
The mismatch made the test fail every Saturday (when "tomorrow" is Sunday) and pass the other six days. The flake had been blamed on stale `.elc` in earlier triage, but `make clean && make test` reproduced the failure on Saturdays.
I switched the lookup to `(nth (1- start-weekday) '("MO" "TU" "WE" "TH" "FR" "SA" "SU"))`, the same convention as every other weekday-mapping in the codebase. I verified across all 7 weekdays via a faked `current-time`: each produces exactly 1 occurrence as expected.
Production code is internally consistent. No production change needed.
Diffstat (limited to 'modules/custom-comments.el')
0 files changed, 0 insertions, 0 deletions
