diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2a9a71a21..81f409d12 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -21,13 +21,14 @@ auto-reformat the code, check type annotations, run unit tests, check code coverage, and lint the code. 3. If you're writing a new feature, try to add it to the end to end test. 1. If adding support for a new OpenAPI feature, add it somewhere in `end_to_end_tests/openapi.json` - 2. Regenerate the "golden record" with `task regen`. This is a client generated from the OpenAPI document used for end to end testing. - 3. Check the changes to `end_to_end_tests/golden-record` to confirm only what you intended to change did change and that the changes look correct. -4. Run the end to end tests with `task e2e`. This will generate a client against `end_to_end_tests/openapi.json` and - compare it with `end_to_end_tests/golden-record`. The test will fail if **anything is different**. The end to end - test is not included in `task check` as it takes longer to run and doesn't provide very useful feedback in the - event of failure. If this test does fail, the easiest way to check what's wrong is to run `task regen` and check - the diff of `golden-record`. + 2. Regenerate the "golden records" with `task regen` and `task regen_custom`. These are clients generated from the OpenAPI document used for end to end testing. + 3. Check the changes to `end_to_end_tests/golden-record` and `end_to_end_tests/golden-record-custom` to confirm only what you intended to change did change and that the changes look correct. +4. Run the end to end tests with `task e2e`. This will generate clients against `end_to_end_tests/openapi.json` and + compare them with the golden records. The tests will fail if **anything is different**. The end to end + tests are not included in `task check` as they take longer to run and don't provide very useful feedback in the + event of failure. If an e2e test does fail, the easiest way to check what's wrong is to run `task regen` and/or + `task regen_custom` and check the diffs. You can also use `task re` which will run `regen`, `regen_custom` and `e2e` + in that order. 5. Include a summary of your changes in `CHANGELOG.md`. If there isn't an "Unreleased" version in the CHANGELOG yet, go ahead and add one.