Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(47)

Unified Diff: test/mjsunit/object-freeze.js

Issue 15681004: Revert "Make Object.freeze fast" (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/v8natives.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/mjsunit/object-freeze.js
diff --git a/test/mjsunit/object-freeze.js b/test/mjsunit/object-freeze.js
index 619ada006ea710e1a26ba25b67b3e6ecdfed1530..c3a9278bbd9c4629489f143e52cedba78684ddb4 100644
--- a/test/mjsunit/object-freeze.js
+++ b/test/mjsunit/object-freeze.js
@@ -28,7 +28,6 @@
// Tests the Object.freeze and Object.isFrozen methods - ES 15.2.3.9 and
// ES 15.2.3.12
-// Flags: --allow-natives-syntax
// Test that we throw an error if an object is not passed as argument.
var non_objects = new Array(undefined, null, 1, -1, 0, 42.43);
@@ -192,70 +191,3 @@ assertFalse(Object.isFrozen(obj5));
// Make sure that Object.freeze returns the frozen object.
var obj6 = {}
assertTrue(obj6 === Object.freeze(obj6))
-
-// Test that the enumerable attribute is unperturbed by freezing.
-obj = { x: 42, y: 'foo' };
-Object.defineProperty(obj, 'y', {enumerable: false});
-Object.freeze(obj);
-desc = Object.getOwnPropertyDescriptor(obj, 'x');
-assertTrue(desc.enumerable);
-desc = Object.getOwnPropertyDescriptor(obj, 'y');
-assertFalse(desc.enumerable);
-
-// Fast properties should remain fast
-obj = { x: 42, y: 'foo' };
-assertTrue(%HasFastProperties(obj));
-Object.freeze(obj);
-assertTrue(%HasFastProperties(obj));
-
-// Frozen objects should share maps where possible
-obj = { prop1: 1, prop2: 2 };
-obj2 = { prop1: 3, prop2: 4 };
-assertTrue(%HaveSameMap(obj, obj2));
-Object.freeze(obj);
-Object.freeze(obj2);
-assertTrue(%HaveSameMap(obj, obj2));
-
-// Frozen objects should share maps even when they have elements
-obj = { prop1: 1, prop2: 2, 75: 'foo' };
-obj2 = { prop1: 3, prop2: 4, 150: 'bar' };
-assertTrue(%HaveSameMap(obj, obj2));
-Object.freeze(obj);
-Object.freeze(obj2);
-assertTrue(%HaveSameMap(obj, obj2));
-
-// Setting elements after freezing should not be allowed
-obj = { prop: 'thing' };
-Object.freeze(obj);
-obj[0] = 'hello';
-assertFalse(obj.hasOwnProperty(0));
-
-// Freezing an object in dictionary mode should work
-obj = { };
-for (var i = 0; i < 100; ++i) {
- obj['x' + i] = i;
-}
-assertFalse(%HasFastProperties(obj));
-Object.freeze(obj);
-assertFalse(%HasFastProperties(obj));
-assertTrue(Object.isFrozen(obj));
-assertFalse(Object.isExtensible(obj));
-for (var i = 0; i < 100; ++i) {
- desc = Object.getOwnPropertyDescriptor(obj, 'x' + i);
- assertFalse(desc.writable);
- assertFalse(desc.configurable);
-}
-
-// Freezing arguments should work
-var func = function(arg) {
- Object.freeze(arguments);
- assertTrue(Object.isFrozen(arguments));
-};
-func('hello', 'world');
-func('goodbye', 'world');
-
-// Freezing sparse arrays
-var sparseArr = [0, 1];
-sparseArr[10000] = 10000;
-Object.freeze(sparseArr);
-assertTrue(Object.isFrozen(sparseArr));
« no previous file with comments | « src/v8natives.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698