Skip to content

test: run test-config-json-schema in default builds - #66827

Open
marco-ippolito wants to merge 2 commits into
nodejs:mainfrom
marco-ippolito:test-config-json-schema-quic
Open

marco-ippolito wants to merge 2 commits into
nodejs:mainfrom
marco-ippolito:test-config-json-schema-quic

Conversation

@marco-ippolito

@marco-ippolito marco-ippolito commented Oct 18, 2026 •

Copy link
Copy Markdown
Member

test-config-json-schema was skipped unless Node.js was built with QUIC, but doc/node-config-schema.json is generated from a default build, where QUIC is disabled. So the test never ran in CI and the schema was no longer checked.

This skips the test instead when QUIC, DTLS or the V8 sandbox are enabled, or when FFI is disabled, since each of these changes the set of available options. It also removes the dead node_quic check, and compares the schemas with assert.deepStrictEqual() so a failure shows which options differ.

The schema had drifted in the meantime, so this also regenerates it with tools/doc/generate-json-schema.mjs.

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/config

@nodejs-github-bot nodejs-github-bot added needs-ci PRs that need a full CI run. test Issues and PRs related to Node.js core tests and test infrastructure. labels Oct 18, 2026
Regenerate the schema with tools/doc/generate-json-schema.mjs. It had
fallen out of date because test-config-json-schema was not running in
CI.

Assisted-by: claude:opus-5.5
Signed-off-by: Marco Ippolito <marcoippolito54@gmail.com>
The test was skipped unless Node.js was built with QUIC, but the JSON
schema is generated from a build with the default configuration
options, where QUIC is disabled. As a result the test never ran in CI
and the schema was no longer checked.

Skip the test instead when QUIC, DTLS or the V8 sandbox are enabled,
or when FFI is disabled, since each of these changes the set of
available options. Also remove the check for the `node_quic` variable,
which no longer exists.

Compare the schemas with assert.deepStrictEqual() so that a failure
shows which options differ instead of two long strings.

Assisted-by: claude:opus-5.5
Signed-off-by: Marco Ippolito <marcoippolito54@gmail.com>
@codecov

codecov Bot commented Oct 18, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.57%. Comparing base (e2d5522) to head (d51f626).

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #66827      +/-   ##
==========================================
+ Coverage   90.50%   90.57%   +0.07%     
==========================================
  Files         797      797              
  Lines      277793   277793              
  Branches    53366    53373       +7     
==========================================
+ Hits       251405   251609     +204     
+ Misses      16801    16561     -240     
- Partials     9587     9623      +36     

see 28 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@marco-ippolito
marco-ippolito force-pushed the test-config-json-schema-quic branch from d51f626 to 8ac821e Compare October 18, 2026 11:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-ci PRs that need a full CI run. test Issues and PRs related to Node.js core tests and test infrastructure.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants