node/test/parallel/test-esm-url-extname.js
Antoine du Hamel aa5eb58d3b
esm: skip file: URL conversion to path when possible
PR-URL: https://github.com/nodejs/node/pull/46305
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Guy Bedford <guybedford@gmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: James M Snell <jasnell@gmail.com>
2023-04-01 07:43:38 +00:00

28 lines
810 B
JavaScript

// Flags: --expose-internals
'use strict';
require('../common');
const assert = require('node:assert');
const path = require('node:path');
const { extname } = require('node:internal/modules/esm/get_format');
const { fileURLToPath } = require('node:url');
[
'file:///c:/path/to/file',
'file:///c:/path/to/file.ext',
'file:///c:/path.to/file.ext',
'file:///c:/path.to/file',
'file:///c:/path.to/.file',
'file:///c:/path.to/.file.ext',
'file:///c:/path/to/f.ext',
'file:///c:/path/to/..ext',
'file:///c:/path/to/..',
'file:///c:/file',
'file:///c:/file.ext',
'file:///c:/.file',
'file:///c:/.file.ext',
].forEach((input) => {
const inputAsURL = new URL(input);
const inputAsPath = fileURLToPath(inputAsURL);
assert.strictEqual(extname(inputAsURL), path.extname(inputAsPath));
});