Files
2026-09-09 18:20:24 +02:00

2.5 KiB

Habit weeks across month boundaries

WJ-006 uses the mobile Chromium fixture and creates a normal habit through the UI. It then seeds historical test-only data for Monday 31 August through Sunday 6 September 2026 with counts 1 through 7. The weekly maximum is 30, while preceding and following weeks have maxima 10 and 99 to detect incorrect effective-date selection.

The browser chooses September using the month dialog and navigates backward to August and forward again. In each view, the crossing week must contain all seven individual values and total 28. September must show August's count 1 as adjacent; August must show September's six counts as adjacent. Both views must display that week's maximum 30.

Only historical fixtures are inserted directly into the isolated test database; calendar navigation and all assertions use the actual rendered UI. No production data is touched. Validation passed for 0.1.47-SNAPSHOT: all nine browser scenarios, 183 executed JVM cases (206 reported, 23 excluded by suite filters or still unbound), zero failures/errors, 68 operations tests, 17 frontend tests and production/admin-recovery smoke checks. No production or schema change was needed.

The mobile date picker is completed by selecting its accessible calendar day before clicking Show. The test waits for the selected habit's aria-pressed state before opening the month dialog. Expected calendar labels follow the account's English locale. Early fixture failures came from assuming a dialog wrapper, keyboard dismissal and British date labels; the final test uses the actual component interaction and retains all data assertions.

CI follow-up: a1505b0 failed while opening the month because Vaadin suppresses taps during calendar scrolling. The browser test now waits for the calendar component to stop ignoring taps, uses a touch tap, and explicitly checks that the picker closed. The readiness check accepts both false and an unset flag, matching Vaadin. All ten browser scenarios and the full local pipeline passed with this correction in 0.1.49-SNAPSHOT; remote CI/CD commit 7d24120 subsequently passed (reported 396 seconds), confirming the corrected mobile calendar interaction in Werkdock.

Further browser-suite execution exposed that touch confirmation remains timing-sensitive in the emulated calendar. The calendar test now focuses the accessible day cell and presses Enter on the calendar grid, using its supported commit-and-close handler. All 13 browser examples passed with this change. This is not a claim of physical Android touch acceptance, which remains open.