From 47b7d515edd99d88c69baa4e75c0d4633a1aed8f Mon Sep 17 00:00:00 2001 From: Louis Dureuil Date: Mon, 30 Jan 2023 17:39:05 +0100 Subject: [PATCH] Add more detailed contribution instructions for tests --- CONTRIBUTING.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4b849756b..1a43e62b4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -52,6 +52,23 @@ cargo test This command will be triggered to each PR as a requirement for merging it. +#### Snapshot-based tests + +We are using [insta](https://insta.rs) to perform snapshot-based testing. +We recommend using the insta tooling (such as `cargo-insta`) to update the snapshots if they change following a PR. + +New tests should use insta where possible rather than manual `assert` statements. + +Furthermore, we provide some macros on top of insta, notably a way to use snapshot hashes instead of inline snapshots, saving a lot of space in the repository. + +To effectively debug snapshot-based hashes, we recommend you export the `MEILI_TEST_FULL_SNAPS` environment variable so that snapshot are fully created locally: + +``` +export MEILI_TEST_FULL_SNAPS=true # add this to your .bashrc, .zshrc, ... +``` + +#### Test troubleshooting + If you get a "Too many open files" error you might want to increase the open file limit using this command: ```bash