Files
matrix-rust-sdk/testing/matrix-sdk-integration-testing
Benjamin Bouvier f5f8f47667 integration test: fix racy behavior in the test_toggling_reaction
The room sync could be over, and then the timeline items would not contain the updated item yet, if the timeline didn't get a chance to finish its
internal update. Fix this by:

1. limiting the sync time to 10 seconds
2. giving up to one second for the timeline to update internally, by watching its stream of events (we're ignoring stream updates just after this loop)
2024-01-30 12:42:56 +01:00
..

Matrix SDK integration test

Requirements

This requires a synapse backend with a ci patched configuration. You can easily get it up and running with docker compose via:

docker compose -f assets/docker-compose.yml up -d
docker compose -f assets/docker-compose.yml logs --tail 100 -f

Note that this works also with podman compose.

Patches You can see the patches we do to configuration (namely activate registration and resetting rate limits), check out what assets/ci-start.sh changes.

Running

The integration tests can be run with cargo test or cargo nextest run.

The integration tests expect the environment variables HOMESERVER_URL to be the HTTP URL to access the synapse server and HOMESERVER_DOMAIN to be set to the domain configured in that server. If you are using the provided docker-compose.yml, the default will be fine.

Maintenance

To drop the database of your docker compose run:

docker compose -f assets/docker-compose.yml down --volumes