diff --git a/harness/propertyHelper.js b/harness/propertyHelper.js index 8ce65ba86c6f8a8aeaafa1c1b29dd82a71abb359..5bb1ed41579626ffe7e208ae3bd630a70d809bbb 100644 --- a/harness/propertyHelper.js +++ b/harness/propertyHelper.js @@ -11,7 +11,22 @@ function isConfigurable(obj, name) { } function isEnumerable(obj, name) { - return Object.prototype.hasOwnProperty.call(obj, name) && + var stringCheck; + + if (typeof name === "string") { + for (var x in obj) { + if (x === name) { + stringCheck = true; + break; + } + } + } else { + // skip it if name is not string, works for Symbol names. + stringCheck = true; + } + + return stringCheck && + Object.prototype.hasOwnProperty.call(obj, name) && Object.prototype.propertyIsEnumerable.call(obj, name); }