mirror of
https://github.com/nodejs/node.git
synced 2026-10-28 10:15:07 +08:00
Delete test-crypto-ecb.js, which can no longer run anywhere: Blowfish is available only from OpenSSL's legacy provider and is absent from BoringSSL. The addon and cctest version guards become OPENSSL_IS_BORINGSSL checks. Remove legacy digest-alias coverage and unreachable OpenSSL 1.x branches. JavaScript test and benchmark gates, skip reasons, and TLS error expectations that distinguished OpenSSL 1.x from provider-backed OpenSSL now distinguish BoringSSL, including PKCS12 parsing, named DH groups, private-key serialization, RSA-PSS parameters, consolidated provider caches, FIPS availability, and empty KMAC output. Keep the CCM alternate finalization error only for BoringSSL. Provider-only test skips use version-neutral terminology or state the actual minimum OpenSSL version. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex PR-URL: https://github.com/nodejs/node/pull/64777 Fixes: https://github.com/nodejs/node/issues/56733 Refs: https://github.com/nodejs/node/pull/64211 Refs: https://github.com/nodejs/node/pull/63966 Refs: https://github.com/nodejs/node/pull/53329 Refs: https://github.com/nodejs/node/pull/48950 Refs: https://github.com/nodejs/node/issues/45465 Refs: https://github.com/nodejs/node/issues/42827 Refs: https://github.com/nodejs/node/issues/47076 Refs: https://github.com/nodejs/node/pull/62862 Refs: https://github.com/nodejs/node/pull/38512 Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Gürgün Dayıoğlu <hey@gurgun.day>
102 lines
3.0 KiB
JavaScript
102 lines
3.0 KiB
JavaScript
'use strict';
|
|
|
|
// This tests that --trace-env works.
|
|
const common = require('../common');
|
|
const { spawnSyncAndAssert } = require('../common/child_process');
|
|
const assert = require('assert');
|
|
const fixtures = require('../common/fixtures');
|
|
|
|
// Check reads from the Node.js internals.
|
|
spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('empty.js')], {
|
|
stderr(output) {
|
|
// This is a non-exhaustive list of the environment variables checked
|
|
// during startup of an empty script at the time this test was written.
|
|
// If the internals remove any one of them, the checks here can be updated
|
|
// accordingly.
|
|
if (common.hasIntl) {
|
|
assert.match(output, /get "NODE_ICU_DATA"/);
|
|
}
|
|
if (common.hasCrypto) {
|
|
assert.match(output, /get "NODE_EXTRA_CA_CERTS"/);
|
|
|
|
const { isBoringSSL } = require('../common/crypto');
|
|
if (!isBoringSSL) {
|
|
assert.match(output, /get "OPENSSL_CONF"/);
|
|
}
|
|
}
|
|
assert.match(output, /get "NODE_DEBUG_NATIVE"/);
|
|
assert.match(output, /get "NODE_COMPILE_CACHE"/);
|
|
assert.match(output, /get "NODE_NO_WARNINGS"/);
|
|
assert.match(output, /get "NODE_V8_COVERAGE"/);
|
|
assert.match(output, /get "NODE_DEBUG"/);
|
|
assert.match(output, /get "NODE_CHANNEL_FD"/);
|
|
assert.match(output, /get "NODE_UNIQUE_ID"/);
|
|
if (common.isWindows) {
|
|
assert.match(output, /get "USERPROFILE"/);
|
|
} else {
|
|
assert.match(output, /get "HOME"/);
|
|
}
|
|
assert.match(output, /get "NODE_PATH"/);
|
|
assert.match(output, /get "WATCH_REPORT_DEPENDENCIES"/);
|
|
}
|
|
});
|
|
|
|
// Check get from user land.
|
|
spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'get.js') ], {
|
|
env: {
|
|
...process.env,
|
|
FOO: 'FOO',
|
|
BAR: undefined,
|
|
}
|
|
}, {
|
|
stderr(output) {
|
|
assert.match(output, /get "FOO"/);
|
|
assert.match(output, /get "BAR"/);
|
|
}
|
|
});
|
|
|
|
// Check set from user land.
|
|
spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'set.js') ], {
|
|
stderr(output) {
|
|
assert.match(output, /set "FOO"/);
|
|
}
|
|
});
|
|
|
|
// Check define from user land.
|
|
spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'define.js') ], {
|
|
stderr(output) {
|
|
assert.match(output, /set "FOO"/);
|
|
}
|
|
});
|
|
|
|
// Check query from user land.
|
|
spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'query.js') ], {
|
|
env: {
|
|
...process.env,
|
|
FOO: 'FOO',
|
|
BAR: undefined,
|
|
BAZ: undefined,
|
|
}
|
|
}, {
|
|
stderr(output) {
|
|
assert.match(output, /query "FOO"/);
|
|
assert.match(output, /query "BAR"/);
|
|
assert.match(output, /query "BAZ"/);
|
|
}
|
|
});
|
|
|
|
// Check delete from user land.
|
|
spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'delete.js') ], {
|
|
stderr(output) {
|
|
assert.match(output, /delete "FOO"/);
|
|
}
|
|
});
|
|
|
|
// Check enumeration from user land.
|
|
spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'enumerate.js') ], {
|
|
stderr(output) {
|
|
const matches = output.match(/enumerate environment variables/g);
|
|
assert.strictEqual(matches.length, 2);
|
|
}
|
|
});
|