Browse Source

tests: ignore nulls and undefined in the "util.promisify" test

Aleksei Kuzmin 6 years ago
parent
commit
ce8e93bad3
1 changed files with 6 additions and 0 deletions
  1. 6 0
      spec/asar-spec.js

+ 6 - 0
spec/asar-spec.js

@@ -895,6 +895,12 @@ describe('asar package', function () {
         const {hasOwnProperty} = Object.prototype
 
         for (const [propertyName, originalValue] of Object.entries(originalFs)) {
+          // Some properties exist but have a value of `undefined` on some platforms.
+          // E.g. `fs.lchmod`, which in only available on MacOS, see
+          // https://nodejs.org/docs/latest-v10.x/api/fs.html#fs_fs_lchmod_path_mode_callback
+          // Also check for `null`s, `hasOwnProperty()` can't handle them.
+          if (typeof originalValue === 'undefined' || originalValue === null) continue
+
           if (hasOwnProperty.call(originalValue, util.promisify.custom)) {
             expect(fs).to.have.own.property(propertyName)
                 .that.has.own.property(util.promisify.custom)