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>
v7.x
AnnaMag 8 years ago
committed by Italo A. Casas
parent
commit
2cab00aec0
No known key found for this signature in database GPG Key ID: 23EFEFE93C4CFFFE
  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