// Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- info: | ToObject conversion from Object: The result is the input argument (no conversion) es5id: 9.9_A6 description: Converting from Objects to Object ---*/ function MyObject(val) { this.value = val; this.valueOf = function() { return this.value; } } var x = new MyObject(1); var y = Object(x); assert.sameValue(y.valueOf(), x.valueOf(), 'y.valueOf() must return the same value returned by x.valueOf()'); assert.sameValue(typeof y, typeof x, 'The value of `typeof y` is expected to be typeof x'); assert.sameValue( y.constructor.prototype, x.constructor.prototype, 'The value of y.constructor.prototype is expected to equal the value of x.constructor.prototype' ); assert.sameValue(y, x, 'The value of y is expected to equal the value of x');