Skip to main content
GoodFirstPicks
DashboardIssuesReposLeaderboard

GoodFirstPicks by Leaveitblank © 2026

CreatorRequest a RepoPrivacy PolicyTerms of Service
Some tests are not fully CWD-agnostic | GoodFirstPicks

Some tests are not fully CWD-agnostic

nodejs/node 9 comments 1mo ago
View on GitHub
lowopenScope: clearSkill match: yesTest focusedNode.jsJavaScript

Why this is a good first issue

Test output normalization needs path-aware handling to avoid corrupting non-path strings.

AI Summary

The issue involves making test output normalization path-aware to prevent accidental string corruption when tests run from root directory. The fix is scoped to a specific test file and has maintainer approval. No major blockers exist beyond careful path handling.

Issue Description

Version

v26.0.0-pre

Platform

Linux tumba 6.18.3-gentoo-yuran #1 SMP Sun Jan  4 21:50:21 +08 2026 x86_64 Intel(R) Core(TM)2 Quad CPU Q8200 @ 2.33GHz GenuineIntel GNU/Linux

Subsystem

test

What steps will reproduce the bug?

# cd /
# git clone --depth=1 https://github.com/nodejs/node.git
# cd node
# ./configure && make test-only

In realistic scenarios, cd / is implicit: for example, right after chroot or pivot_root into disposable environment.

How often does it reproduce? Is there a required condition?

Always.

What is the expected behavior? Why is that the expected behavior?

All tests are expected to pass.

What do you see instead?

A bunch of failing tests. Assertions are failing with something like:

+   '(node:*) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https:*js.org*api*cli.html#cli_unhandled_rejections_mode). (rejection id: 1)\n'
-   '(node:*) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https:*nodejs.org*api*cli.html#cli_unhandled_rejections_mode). (rejection id: 1)\n'
   'Error: an error!\n' +
+   '    at functionD (*/test/fixtures/source-map*_modules/error-stack/enclosing-call-site.js:16:17)\n' +
+   '    at functionC (*/test/fixtures/source-map*_modules/error-stack/enclosing-call-site.js:10:3)\n' +
+   '    at functionB (*/test/fixtures/source-map*_modules/error-stack/enclosing-call-site.js:6:3)\n' +

GitHub Labels

test

Want to work on this?

Claim this issue to let others know you're working on it. You'll earn 10 points when you complete it!

Risk Flags

  • path normalization edge cases
Loading labels...

Details

Points10 pts
Difficultylow
Scopeclear
Skill Matchyes
Test Focusedyes