From 3031027894ce259d06c551f956c2c7bab414c6fa Mon Sep 17 00:00:00 2001 From: Carl-Erik Kopseng Date: Mon, 9 Mar 2020 13:39:39 +0100 Subject: [PATCH] Add custom prop isOwn to descriptor Makes it possible to see if the descriptor originates from the object or its prototype chain --- lib/sinon/util/core/get-property-descriptor.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/sinon/util/core/get-property-descriptor.js b/lib/sinon/util/core/get-property-descriptor.js index 8dd3dc830..9625fd355 100644 --- a/lib/sinon/util/core/get-property-descriptor.js +++ b/lib/sinon/util/core/get-property-descriptor.js @@ -3,9 +3,15 @@ module.exports = function getPropertyDescriptor(object, property) { var proto = object; var descriptor; + var isOwn = object && Object.getOwnPropertyDescriptor(object, property); while (proto && !(descriptor = Object.getOwnPropertyDescriptor(proto, property))) { proto = Object.getPrototypeOf(proto); } + + if (descriptor) { + descriptor.isOwn = isOwn; + } + return descriptor; };