sillsdev / web-languageforge

Language Forge: Online Collaborative Dictionary Building on the Web and Phone.
https://languageforge.org
MIT License
44 stars 29 forks source link

Fix one failing E2E test on Firefox, skip the other one #1809

Closed rmunn closed 2 months ago

rmunn commented 2 months ago

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 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

Testing

github-actions[bot] commented 2 months ago

Unit Test Results

362 tests   362 :white_check_mark:  12s :stopwatch:  37 suites    0 :zzz:   1 files      0 :x:

Results for commit dba024ce.

:recycle: This comment has been updated with latest results.