summaryrefslogtreecommitdiffstats
path: root/js/src/tests/ecma_6/RegExp/replace-global-unicode.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/ecma_6/RegExp/replace-global-unicode.js')
-rw-r--r--js/src/tests/ecma_6/RegExp/replace-global-unicode.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/js/src/tests/ecma_6/RegExp/replace-global-unicode.js b/js/src/tests/ecma_6/RegExp/replace-global-unicode.js
new file mode 100644
index 000000000..80b3ea199
--- /dev/null
+++ b/js/src/tests/ecma_6/RegExp/replace-global-unicode.js
@@ -0,0 +1,18 @@
+var BUGNUMBER = 1287524;
+var summary = 'RegExp.prototype[@@replace] should not use optimized path if RegExp.prototype.unicode is modified.';
+
+print(BUGNUMBER + ": " + summary);
+
+Object.defineProperty(RegExp.prototype, "unicode", {
+ get() {
+ RegExp.prototype.exec = () => null;
+ }
+});
+
+var rx = RegExp("a", "g");
+var s = "abba";
+var r = rx[Symbol.replace](s, "c");
+assertEq(r, "abba");
+
+if (typeof reportCompare === "function")
+ reportCompare(true, true);