Browse Source

test: fix assertion in vm test

Prototypes are not strict equal when they are from
different contexts. Therefore, assert.strictEqual()
fails for objects that are created in different
contexts, e.g., in vm.runInContext().

Instead of expecting the prototypes to be equal,
only check the properties of the objects
for equality.

PR-URL: https://github.com/nodejs/node/pull/11862
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
v6.x
AnnaMag 8 years ago
committed by Myles Borins
parent
commit
9dd918b0ab
No known key found for this signature in database GPG Key ID: 933B01F40B5CA946
  1. 7
      test/known_issues/test-vm-getters.js

7
test/known_issues/test-vm-getters.js

@ -16,4 +16,9 @@ const context = vm.createContext(sandbox);
const code = 'Object.getOwnPropertyDescriptor(this, "prop");';
const result = vm.runInContext(code, context);
assert.strictEqual(result, descriptor);
// Ref: https://github.com/nodejs/node/issues/11803
assert.deepStrictEqual(Object.keys(result), Object.keys(descriptor));
for (const prop of Object.keys(result)) {
assert.strictEqual(result[prop], descriptor[prop]);
}

Loading…
Cancel
Save