node/test/parallel/test-require-long-path.js
Rich Trott a1b0d5da07
test: move tmpdir to submodule of common
Move tmpdir functionality to its own module (common/tmpdir).

Backport-PR-URL: https://github.com/nodejs/node/pull/19488
PR-URL: https://github.com/nodejs/node/pull/17856
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2018-03-29 23:28:22 -04:00

29 lines
741 B
JavaScript

'use strict';
const common = require('../common');
if (!common.isWindows)
common.skip('this test is Windows-specific.');
const fs = require('fs');
const path = require('path');
const tmpdir = require('../common/tmpdir');
// make a path that is more than 260 chars long.
const dirNameLen = Math.max(260 - tmpdir.path.length, 1);
const dirName = path.join(tmpdir.path, 'x'.repeat(dirNameLen));
const fullDirPath = path.resolve(dirName);
const indexFile = path.join(fullDirPath, 'index.js');
const otherFile = path.join(fullDirPath, 'other.js');
tmpdir.refresh();
fs.mkdirSync(fullDirPath);
fs.writeFileSync(indexFile, 'require("./other");');
fs.writeFileSync(otherFile, '');
require(indexFile);
require(otherFile);
tmpdir.refresh();