diff options
Diffstat (limited to 'js/src/tests/test262/built-ins/Object/S9.9_A6.js')
-rw-r--r-- | js/src/tests/test262/built-ins/Object/S9.9_A6.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/Object/S9.9_A6.js b/js/src/tests/test262/built-ins/Object/S9.9_A6.js new file mode 100644 index 0000000000..ab0d260228 --- /dev/null +++ b/js/src/tests/test262/built-ins/Object/S9.9_A6.js @@ -0,0 +1,33 @@ +// 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'); + +reportCompare(0, 0); |