summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff.email>2019-08-07 09:32:48 +0200
committerJörg Frings-Fürst <debian@jff.email>2019-08-07 09:32:48 +0200
commit40f3d0030e6e98bcb02d6523e5ee48497dec49a6 (patch)
treea992f9a6acd3edc2c7bb6b1aba2e52084918c9ab /test
parente25c754918ae26e8b9e68a47bc1af36248e91800 (diff)
New upstream version 6.9.3upstream/6.9.3
Diffstat (limited to 'test')
-rw-r--r--test/test_utf8.c13
-rw-r--r--test/testu.c15
2 files changed, 13 insertions, 15 deletions
diff --git a/test/test_utf8.c b/test/test_utf8.c
index bab6b0d..2338526 100644
--- a/test/test_utf8.c
+++ b/test/test_utf8.c
@@ -1202,10 +1202,23 @@ extern int main(int argc, char* argv[])
x2("a{3,2}b", "aab", 0, 3);
x2("a{3,2}?", "", 0, 0); /* == (?:a{3,2})?*/
x2("a{2,3}+a", "aaa", 0, 3); /* == (?:a{2,3})+*/
+ x2("[\\x{0}-\\x{7fffffff}]", "a", 0, 1);
+ x2("[\\x{7f}-\\x{7fffffff}]", "\xe5\xae\xb6", 0, 3);
+
+ n(" \xfd", ""); /* https://bugs.php.net/bug.php?id=77370 */
+ /* can't use \xfc00.. because compiler error: hex escape sequence out of range */
+ n("()0\\xfc00000\\xfc00000\\xfc00000\xfc", ""); /* https://bugs.php.net/bug.php?id=77371 */
+ x2("000||0\xfa", "0", 0, 0); /* https://bugs.php.net/bug.php?id=77381 */
+ e("(?i)000000000000000000000\xf0", "", ONIGERR_INVALID_CODE_POINT_VALUE); /* https://bugs.php.net/bug.php?id=77382 */
+ n("0000\\\xf5", "0"); /* https://bugs.php.net/bug.php?id=77385 */
+ n("(?i)FFF00000000000000000\xfd", ""); /* https://bugs.php.net/bug.php?id=77394 */
+
x2("\\p{Common}", "\xe3\x8b\xbf", 0, 3); /* U+32FF */
x2("\\p{In_Enclosed_CJK_Letters_and_Months}", "\xe3\x8b\xbf", 0, 3); /* U+32FF */
+ e("\\x{7fffffff}", "", ONIGERR_TOO_BIG_WIDE_CHAR_VALUE);
+ e("[\\x{7fffffff}]", "", ONIGERR_INVALID_CODE_POINT_VALUE);
e("\\u040", "@", ONIGERR_INVALID_CODE_POINT_VALUE);
e("(?<abc>\\g<abc>)", "zzzz", ONIGERR_NEVER_ENDING_RECURSION);
e("(?<=(?>abc))", "abc", ONIGERR_INVALID_LOOK_BEHIND_PATTERN);
diff --git a/test/testu.c b/test/testu.c
index 4b053e5..397da95 100644
--- a/test/testu.c
+++ b/test/testu.c
@@ -116,28 +116,13 @@ static void xx(char* pattern, char* str, int from, int to, int mem, int not)
#else
regex_t* reg;
- OnigCompileInfo ci;
OnigErrorInfo einfo;
uconv(pattern, cpat, ulen(pattern));
uconv(str, cstr, ulen(str));
-#if 0
r = onig_new(&reg, (UChar* )pattern, (UChar* )(pattern + ulen(pattern)),
ONIG_OPTION_DEFAULT, ENC, ONIG_SYNTAX_DEFAULT, &einfo);
-#else
- ci.num_of_elements = 5;
- ci.pattern_enc = ENC;
- ci.target_enc = ENC;
- ci.syntax = ONIG_SYNTAX_DEFAULT;
- ci.option = ONIG_OPTION_DEFAULT;
- ci.case_fold_flag = ONIGENC_CASE_FOLD_DEFAULT;
-
- r = onig_new_deluxe(&reg, (UChar* )pattern,
- (UChar* )(pattern + ulen(pattern)),
- &ci, &einfo);
-#endif
-
if (r) {
char s[ONIG_MAX_ERROR_MESSAGE_LEN];
onig_error_code_to_str((UChar* )s, r, &einfo);