Skip to content

Commit f5cf55d

Browse files
committed
[Tests] avoid tests breaking on node 11.11 - 11.13
1 parent 0008477 commit f5cf55d

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
"object-keys": "^1.1.1",
4444
"rimraf": "^2.7.1",
4545
"safe-publish-latest": "^2.0.0",
46+
"semver": "^6.3.0",
4647
"tap": "0.4.13",
4748
"tape": "^5.5.3",
4849
"tmp": "^0.0.31"

test/core.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
var test = require('tape');
22
var keys = require('object-keys');
3+
var semver = require('semver');
4+
35
var resolve = require('../');
46

7+
var brokenNode = semver.satisfies(process.version, '11.11 - 11.13');
8+
59
test('core modules', function (t) {
610
t.test('isCore()', function (st) {
711
st.ok(resolve.isCore('fs'));
@@ -22,10 +26,13 @@ test('core modules', function (t) {
2226

2327
for (var i = 0; i < cores.length; ++i) {
2428
var mod = cores[i];
29+
// note: this must be require, not require.resolve, due to https://github.com/nodejs/node/issues/43274
2530
var requireFunc = function () { require(mod); }; // eslint-disable-line no-loop-func
26-
console.log(mod, resolve.core, resolve.core[mod]);
31+
t.comment(mod + ': ' + resolve.core[mod]);
2732
if (resolve.core[mod]) {
2833
st.doesNotThrow(requireFunc, mod + ' supported; requiring does not throw');
34+
} else if (brokenNode) {
35+
st.ok(true, 'this version of node is broken: attempting to require things that fail to resolve breaks "home_paths" tests');
2936
} else {
3037
st.throws(requireFunc, mod + ' not supported; requiring throws');
3138
}

0 commit comments

Comments
 (0)