tools: fix test-npm-package

Migrate the script to the new common tmpDir API.

Backport-PR-URL: https://github.com/nodejs/node/pull/21302
PR-URL: https://github.com/nodejs/node/pull/19293
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
This commit is contained in:
Michaël Zasso
2018-03-12 07:39:36 +01:00
committed by Rod Vagg
parent 677236494b
commit 5362e2fbb3

View File

@@ -22,6 +22,7 @@ const { createWriteStream, mkdirSync, rmdirSync } = require('fs');
const path = require('path');
const common = require('../test/common');
const tmpDir = require('../test/common/tmpdir');
const projectDir = path.resolve(__dirname, '..');
const npmBin = path.join(projectDir, 'deps', 'npm', 'bin', 'npm-cli.js');
@@ -39,15 +40,14 @@ function spawnCopyDeepSync(source, destination) {
function runNPMPackageTests({ srcDir, install, rebuild, testArgs, logfile }) {
// Make sure we don't conflict with concurrent test runs
const srcHash = createHash('md5').update(srcDir).digest('hex');
common.tmpDir = `${common.tmpDir}.npm.${srcHash}`;
common.refreshTmpDir();
tmpDir.path = `${tmpDir.path}.npm.${srcHash}`;
tmpDir.refresh();
const tmpDir = common.tmpDir;
const npmCache = path.join(tmpDir, 'npm-cache');
const npmPrefix = path.join(tmpDir, 'npm-prefix');
const npmTmp = path.join(tmpDir, 'npm-tmp');
const npmUserconfig = path.join(tmpDir, 'npm-userconfig');
const pkgDir = path.join(tmpDir, 'pkg');
const npmCache = path.join(tmpDir.path, 'npm-cache');
const npmPrefix = path.join(tmpDir.path, 'npm-prefix');
const npmTmp = path.join(tmpDir.path, 'npm-tmp');
const npmUserconfig = path.join(tmpDir.path, 'npm-userconfig');
const pkgDir = path.join(tmpDir.path, 'pkg');
spawnCopyDeepSync(srcDir, pkgDir);
@@ -63,10 +63,10 @@ function runNPMPackageTests({ srcDir, install, rebuild, testArgs, logfile }) {
};
if (common.isWindows) {
npmOptions.env.home = tmpDir;
npmOptions.env.home = tmpDir.path;
npmOptions.env.Path = `${nodePath};${process.env.Path}`;
} else {
npmOptions.env.HOME = tmpDir;
npmOptions.env.HOME = tmpDir.path;
npmOptions.env.PATH = `${nodePath}:${process.env.PATH}`;
}
@@ -102,8 +102,8 @@ function runNPMPackageTests({ srcDir, install, rebuild, testArgs, logfile }) {
}
testChild.on('exit', () => {
common.refreshTmpDir();
rmdirSync(tmpDir);
tmpDir.refresh();
rmdirSync(tmpDir.path);
});
}