diff options
Diffstat (limited to '')
-rw-r--r-- | js/src/tests/non262/Tuple/prototype/indexOf/fromIndex-object.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/js/src/tests/non262/Tuple/prototype/indexOf/fromIndex-object.js b/js/src/tests/non262/Tuple/prototype/indexOf/fromIndex-object.js new file mode 100644 index 0000000000..cb1d74ddf8 --- /dev/null +++ b/js/src/tests/non262/Tuple/prototype/indexOf/fromIndex-object.js @@ -0,0 +1,24 @@ +// |reftest| skip-if(!this.hasOwnProperty("Tuple")) +// Copyright (c) 2012 Ecma International. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: > + Tuple.prototype.indexOf - value of 'fromIndex' is an Object, which + has an own toString method +---*/ + +// objects inherit the default valueOf() method from Object +// that simply returns itself. Since the default valueOf() method +// does not return a primitive value, ES next tries to convert the object +// to a number by calling its toString() method and converting the +// resulting string to a number. +var fromIndex = { + toString: function() { + return '1'; + } +}; + +assertEq(#[0, true].indexOf(true, fromIndex), 1, '#[0, true].indexOf(true, fromIndex)'); + +reportCompare(0, 0); |