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);
|