2014-07-22 01:09:02 +02:00
|
|
|
// Copyright (c) 2012 Ecma International. All rights reserved.
|
2015-07-17 17:42:45 +02:00
|
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
2014-07-22 01:09:02 +02:00
|
|
|
|
|
|
|
/*---
|
2014-07-25 00:41:42 +02:00
|
|
|
es5id: 15.2.3.6-3-92-1
|
2014-07-22 01:09:02 +02:00
|
|
|
description: >
|
|
|
|
Object.defineProperty - 'Attributes' is a Date object that uses
|
|
|
|
Object's [[Get]] method to access the 'configurable' property
|
|
|
|
(8.10.5 step 4.a)
|
|
|
|
---*/
|
|
|
|
|
2018-02-15 21:33:45 +01:00
|
|
|
var obj = {};
|
2015-08-13 17:41:47 +02:00
|
|
|
|
2018-02-15 21:33:45 +01:00
|
|
|
Date.prototype.configurable = true;
|
|
|
|
var dateObj = new Date();
|
2014-07-22 01:09:02 +02:00
|
|
|
|
2018-02-15 21:33:45 +01:00
|
|
|
Object.defineProperty(obj, "property", dateObj);
|
2014-07-22 01:09:02 +02:00
|
|
|
|
2018-02-15 21:33:45 +01:00
|
|
|
var beforeDeleted = obj.hasOwnProperty("property");
|
2014-07-22 01:09:02 +02:00
|
|
|
|
2018-02-15 21:33:45 +01:00
|
|
|
delete obj.property;
|
2014-07-22 01:09:02 +02:00
|
|
|
|
2018-02-15 21:33:45 +01:00
|
|
|
var afterDeleted = obj.hasOwnProperty("property");
|
2014-07-22 01:09:02 +02:00
|
|
|
|
2015-08-13 17:41:47 +02:00
|
|
|
assert.sameValue(beforeDeleted, true, 'beforeDeleted');
|
|
|
|
assert.sameValue(afterDeleted, false, 'afterDeleted');
|