// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.

js> load('testsrc/doctests/util.js');

js> Object.isSealed
function isSealed() { [native code for Object.isSealed, arity=1] }

js> expectTypeError(function() { Object.isSealed() });
js> [undefined, null, true, 1, 'hello'].forEach(function(value) { 
  >   expectTypeError(function() { Object.isSealed(value) }) 
  > })

js> Object.isSealed({})
false

js> var obj = Object.preventExtensions({});
js> Object.isSealed(obj);
true

js> var obj = Object.defineProperty({}, 'a', {configurable:false});
js> var _ = Object.preventExtensions(obj);
js> Object.isSealed(obj);
true

js> var obj = Object.defineProperty({}, 'a', {configurable:true});
js> var _ = Object.preventExtensions(obj);
js> Object.isSealed(obj);
false
