| Index: test/mjsunit/harmony/unicode-escapes-in-regexps.js
|
| diff --git a/test/mjsunit/harmony/unicode-escapes-in-regexps.js b/test/mjsunit/harmony/unicode-escapes-in-regexps.js
|
| index f591dac930194037ac2f498bddc33c4f2a5ca92c..10187412aa9ca2a3c8e2ae26a2a1b20ab29e10c8 100644
|
| --- a/test/mjsunit/harmony/unicode-escapes-in-regexps.js
|
| +++ b/test/mjsunit/harmony/unicode-escapes-in-regexps.js
|
| @@ -252,6 +252,30 @@ assertFalse(/(\u{12345}|\u{23456}).\1/u.test("\u{12345}b\u{23456}"));
|
| assertTrue(new RegExp("\u{12345}{3}", "u").test("\u{12345}\u{12345}\u{12345}"));
|
| assertTrue(/\u{12345}{3}/u.test("\u{12345}\u{12345}\u{12345}"));
|
| assertTrue(new RegExp("\u{12345}{3}").test("\u{12345}\udf45\udf45"));
|
| -assertTrue(/\ud808\udf45{3}/u.test("\u{12345}\udf45\udf45"));
|
| +assertFalse(/\ud808\udf45{3}/u.test("\u{12345}\udf45\udf45"));
|
| +assertTrue(/\ud808\udf45{3}/u.test("\u{12345}\u{12345}\u{12345}"));
|
| assertFalse(new RegExp("\u{12345}{3}", "u").test("\u{12345}\udf45\udf45"));
|
| assertFalse(/\u{12345}{3}/u.test("\u{12345}\udf45\udf45"));
|
| +
|
| +// Mixed escapes and literal surrogates.
|
| +assertEquals(["\u{10000}\u{10000}"],
|
| + new RegExp("\ud800\udc00+", "u").exec("\u{10000}\u{10000}"));
|
| +assertEquals(["\u{10000}\u{10000}"],
|
| + new RegExp("\\ud800\\udc00+", "u").exec("\u{10000}\u{10000}"));
|
| +assertEquals(["\u{10000}\u{10000}"],
|
| + new RegExp("\\ud800\udc00+", "u").exec("\u{10000}\u{10000}"));
|
| +assertEquals(["\u{10000}\u{10000}"],
|
| + new RegExp("\ud800\\udc00+", "u").exec("\u{10000}\u{10000}"));
|
| +
|
| +assertEquals(["\u{10003}\u{50001}"],
|
| + new RegExp("[\\ud800\\udc03-\\ud900\\udc01\]+", "u").exec(
|
| + "\u{10003}\u{50001}"));
|
| +assertEquals(["\u{10003}\u{50001}"],
|
| + new RegExp("[\\ud800\udc03-\ud900\\udc01\]+", "u").exec(
|
| + "\u{10003}\u{50001}"));
|
| +assertEquals(["\u{50001}"],
|
| + new RegExp("[\\ud800\udc03-\ud900\\udc01\]+", "u").exec(
|
| + "\u{10002}\u{50001}"));
|
| +assertEquals(["\u{10003}\u{50001}"],
|
| + new RegExp("[\ud800\udc03-\u{50001}\]+", "u").exec(
|
| + "\u{10003}\u{50001}"));
|
|
|