* Attempt to deflake a read-receipts test
Hopefully, this will fix https://github.com/vector-im/element-web/issues/26679
(I think that the fourth message was arriving *after* the room was marked as
read, meaning that we ended up with two unread messages rather than one.)
* Update cypress/e2e/read-receipts/new-messages.spec.ts
* prettier
If `shieldStatusForRoom` races against a logout operation, then some of the
(many) crypto operations that it does can fail. Catch the error and handle it
gracefully.
* Migrate user-view.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add bot support & update screenshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add screenshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Use JSHandle
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove stale snapshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate remaining editing.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* yay
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix tests
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix tests
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate user-view.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add bot support & update screenshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add screenshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Use JSHandle
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove stale snapshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update element-web-test.ts
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate location.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate location.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate appearance-user-settings-tab.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate device-management.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate general-room-settings-tab.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate general-user-settings-tab.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate preferences-user-settings-tab.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate security-user-settings-tab.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add screenshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add screenshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Deflake
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update screenshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update screenshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Move settings into subclass
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Rewrite doesRoomOrThreadHaveUnreadMessages to use the receipt rewrite from js-sdk
* Remove unit tests that rely on receipt timestamps
Previously, if we found a receipt for an unknown event, we would use the
receipt timestamp and declare all events before that time to be read.
Now, we ignore such "dangling" receipts until we find the event they
refer to.
This new behaviour is more correct, but does lead to more messages being
considered unread.
This commit deletes tests that checked for the old behaviour.
* Check for a missing thread in determineUnreadState
* Fix incorrect way to find room timeline
* More realistic test setup to support new receipt code
* Update snapshot to expect a room to be unread when there are no receipts
* Formatting fixes
* Update snapshot to show menu and notif button
* Disable some flaky tests
* Disable some flaky tests
* Fix test to make a threaded receipt for an event that is actually in the thread
---------
Co-authored-by: Florian Duros <florianduros@element.io>
Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
* Migrate location.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate location.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add screenshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Deflake
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Always allow call.member events on new rooms
This translate to: allow group calls by default
Signed-off-by: Timo K <toger5@hotmail.de>
* fix tests
Signed-off-by: Timo K <toger5@hotmail.de>
---------
Signed-off-by: Timo K <toger5@hotmail.de>
* Install playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add foundations for writing tests under Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* .gitignore juggling
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add tsconfig and fix eslint rules
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add docker & synapse plugins
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add login.spec.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Wire up fixture which sets up ElementAppPage & bakes config.json
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove launch test, it has served its purpose
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove test which has been ported to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix test not cleaning up after itself
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Move registerUser to the Homeserver interface
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove unused fixture param
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove redundant launch test
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add newline
* Run both legacy & rust crypto tests in Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove redundant comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Create plugin for mail-hog
* Move injectAxe into element-web-test.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Switch out axe-playwright for @axe-core/playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate email.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* prettier
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Use Playwright snapshot utility over Percy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove commented our Percy badge as we're unlikely to want to go back
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate user-onboarding-old.spec.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate user-onboarding-new.spec.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add screenshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix bad merge
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix test and re-enable
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Run linters on playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Make typescript happier
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix types
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update typescript
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Migrate register.spec.ts from Cypress to Playwright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add screenshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update screenshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update import
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
Full name of the test: 'Cryptography > creating a DM should work, being e2e-encrypted / user verification'
I ran this 20 times with rust crypto locally and it seemed to pass, so
giving it a go on CI.
* Consolidate snapshots between Legacy & Rust crypto in the happy case
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Improve user-onboarding-new screenshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>