This repository has been archived on 2020-11-02. You can view files and clone it, but cannot push or open issues or pull requests.
2020-11-01 22:46:04 +00:00

24 lines
965 B
Markdown

# Writing system tests
System tests verify that stylelint works as expected. They are another line of defense against regressions, after the unit tests and integration tests.
Each of these system tests asserts that we end up with some expected output, given a configuration and a stylesheet.
These tests should not be comprehensive and systematic (_the unit tests should_). They should reproduce real use-cases and verify that those use-cases work as expected.
## Jest snapshots
The tests use Jest snapshots, so we can easily:
- assert against potentially large objects and strings
- update expectations as needed.
## The pattern
To add a system test, you should:
- add a test-case folder to `system-tests/` incrementing the number from existing test cases
- add a configuration file and a stylesheet
- add a `fs.test.js` and `no-fs.test.js` following the format established by existing tests, and using the `systemTestUtils`
- take a snapshot of `output`