fix(system-tests): the member picker is given time to answer - #1154
Open
ExtraToast wants to merge 2 commits into
Open
fix(system-tests): the member picker is given time to answer#1154ExtraToast wants to merge 2 commits into
ExtraToast wants to merge 2 commits into
Conversation
CommitteeManagerPageSystemTest failed intermittently on the option click in addMember, with `Timeout 5000ms exceeded` waiting for the option to appear. UserSelect debounces typing for 250ms and then makes an API round trip, so the option cannot be there when the default budget starts running, and a loaded machine spends the rest of it. The click now carries a budget that covers the settle, the round trip and a slow machine. The UserSelect tests added alongside are guards rather than a fix: they pin that a chosen member's id survives a list that cannot yet account for it. They pass on main; the picker does not drop the id today, and these keep it that way.
`updates committee name and description` fails on CI with a submit that produced no browser request at all, which means a rule on the form refused it rather than the api. The failure could only say that nothing was sent. It now reads the messages under the form's fields when the save fails to arrive, so the next run names the field. An end-to-end test covers the shape the refusal was expected to take: the manager fetches its users after the form is open, and the picker holds a member id it cannot yet name. Saving in that window reaches the api with the member intact. It passes as written, so the refusal is something else — it stays as the guard for the case that was ruled out.
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.
What
CommitteeManagerPageSystemTestflakes. The option click inCommitteeFormHelper.addMembernow carries an explicit 20s budget instead of Playwright's 5s default.Why
Reproduced locally against a CI-image stack:
UserSelectdebounces typing forSETTLE_MS = 250and then makes an API round trip. The default budget starts running before either has happened, so a loaded runner exhausts it.Three forced re-runs of the class pass after the change.
What this does not cover
The CI symptom I first saw was a different test in the same class —
updates committee name and description, where the submit click produced no browser request at all. That symptom has not been reproduced locally and may be a separate path throughsave(). Calling it out rather than claiming the class is now clean.The
UserSelectunit tests here are guards, not a fix: they pass on main, and pin that a chosen member's id survives a list that cannot yet account for it.Diff breakdown —
█added░removed, scaled to the largest row.