diff options
Diffstat (limited to 'test/built-ins/String/prototype/split/S15.5.4.14_A1_T11.js')
-rw-r--r-- | test/built-ins/String/prototype/split/S15.5.4.14_A1_T11.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/built-ins/String/prototype/split/S15.5.4.14_A1_T11.js b/test/built-ins/String/prototype/split/S15.5.4.14_A1_T11.js new file mode 100644 index 000000000..c1d8648e0 --- /dev/null +++ b/test/built-ins/String/prototype/split/S15.5.4.14_A1_T11.js @@ -0,0 +1,38 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: > + String.prototype.split(separator, limit): + i) can be transferred to other kinds of objects for use as a method. + separator and limit can be any kinds of object since: + ii) if separator is not RegExp ToString(separator) performs and + iii) ToInteger(limit) performs +es5id: 15.5.4.14_A1_T11 +description: > + Arguments are objects, and instance is string. First object have + overrided toString function. Second object have overrided valueOf + function, that throw exception +includes: [$FAIL.js] +---*/ + +var __obj = {toString:function(){return "\u0041B";}} +var __obj2 = {valueOf:function(){throw "intointeger";}} +var __str = {str__:"ABB\u0041BABAB"}; + +////////////////////////////////////////////////////////////////////////////// +//CHECK#1 +with(__str){ + with(str__){ + try { + var x = split(__obj, __obj2); + $FAIL('#1: "var x = split(__obj, __obj2)" lead to throwing exception'); + } catch (e) { + if (e!=="intointeger") { + $ERROR('#1.1: Exception === "intointeger". Actual: '+e); + } + } + } +} +// +////////////////////////////////////////////////////////////////////////////// |