element-web/test
David Baker b8013fc52a
Add a Cypress Test 🌲 (#8295)
* A first, maybe working cypress test

Plus cypress plugins to manage synapses in docker containers

* Fix yaml

* This file is important

* try & find where it's put the artifact

* Download artifact to a directory

* pics or it didn't happen

* Add conditional, otherwise no artifacts on failure...

* Try increasing timeout

also actually give the test a name

* Try in chrome

* Get docker logs to see why it's failing

also document the chrome setting

* Try changing mode on homeserver.yaml

* debug

* More debugging

* more file permissions debugging

* ARGH

* more debug

* sigh

* Eugh, that's not how arguments work

* Add the option to really allow open registration

and remove debug logging / comment fixes

* failure to yaml

* Upload docker logs as artifacts

and temporarily remove contional to test

* Put the conditional back

* Upgrade types in end to end tests

to be compatible with fs-extra types

* Try reducing timeout a bit

also make password more... sensible

* Hex is not octal

* Remove file mode

Seems to be unnecessary since the signing key is perfectly fine

* Give the log files extensions

* Rename workflow file now it also does tests

* Add cypress scripts

* copyright headers

* Use ? operator

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Use develop synapse image

* Tidy up any remaining synapses after each spec run

Also:
 * Move the synapseStart / synapseStop functions out to the top level
   so they can be reused
 * Add a tsconfig file
 * Give the containers names

* Don't upload video on test pass

We don't upload it anyway so tell cypress not to so it can not
bother encoding them

* Enable linting on cypress files

and fix existing lint errors

* Type check cypress files

and make it pass the type checks, specifically:
 * Upgrade sinon fake timers to a version that has the right types
 * Set module resolution
 * Type check cypress files separately

* Rename workflow file again

Probably better to just call it an element web build

* Don't plus + characters in container name

* Fix yaml

* Stream logs to file

* Add note to end to end tester to sya what's been ported

* Put docker rm in finally block

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-04-14 10:41:58 +01:00
..
__snapshots__
accessibility Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
audio Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
autocomplete Typescriptification - notification utils (#8209) 2022-04-01 08:45:50 +02:00
components Replace deprecated String#substr with String#slice (#8314) 2022-04-14 07:52:42 +00:00
editor Unit test typescriptification - editor utils (#8226) 2022-04-06 12:40:13 +01:00
end-to-end-tests Add a Cypress Test 🌲 (#8295) 2022-04-14 10:41:58 +01:00
i18n
i18n-test
images
img
notifications Typescriptification - notification utils (#8209) 2022-04-01 08:45:50 +02:00
settings
setup Step 8.2: Fix wiring of jest test setup to avoid import cycle issues 2022-03-28 14:02:31 -06:00
stores Live location sharing - set replaces relation when stopping beacon (#8266) 2022-04-11 10:28:43 +02:00
test-utils Prevent soft crash around room list header context menu when space changes (#8289) 2022-04-12 14:23:04 +00:00
utils Location sharing - extract isSelfLocation util (#8279) 2022-04-11 13:58:35 +02:00
.eslintrc.js
CallHandler-test.ts Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
DecryptionFailureTracker-test.js Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
DeviceListener-test.ts Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
Image-test.ts Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
KeyBindingsManager-test.ts
Markdown-test.ts
MatrixClientPeg-test.ts Don't show the prompt to enable desktop notifications immediately after registration (#8274) 2022-04-13 19:05:08 +01:00
PosthogAnalytics-test.ts Replace deprecated String#substr with String#slice (#8314) 2022-04-14 07:52:42 +00:00
Reply-test.ts Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
RoomNotifs-test.ts
ScalarAuthClient-test.js
Terms-test.js
TextForEvent-test.ts Fix export of redacted polls (#8118) 2022-04-11 11:10:16 +02:00
UserActivity-test.ts Typescriptification - notification utils (#8209) 2022-04-01 08:45:50 +02:00
createRoom-test.ts Make Jitsi widgets in video rooms immutable (#8244) 2022-04-07 07:34:07 -04:00
globalSetup.js
languageHandler-test.ts
linkify-matrix-test.ts
setupTests.js Step 8.2: Fix wiring of jest test setup to avoid import cycle issues 2022-03-28 14:02:31 -06:00