summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js')
-rw-r--r--js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js35
1 files changed, 35 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js
new file mode 100644
index 000000000..d9109e911
--- /dev/null
+++ b/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js
@@ -0,0 +1,35 @@
+if (typeof parseRegExp === 'undefined')
+ quit();
+
+load(libdir + "regexp_parse.js");
+
+test("[\\ca]", all_flags,
+ CharacterClass([
+ ["\u0001", "\u0001"]
+ ]));
+test("[\\cz]", all_flags,
+ CharacterClass([
+ ["\u001a", "\u001a"]
+ ]));
+test("[\\cA]", all_flags,
+ CharacterClass([
+ ["\u0001", "\u0001"]
+ ]));
+test("[\\cZ]", all_flags,
+ CharacterClass([
+ ["\u001a", "\u001a"]
+ ]));
+
+// Invalid
+
+test("[\\c]", no_unicode_flags,
+ CharacterClass([
+ ["\\", "\\"],
+ ["c", "c"]
+ ]));
+test("[\\c=]", no_unicode_flags,
+ CharacterClass([
+ ["\\", "\\"],
+ ["c", "c"],
+ ["=", "="]
+ ]));