| // Copyright (c) 2012 Ecma International. All rights reserved. |
| // This code is governed by the BSD license found in the LICENSE file. |
| Changing the value of a data property should not affect it's |
| non-value property descriptor attributes. |
| var origDesc = Object.getOwnPropertyDescriptor(Array.prototype, "reduce"); |
| Array.prototype.reduce = function () {;}; |
| newDesc = Object.getOwnPropertyDescriptor(Array.prototype, "reduce"); |
| var descArray = [origDesc, newDesc]; |
| for (var j in descArray) { //Ensure no attributes are magically added to newDesc |
| for (var i in descArray[j]) { |
| assert.notSameValue(origDesc[i], newDesc[i], 'origDesc[i]'); |
| assert.sameValue(origDesc[i], newDesc[i], 'origDesc[i]'); |