仅 运行 Node 版本 8 或更高版本的 coffeescript 测试

Only run coffeescript test for Node version 8 or greater

我有一个 CoffeeScript 测试,如果 Node 版本为 8 或更高,我只想 运行。对于任何较低的版本号,我想跳过测试。

文件的扩展名为 .spec.coffee,测试采用以下结构:

it.skip 'test name', ->

# __dirname is the 'test/' folder, so go up then find the SDK path
path = path.join __dirname, '..', 'folder1', 'folder2'

# run `npm run tstest`
exec = util.promisify(process.exec)
return exec 'npm run test', cwd: path
  .then (data) ->
    expect(data.stderr).to.eql ''
    expect(data.stdout).to.exist

据我了解,util.promisify 在 Node 版本 7 或更低版本中不可用,因此我希望在 运行 在这些版本上运行时跳过此测试。

这可能吗?如果可以,我该怎么做?

您可以使用

在脚本中获取节点的版本
process.versions.node 

As I understand it, util.promisify

与其跳过测试,不如为该函数找到一个 polyfill。