tschaub / mock-fs

Configurable mock for the fs module
https://npmjs.org/package/mock-fs
Other
906 stars 85 forks source link

TypeError: uvBinding.getErrorMap is not a function #334

Closed ravali-rimmalapudi closed 2 years ago

ravali-rimmalapudi commented 3 years ago

I am using mock-fs for my test cases in Mocha. This is my configuration:

"mocha": "^8.3.2",
"mock-fs": "^5.0.0",

While running test cases with node version 10.x test cases are failing with

TypeError: uvBinding.getErrorMap is not a function
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/node_modules/mock-fs/lib/error.js:10:11)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Module.replacementCompile (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:60:13)
    at Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:64:4)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/node_modules/mock-fs/lib/binding.js:9:17)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Module.replacementCompile (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:60:13)
    at Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:64:4)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/node_modules/mock-fs/lib/index.js:3:17)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Module.replacementCompile (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:60:13)
    at Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:64:4)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/test/release-scripts/change-log-helper.test.js:4:14)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Module.replacementCompile (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:60:13)
    at Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Object.<anonymous> (/home/travis/build/twilio/twilio-cli-core/node_modules/append-transform/index.js:64:4)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.exports.requireOrImport (/home/travis/build/twilio/twilio-cli-core/node_modules/mocha/lib/esm-utils.js:42:12)
    at Object.exports.loadFilesAsync (/home/travis/build/twilio/twilio-cli-core/node_modules/mocha/lib/esm-utils.js:55:34)
    at process._tickCallback (internal/process/next_tick.js:68:7)
    at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)

and with node version 14.x it is working fine. What I need to do to work with node 10.x?

3cp commented 3 years ago

Mockfs v5 dropped nodejs v10 support (as v10 is end of life). You can use previous major version mockfs v4 if you still need to use nodejs v10.

tillig commented 2 years ago

If that's the case it'd probably be good to put an engines field in the package.json so an error will be issued during npm install to indicate it's no longer compatible. Just hit this myself (because Azure DevOps tasks execute in Node 10 so I'm stuck on Node 10 for that job) and this wasn't obvious.

3cp commented 2 years ago

Closed by #337