From 8024f29812143b96dda8c98f70a79a8d6838a6f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= Date: Wed, 23 Oct 2019 10:27:23 +0200 Subject: [PATCH 1/2] test: verify npm compatibility with releases This adds a test that makes sure than running `npm` from a release does not print warnings to the console. --- test/parallel/test-release-npm.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 test/parallel/test-release-npm.js diff --git a/test/parallel/test-release-npm.js b/test/parallel/test-release-npm.js new file mode 100644 index 00000000000000..06123cc4588af6 --- /dev/null +++ b/test/parallel/test-release-npm.js @@ -0,0 +1,24 @@ +'use strict'; + +const common = require('../common'); +const assert = require('assert'); +const child_process = require('child_process'); +const path = require('path'); + +const releaseReg = /^v\d+\.\d+\.\d+$/; + +if (!releaseReg.test(process.version)) { + common.skip('This test is only for release builds'); +} + +{ + // Verify that npm does not print out a warning when executed + + const npmCli = path.join(__dirname, '../../deps/npm/bin/npm-cli.js'); + const npmExec = child_process.spawnSync(process.execPath, [npmCli]); + assert.strictEqual(npmExec.status, 1); + + const stderr = npmExec.stderr.toString(); + assert.strictEqual(stderr.length, 0, 'npm is not ready for this release ' + + 'and is going to print warnings to users: \n' + stderr); +} From e270d4e79de018cb97226a38e622578460927b14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= Date: Wed, 23 Oct 2019 10:31:13 +0200 Subject: [PATCH 2/2] Update test-release-npm.js --- test/parallel/test-release-npm.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/parallel/test-release-npm.js b/test/parallel/test-release-npm.js index 06123cc4588af6..23d9cb39cea182 100644 --- a/test/parallel/test-release-npm.js +++ b/test/parallel/test-release-npm.js @@ -20,5 +20,5 @@ if (!releaseReg.test(process.version)) { const stderr = npmExec.stderr.toString(); assert.strictEqual(stderr.length, 0, 'npm is not ready for this release ' + - 'and is going to print warnings to users: \n' + stderr); + 'and is going to print warnings to users:\n' + stderr); }