Files
react-native-devtools-frontend/node_modules/stylelint/docs/developer-guide/system-tests.md
T
Alex Rudenko 6c0f161c95 Revert "Update stylelint to 14.0.1"
This reverts commit 1e08ee816b.

Reason for revert: tree is closed due to errors https://ci.chromium.org/ui/p/devtools-frontend/builders/ci/Stand-alone%20Linux/8169/overview

Original change's description:
> Update stylelint to 14.0.1
>
> This also upgrades PostCSS to 8.3.11.
>
> DISABLE_THIRD_PARTY_CHECK=Updating Stylelint configuration
> R=​szuend@chromium.org
>
> Bug: none
> Change-Id: I606540b03509d7c6e73f3d490327cd4174e03d31
> Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3259541
> Reviewed-by: Simon Zünd <szuend@chromium.org>
> Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>

Bug: none
Change-Id: Icb1c02b41dbccc3b4fc5760f5dd0b78eca078b61
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3263399
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Alex Rudenko <alexrudenko@chromium.org>
Commit-Queue: Alex Rudenko <alexrudenko@chromium.org>
2021-11-05 06:32:31 +00:00

965 B

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