js/src/tests/test262/ch09/9.9/S9.9_A6.js

Wed, 31 Dec 2014 13:27:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 13:27:57 +0100
branch
TOR_BUG_3246
changeset 6
8bccb770b82d
permissions
-rw-r--r--

Ignore runtime configuration files generated during quality assurance.

michael@0 1 // Copyright 2009 the Sputnik authors. All rights reserved.
michael@0 2 // This code is governed by the BSD license found in the LICENSE file.
michael@0 3
michael@0 4 /**
michael@0 5 * ToObject conversion from Object: The result is the input
michael@0 6 * argument (no conversion)
michael@0 7 *
michael@0 8 * @path ch09/9.9/S9.9_A6.js
michael@0 9 * @description Converting from Objects to Object
michael@0 10 */
michael@0 11
michael@0 12 function MyObject( val ) {
michael@0 13 this.value = val;
michael@0 14 this.valueOf = function (){ return this.value; }
michael@0 15 }
michael@0 16
michael@0 17 var x = new MyObject(1);
michael@0 18 var y = Object(x);
michael@0 19
michael@0 20 // CHECK#1
michael@0 21 if (y.valueOf() !== x.valueOf()){
michael@0 22 $ERROR('#1: Object(obj).valueOf() === obj.valueOf(). Actual: ' + (Object(obj).valueOf()));
michael@0 23 }
michael@0 24
michael@0 25 // CHECK#2
michael@0 26 if (typeof y !== typeof x){
michael@0 27 $ERROR('#2: typeof Object(obj) === typeof obj. Actual: ' + (typeof Object(obj)));
michael@0 28 }
michael@0 29
michael@0 30 // CHECK#3
michael@0 31 if (y.constructor.prototype !== x.constructor.prototype){
michael@0 32 $ERROR('#3: Object(obj).constructor.prototype === obj.constructor.prototype. Actual: ' + (Object(obj).constructor.prototype));
michael@0 33 }
michael@0 34
michael@0 35
michael@0 36 // CHECK#4
michael@0 37 if (y !== x){
michael@0 38 $ERROR('#4: Object(obj) === obj');
michael@0 39 }
michael@0 40

mercurial