CodeVetter · Repo Unpack · Testing signals
eslint/eslint
Tests and CI were inspected, not executed; no passing result or measured coverage is established here. The inspected suite uses Mocha-style tests, RuleTester, Chai or Node assertions, Sinon, and Proxyquire. CI defines Node, operating-system, browser, type, documentation, and ecosystem checks. Inspection is bounded, and identified limits apply to the specific tests or workflows cited.
- The configured unit runner is Mocha under c8 with --forbid-only; inspected CLI tests use Chai, Node assertions, Sinon, and Proxyquire, while ESLint-class tests also use filesystem fixtures.
- The full test target checks rule files, runs unit tests, fuzzes 150 cases with fuzzBrokenAutofixes false, and checks licenses; coverage thresholds are 99% statements/functions/lines and 98% branches.
- Inspected CLI cases assert stdin lint failure status 1, empty stdin success without log output, and unsupported-option status 2.
- RuleTester no-undef cases cover explicit globals, global comments, CommonJS require, typeof exemptions, and later syntax; Linter cases assert ECMAScript-version-dependent global availability.
- Inspected persistence tests assert ESLint/Node versions participate in cache hashing and suppression loading handles valid JSON, missing files, and malformed JSON; suppression readFile calls are stubbed in these cases.
- ESLint constructor tests assert numeric/auto concurrency rejects uncloneable function/plugin options with ESLINT_UNCLONEABLE_OPTIONS and recommends options modules.
- Main CI defines Linux Node 20/22/24/26 runs, minimum Node 20.19.0, Windows/macOS LTS runs, fuzzing and EMFILE checks; Cypress selects only tests/lib/linter/linter.js with a built-bundle alias, so that browser job does not select CLI/file-engine tests.
- CI also defines type/compiler compatibility checks, external-consumer type tests, docs builds/link validation, and ecosystem plugin tests; the ecosystem matrix explicitly disables typescript-eslint pending test updates.