summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/RegExp/split.js
blob: d7e28d7919d862072aa5e45c18dd09a9cd767885 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
var BUGNUMBER = 887016;
var summary = "Implement RegExp.prototype[@@split].";

print(BUGNUMBER + ": " + summary);

assertEq(RegExp.prototype[Symbol.split].name, "[Symbol.split]");
assertEq(RegExp.prototype[Symbol.split].length, 2);
var desc = Object.getOwnPropertyDescriptor(RegExp.prototype, Symbol.split);
assertEq(desc.configurable, true);
assertEq(desc.enumerable, false);
assertEq(desc.writable, true);

var re = /b/;
var v = re[Symbol.split]("abcAbcABC");
assertEq(JSON.stringify(v), `["a","cA","cABC"]`);

re = /d/;
v = re[Symbol.split]("abcAbcABC");
assertEq(JSON.stringify(v), `["abcAbcABC"]`);

re = /b/ig;
v = re[Symbol.split]("abcAbcABC");
assertEq(JSON.stringify(v), `["a","cA","cA","C"]`);

re = /b/ig;
v = re[Symbol.split]("abcAbcABC", 2);
assertEq(JSON.stringify(v), `["a","cA"]`);

if (typeof reportCompare === "function")
    reportCompare(true, true);