You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.0 KiB
33 lines
1.0 KiB
'use strict'
|
|
|
|
const t = require('tap')
|
|
const semver = require('semver')
|
|
|
|
if (!semver.satisfies(process.versions.node, '^13.3.0 || ^12.10.0 || >= 14.0.0')) {
|
|
t.skip('Skip esm because not supported by Node')
|
|
} else {
|
|
// Node v8 throw a `SyntaxError: Unexpected token import`
|
|
// even if this branch is never touch in the code,
|
|
// by using `eval` we can avoid this issue.
|
|
// eslint-disable-next-line
|
|
new Function('module', 'return import(module)')('./esm.mjs').catch((err) => {
|
|
process.nextTick(() => {
|
|
throw err
|
|
})
|
|
})
|
|
}
|
|
|
|
if (!semver.satisfies(process.versions.node, '>= 14.13.0 || ^12.20.0')) {
|
|
t.skip('Skip named exports because not supported by Node')
|
|
} else {
|
|
// Node v8 throw a `SyntaxError: Unexpected token import`
|
|
// even if this branch is never touch in the code,
|
|
// by using `eval` we can avoid this issue.
|
|
// eslint-disable-next-line
|
|
new Function('module', 'return import(module)')('./named-exports.mjs').catch((err) => {
|
|
process.nextTick(() => {
|
|
throw err
|
|
})
|
|
})
|
|
}
|