We currently have two E2E tests that fail on Firefox while they pass on Chrome.
One of them appears to be caused by reload() not triggering our page autosave when it happens immediately after a locator.fill(). I suspect that the reload() isn't triggering the blur event which would allow our autosave to trigger, but only on Firefox (for reasons that would take so long to determine that I figure it's not worth spending the time). I solved this one by clicking on another entry before running the reload(), which forces the just-entered data to autosave and thus the rest of the test passes as it should.
The other test appears to be running into a Playwright bug with locator.fill() on Firefox, where the locator thinks the input field (or textarea in this case) is not editable. This happens even if you put expect(...).toBeEditable() immediately before the .fill(). The expect passes, but then the locator waits forever (or rather, until the test times out) for the text area to be editable, for some reason not realizing that it is editable. Since this appears to be caused by a Playwright and/or Firefox bug rather than by our code, and the test passes in Chromium, I decided to simply have this test skipped on Firefox until such time as the locator.fill() bug gets resolved.
Checklist
[X] I have labeled my PR with: bug, feature, engineering, security fix or testing
[X] I have performed a self-review of my own code
[X] I have reviewed the title & description of this PR which I will use as the squashed PR commit message
[X] I have commented my code, particularly in hard-to-understand areas
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have enabled auto-merge (optional)
Testing
Run npm run test-e2e; all E2E tests should now pass.
Fixes #1801
Description
We currently have two E2E tests that fail on Firefox while they pass on Chrome.
One of them appears to be caused by
reload()
not triggering our page autosave when it happens immediately after alocator.fill()
. I suspect that thereload()
isn't triggering theblur
event which would allow our autosave to trigger, but only on Firefox (for reasons that would take so long to determine that I figure it's not worth spending the time). I solved this one by clicking on another entry before running thereload()
, which forces the just-entered data to autosave and thus the rest of the test passes as it should.The other test appears to be running into a Playwright bug with
locator.fill()
on Firefox, where the locator thinks the input field (or textarea in this case) is not editable. This happens even if you putexpect(...).toBeEditable()
immediately before the.fill()
. Theexpect
passes, but then the locator waits forever (or rather, until the test times out) for the text area to be editable, for some reason not realizing that it is editable. Since this appears to be caused by a Playwright and/or Firefox bug rather than by our code, and the test passes in Chromium, I decided to simply have this test skipped on Firefox until such time as thelocator.fill()
bug gets resolved.Checklist
Testing
npm run test-e2e
; all E2E tests should now pass.