forked from nodejs/node
/
test.js
40 lines (35 loc) · 1.26 KB
/
test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
'use strict';
const common = require('../../common');
const tmpdir = require('../../common/tmpdir');
const fs = require('fs');
const path = require('path');
const url = require('url');
const filename = require.resolve(`./build/${common.buildType}/test_general`);
const test_general = require(filename);
const assert = require('assert');
tmpdir.refresh();
{
// TODO(gabrielschulhof): This test may need updating if/when the filename
// becomes a full-fledged URL.
assert.strictEqual(test_general.filename, url.pathToFileURL(filename).href);
}
{
const urlTestDir = path.join(tmpdir.path, 'foo%#bar');
const urlTestFile = path.join(urlTestDir, path.basename(filename));
fs.mkdirSync(urlTestDir, { recursive: true });
fs.copyFileSync(filename, urlTestFile);
const reportedFilename = require(urlTestFile).filename;
assert.doesNotMatch(reportedFilename, /foo%#bar/);
assert.strictEqual(reportedFilename, url.pathToFileURL(urlTestFile).href);
fs.rmSync(urlTestDir, {
force: true,
recursive: true,
maxRetries: 256
});
}
{
const [ major, minor, patch, release ] = test_general.testGetNodeVersion();
assert.strictEqual(process.version.split('-')[0],
`v${major}.${minor}.${patch}`);
assert.strictEqual(release, process.release.name);
}