24cda5fc59
It appears the bug with these tests was just that the MessageBuilder wasn't setting the thread relation on the reply messages as this didn't happen trying to repro it manually, so fix the builder and re-enable the tests. The flip side of this is that it implies buggy clients that don't set thread relations properly will cause stuck notifs in Element Web. I've filed this as https://github.com/element-hq/element-web/issues/26787 |
||
---|---|---|
.. | ||
editing-messages.spec.ts | ||
high-level.spec.ts | ||
index.ts | ||
missing-referents.spec.ts | ||
new-messages.spec.ts | ||
reactions.spec.ts | ||
read-receipts.spec.ts | ||
readme.md | ||
redactions.spec.ts |
High Level Read Receipt Tests
Tips for writing these tests:
-
Break up your tests into the smallest test case possible. The purpose of these tests is to understand hard-to-find bugs, so small tests are necessary. We know that Playwright recommends combining tests together for performance, but that will frustrate our goals here. (We will need to find a different way to reduce CI time.)
-
Try to assert something after every action, to make sure it has completed. E.g.: markAsRead(room2); assertRead(room2); You should especially follow this rule if you are jumping to a different room or similar straight afterward.
-
Use assertStillRead() if you are asserting something is read when it was also read before. This waits a little while to make sure you're not getting a false positive.