* Split the read-receipt tests into logical units
* Move read-receipt docs into a readme file
* Provide doc comments for exported functions in read-receipt tests
* Tests for redacting messages not increasing unreads
* Comment explaining tips for writing high level rr tests
* Test for restarting with a receipt pointing at a redacted thread root
* Two failing tests for counting correctly when a thread message was redacted
* Test for reading a thread containing an earlier redaction
* Failing tests for redacted messages in threads
* More tests for reactions to messages in threads
* Wait before looking for the thread list, to let the room settle
* Tests for redacting messages not increasing unreads
* Comment explaining tips for writing high level rr tests
* Test for restarting with a receipt pointing at a redacted thread root
* Two failing tests for counting correctly when a thread message was redacted
* Test for reading a thread containing an earlier redaction
* Failing tests for redacted messages in threads
* Expand a thread reply test to be more explicit
* Add an assertion that the thread is read after I read it
* Assert that the thread is unread after an edit
* Minor improvements to unread tests
* Test for reading an older message in a room
* Test for reading an old message in a thread
Also a mostly-trivial test for read status being preserved over
restarts.
* Give the reason for a failing test
* Fix a failing test by making it wait for a thread to be read
* More tests for thread roots
* Add a 'm.relates_to' to edits in receipt tests
* Disable a test that fails with real edits
* Wait for the room to be read after we mark it as read
* Skip tests that are failing because of inconsistencies between local and CI behaviour
* Add some fantasy tests
* Turn commented code into pretend-real code
* First pass at a list of all the cases we should test
* List test cases related to redactions
* Add testcases about paging up
* Add a case about notification counts
* More test cases related to replies, notifications, room list
* Iterate tests
* Wire up additional tests
* Wire up more tests
* Tidy
* Wire up more tests
* Wire up more tests
* Wire up more tests
* Wire up more tests
* Mute browser
* Silence electron warnings
* Iterate
* revert
* Wire up more tests
* Try to stabilise tests
* Try to stabilise tests
* Validate that the notification dot is missing as well as the count
* Skip a test that is failing for unknown reasons
* Use markAsRead in 'marking as read' test and add related test
* Fix incorrect comment
* Extract tests to their own suite
* Attempt to fix test
* Wire up more tests
* Wire up more tests
* Wire up more tests
* Wire up more tests
* Iterate
* Add comments
* Iterate
* Fix comments
* Update cypress/e2e/read-receipts/high-level.spec.ts
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
---------
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Switch to importing TypedEventEmitter from main js-sdk export
* Switch to importing js-sdk/matrix in cypress
* Remove duplicated imports
* Fix lint:js-fix to run prettier last otherwise ESLint --fix may cause a mess
* Add lint rule
* Fix cypress-axe import
* Fix cypress-axe import
* Send correct receipts when viewing a room
* Fix strict type issues
* Handle promises
* Handle more primises
* Add generic array type
* Replace existende check with type predicate
* Fix wrong variable check
* Improve comment about initial read marker
* Use read_markers API for fully read receipts
* Log public receipt fallback
* Rename variables in new code to be aligned to the spec
* Add end-2-end test for read markers and receipts