Calendar tests mint the dated card they wait on #231
No reviewers
Labels
No labels
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Grandiras/Ponente!231
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "calendar-tests-mint-their-cards"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
docs/testing.mdsays a spec has to pass on an empty stack, and that anything under.calendar-gridneeds a dated card, because a month with nothing due renders its empty state instead of the grid. Four tests incalendar.spec.jsbroke that rule. They passed in a full file run only because earlier tests had left cards due this month, and a tag, on the board..calendar-week, which is also absent in an empty month).calendar-filter-toggleonly renders on a board that has oneTest titles are unchanged. Supporting changes:
createTag(page, name): the tag-making block from the legend test, moved into a helper so the toolbar test can use it too. It now goes to the board's own/board/{key}/settings/tagspage instead of the/admin/tagsredirect.inMonths(months, day): sits next toinYears, for the cascade test's next-month card.docs/testing.md: records that these four were green only because of what earlier tests left behind. New tests should be run alone (-g) on a fresh stack. Also addscalendar.spec.jsto the list of specs that have acreateTag.Verification
Run on an isolated, port-shifted stack (
name: ponentecal, fresh volumes). The sharedponentestack is owned by the main checkout and was not touched..calendar-grid/.calendar-weeknot found).calendar.spec.js: 21 passed.tools/verify.sh: build OK, 560/560 unit tests pass (includingDocumentationTests).Tests only, so no changelog line.
🤖 Generated with Claude Code
🤖 Reviewing this PR — the review will link the full session transcript.
📜 Live transcript — updating every ~5 minutes while the review runs.
✅ Verdict: approve — no blocking issues found.
Good to merge. The four tests' premises check out against the app:
Calendar.razorrenders the empty state instead of the grid when the month has nothing in scope, and.calendar-filter-toggleonly when the board has tags — so each test now mints what it waits on.inMonthshandles the December→January rollover correctly viaDate.UTCnormalization, and day 24 avoids month-length edges. The newcreateTaguses the real/board/{BoardRef}/settings/tagsroute (naming the board explicitly instead of relying on the bare/admin/tagsredirect's substitution), its row-count confirmation works from an empty board (no table → 0 rows → 1), and tag cleanup is covered by the spec-agnostic id high-water mark. The toolbar test's.segmentedmeasurement reads the view switch in.calendar-actions, which the new fixtures don't affect. Docs match the code, and the file's 21 tests match the reported full run.Two remarks, neither blocking: the helper's comment "the name is checked on the board, where the chip renders it" is inherited from the legend test where that was literally true — the toolbar test asserts the toggle's presence (which does imply the tag exists) but never checks the name itself; and
boards.spec.jsalso has a per-boardcreateTag(line 125) that the docs list doesn't mention, though that one targets freshly created boards rather than the seeded one, so the list arguably describes a different fixture pattern.⏱ 6m 14s · 17 steps · $0.0448 · tokens: 152.6k in / 13.8k out (+490.8k cache-read) · Go: 5h 1% · wk 84% · mo 74%
📜 Full session transcript
🤖 Resolving the merge conflicts — the reply will link the full session transcript.
📜 Live transcript — updating every ~5 minutes while the fix runs.
Merge committed cleanly, working tree clean. Summary for the PR:
Merge resolved
What conflicted: main landed #229 (debloat: prose in
docs/testing.mdcut to bullet sections, comments intests/e2e/calendar.spec.jscondensed, and the spec refactored onto the shareddevLoginToBoardhelper) on top of the same hunks this PR edits (minting dated cards/tags so calendar tests pass alone on a fresh stack).How each side survived:
tests/e2e/calendar.spec.js— kept main's debloated wording,chiphelper anddevLoginToBoardimport, and kept the PR's six fixture additions:inMonths(), the board-scopedcreateTag()helper (the "legend filters" test and the phone toolbar test mint their own tag now), and dated cards minted in the cascade, entrance, toolbar and swipe tests. The PR-side hunks still called the old localdevLogin, which main deleted — those resolved todevLoginToBoard, so nothing references a function that no longer exists.docs/testing.md— kept main's condensed structure (traps / fixtures / writing-a-test bullets) and carried the PR's new lesson into the matching bullet: four calendar tests were green only because earlier tests left cards due this month, so run a new test alone (-g) on a fresh stack; also addedcalendar.spec.jsto the files with their owncreateTag.Verified: no markers left in either file; spec passes
node --checkand every top-level helper it defines is used and traceable; the board-scoped/board/{BoardRef}/settings/tagsroute the newcreateTagtargets still exists after main's settings-page refactor;DocumentationTests(the unit suite's checker that every spec is named indocs/) pass: 8/8.→ Merge resolved and pushed; a re-review follows.
⏱ 5m 32s · 20 steps · $0.0798 · tokens: 306.5k in / 15.6k out (+659.6k cache-read) · Go: 5h 3% · wk 85% · mo 75%
📜 Full session transcript
🤖 On it — the reply will link the full session transcript.
📜 Live transcript — updating every ~5 minutes while the task runs.
Nothing new was asked on the thread; the follow-up wanted the repo's own verification run before any claims. Done against the fresh clone at
task-231-muea12tj(my merge commitd5ed47bis intact oncalendar-tests-mint-their-cards):tools/verify.sh(the bar):dotnet build -c Releaseclean,dotnet test558/558 passed, includingDocumentationTests.tools/verify.sh e2e calendar.spec.js(the spec this PR pins): not verified here — this container has no podman/docker, and the script itself says so and falls back to "build + unit tests are the bar" rather than faking a result. The e2e run remains for CI or a machine with a container engine.That's everything the follow-up asked for.
⏱ 2m 44s · 35 steps · $0.1304 · tokens: 402.6k in / 17.0k out (+1934.8k cache-read) · Go: 5h 3% · wk 85% · mo 75%
📜 Full session transcript