js/src/tests/ecma_5/Object/extensibility-02.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /*
     2  * Any copyright is dedicated to the Public Domain.
     3  * http://creativecommons.org/licenses/publicdomain/
     4  * Contributor:
     5  *   Jeff Walden <jwalden+code@mit.edu>
     6  */
     8 var gTestfile = '15.2.3.4-01.js';
     9 //-----------------------------------------------------------------------------
    10 var BUGNUMBER = 492849;
    11 var summary = 'ES5: Implement Object.preventExtensions, Object.isExtensible';
    13 print(BUGNUMBER + ": " + summary);
    15 /**************
    16  * BEGIN TEST *
    17  **************/
    19 assertEq(typeof Object.isExtensible, "function");
    20 assertEq(Object.isExtensible.length, 1);
    22 var slowArray = [1, 2, 3];
    23 slowArray.slow = 5;
    24 var objs =
    25   [{}, { 1: 2 }, { a: 3 }, [], [1], [, 1], slowArray, function a(){}, /a/];
    27 for (var i = 0, sz = objs.length; i < sz; i++)
    28 {
    29   var o = objs[i];
    30   assertEq(Object.isExtensible(o), true, "object " + i + " not extensible?");
    32   var o2 = Object.preventExtensions(o);
    33   assertEq(o, o2);
    35   assertEq(Object.isExtensible(o), false, "object " + i + " is extensible?");
    36 }
    38 /******************************************************************************/
    40 reportCompare(true, true);
    42 print("All tests passed!");

mercurial