Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -173,9 +173,6 @@ jobs:
- name: Build
run: cargo build --all-features --tests

- name: Run the external dependencies
run: docker compose up -d --wait

- name: Test
run: cargo nextest run --all-features --run-ignored only

Expand Down Expand Up @@ -221,9 +218,6 @@ jobs:
- name: Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.9

- name: Run the external dependencies
run: docker compose up -d

- name: Install cargo-llvm-cov
uses: taiki-e/install-action@cargo-llvm-cov

Expand Down
31 changes: 9 additions & 22 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,18 +46,11 @@ instructions. This handles formatting of all the files in the repository.
### Tests that use database, cache, or other external resources

Some tests use a database, cache, or other external resources. All these tests
are marked with `#[ignore]`, so they are not run by default.
are marked with `#[ignore]`, but they will automatically start the necessary
containers using [Testcontainers](https://testcontainers.org/) if you have
Docker or a similar container runtime installed.

If you want to run the full test suite, it's necessary to run these external
dependencies. For convenience, Cot provides a
[Docker compose file](./compose.yml) in the root of the repository that
contains all the dependencies needed to run the tests. You can run it with:

```sh
docker compose up -d
```

Then, the tests can be run with:
If you want to run the full test suite, you can run:

```sh
cargo test --all-features --include-ignored
Expand All @@ -66,17 +59,11 @@ cargo test --all-features --include-ignored
#### End-to-end tests

End-to-end tests require a running webdriver server. By default, a Selenium
Grid server is used (included in the `compose.yml` file). You can access the
UI to see the tests running (for example, to debug them) at
`http://localhost:7900/?autoconnect=1&resize=scale&password=secret`.

Alternatively, instead of using Selenium Grid, you can run the tests with
a local webdriver server. To do this, you need to install and run the
Webdriver implementation of your choice, such as
[geckodriver](https://github.com/mozilla/geckodriver/releases) or
[chromedriver](https://developer.chrome.com/docs/chromedriver/downloads).
After running the webdriver server, you will see the tests running in a
local browser window.
container is automatically started using Testcontainers.

Alternatively, you can run the tests with a local webdriver server. To do this,
you need to set the `WEBDRIVER_URL` environment variable to the URL of your

Copilot AI Feb 2, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Environment variable name inconsistency: The documentation mentions WEBDRIVER_URL but the code uses COT_WEBDRIVER_URL. These should be consistent. Either update the documentation to say COT_WEBDRIVER_URL or change the code to use WEBDRIVER_URL.

Suggested change
you need to set the `WEBDRIVER_URL` environment variable to the URL of your
you need to set the `COT_WEBDRIVER_URL` environment variable to the URL of your

Copilot uses AI. Check for mistakes.
local webdriver server (e.g., `http://localhost:4444`).

### Snapshot tests

Expand Down
Loading
Loading