diff options
Diffstat (limited to 'js/src/tests/ecma_6/RegExp/split-invalid-lastIndex.js')
-rw-r--r-- | js/src/tests/ecma_6/RegExp/split-invalid-lastIndex.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/js/src/tests/ecma_6/RegExp/split-invalid-lastIndex.js b/js/src/tests/ecma_6/RegExp/split-invalid-lastIndex.js new file mode 100644 index 000000000..3def559ad --- /dev/null +++ b/js/src/tests/ecma_6/RegExp/split-invalid-lastIndex.js @@ -0,0 +1,31 @@ +var BUGNUMBER = 1263851; +var summary = "RegExp.prototype[@@split] should handle if lastIndex is out of bound."; + +print(BUGNUMBER + ": " + summary); + +var myRegExp = { + get constructor() { + return { + get [Symbol.species]() { + return function() { + return { + get lastIndex() { + return 9; + }, + set lastIndex(v) {}, + exec() { + return []; + } + }; + }; + } + }; + } +}; +var result = RegExp.prototype[Symbol.split].call(myRegExp, "abcde");; +assertEq(result.length, 2); +assertEq(result[0], ""); +assertEq(result[1], ""); + +if (typeof reportCompare === "function") + reportCompare(true, true); |