Repository navigation
Frontend tests no longer depend on the time of day; card test job timeout - #1257
Merged
Merged
Conversation
npm test takes about a minute. Without a limit a hung test held the job for GitHub's six-hour default.
The kid tour tests stamped a completion at 08:00 today, which before 08:00 is in the future, so the child card's settle timer waited until then and the test file never exited. The setup wizard tests built birthdays from the UTC date, a day off east of UTC late in the evening. The card now also treats a completion stamped ahead of the browser's clock as made just now, so its settle timer never runs longer than the settle window.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Makes the frontend test suite independent of the time of day, and stops a stuck test from holding CI for hours. No version bump.
The kid tour tests no longer hang before 08:00. They stamped a completion at 08:00 today. Before 08:00 that's in the future, so the child card's "available first" settle timer waited until 08:00 and the test file never exited. The fixture now falls back to a minute ago when the suite runs early.
The child card clamps a completion stamped ahead of the browser's clock. A
completed_atin the future (server clock skew) now counts as made just now, so the settle timer that keeps a just-ticked row in place never runs longer than its eight-second window. New test:taskmate-child-card-settle-timer.test.cjs.The setup wizard birthday tests use local dates. They built birthdays from
toISOString(), the UTC date, which is a day off east of UTC late in the evening, while the panel reads a birthday as a local date.The card test job has a 15 minute timeout.
npm testtakes about a minute; without a limit a hung test held the ESLint job for GitHub's six-hour default.Checked locally: the full frontend suite (2467 tests) passes at 23:26, 04:27, 13:27 and 15:28 local time; lint, ruff and translation parity pass.