mirror of
https://github.com/matrix-org/matrix-rust-sdk.git
synced 2026-02-08 14:42:14 -05:00
Followup on https://github.com/matrix-org/matrix-rust-sdk/pull/3983: now that we don't have a sliding sync proxy, we don't need a postgres container.
56 lines
1.8 KiB
Markdown
56 lines
1.8 KiB
Markdown
# Matrix SDK integration test
|
|
|
|
This set of tests requires a Synapse instance, and it runs the tests from this directory against
|
|
this real-world server. As a result, these tests depend on the load of the machine/server, and as
|
|
such they might be more sensitive to timing issues than other tests in the code base.
|
|
|
|
## Requirements
|
|
|
|
This requires a synapse backend with a configuration patched for CI. You can get it up and running
|
|
with `docker compose` via:
|
|
|
|
```sh
|
|
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, enable a few experimental features), 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. These variables are set to a default value that matches the default `docker-compose.yml`
|
|
template; if you haven't touched it, you don't need to manually set those environment variables.
|
|
|
|
## Maintenance
|
|
|
|
### Delete all instance data
|
|
|
|
To stop the services and drop the database of your docker-compose cluster, run:
|
|
|
|
```bash
|
|
docker compose -f assets/docker-compose.yml down --volumes --remove-orphans -t 0
|
|
```
|
|
|
|
### Rebuild the synapse image
|
|
|
|
If the Synapse image has been updated in version, you may need to rebuild the custom Synapse image
|
|
using the following:
|
|
|
|
```bash
|
|
docker compose -f assets/docker-compose.yml build --pull synapse
|
|
```
|
|
|
|
Then restart the synapse service:
|
|
|
|
```bash
|
|
docker compose -f assets/docker-compose.yml up -d synapse
|
|
```
|