Skip to content

Commit 4ed2e8d

Browse files
Update tests to account for only regexes with quantifiers being considered
1 parent e5ca924 commit 4ed2e8d

File tree

2 files changed

+32
-19
lines changed

2 files changed

+32
-19
lines changed

java/ql/test/library-tests/regex/parser/RegexParseTests.expected

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,18 @@ parseFailures
77
| Test.java:5:13:5:13 | Z | [RegExpConstant,RegExpNormalChar] |
88
| Test.java:5:14:5:16 | \\d | [RegExpCharacterClassEscape] |
99
| Test.java:6:10:6:42 | \\Q hello world [ *** \\Q ) ( \\E | [RegExpConstant,RegExpQuote] |
10+
| Test.java:6:10:6:43 | \\Q hello world [ *** \\Q ) ( \\E+ | [RegExpPlus] |
1011
| Test.java:7:10:7:23 | [\\Q hi ] \\E] | [RegExpCharacterClass] |
12+
| Test.java:7:10:7:24 | [\\Q hi ] \\E]+ | [RegExpPlus] |
1113
| Test.java:7:11:7:22 | \\Q hi ] \\E | [RegExpConstant,RegExpQuote] |
1214
| Test.java:8:10:8:12 | []] | [RegExpCharacterClass] |
15+
| Test.java:8:10:8:13 | []]+ | [RegExpPlus] |
1316
| Test.java:8:11:8:11 | ] | [RegExpConstant,RegExpNormalChar] |
1417
| Test.java:9:10:9:13 | [^]] | [RegExpCharacterClass] |
18+
| Test.java:9:10:9:14 | [^]]+ | [RegExpPlus] |
1519
| Test.java:9:12:9:12 | ] | [RegExpConstant,RegExpNormalChar] |
1620
| Test.java:10:10:10:20 | [abc[defg]] | [RegExpCharacterClass] |
21+
| Test.java:10:10:10:21 | [abc[defg]]+ | [RegExpPlus] |
1722
| Test.java:10:11:10:11 | a | [RegExpConstant,RegExpNormalChar] |
1823
| Test.java:10:12:10:12 | b | [RegExpConstant,RegExpNormalChar] |
1924
| Test.java:10:13:10:13 | c | [RegExpConstant,RegExpNormalChar] |
@@ -24,7 +29,7 @@ parseFailures
2429
| Test.java:10:18:10:18 | g | [RegExpConstant,RegExpNormalChar] |
2530
| Test.java:10:19:10:19 | ] | [RegExpConstant,RegExpNormalChar] |
2631
| Test.java:11:10:11:57 | [abc&&[\\W\\p{Lower}\\P{Space}\\N{degree sign}]] | [RegExpCharacterClass] |
27-
| Test.java:11:10:11:68 | [abc&&[\\W\\p{Lower}\\P{Space}\\N{degree sign}]]\\b7\\b{g}8 | [RegExpSequence] |
32+
| Test.java:11:10:11:69 | [abc&&[\\W\\p{Lower}\\P{Space}\\N{degree sign}]]\\b7\\b{g}8+ | [RegExpSequence] |
2833
| Test.java:11:11:11:11 | a | [RegExpConstant,RegExpNormalChar] |
2934
| Test.java:11:12:11:12 | b | [RegExpConstant,RegExpNormalChar] |
3035
| Test.java:11:13:11:13 | c | [RegExpConstant,RegExpNormalChar] |
@@ -40,11 +45,15 @@ parseFailures
4045
| Test.java:11:61:11:61 | 7 | [RegExpConstant,RegExpNormalChar] |
4146
| Test.java:11:62:11:67 | \\b{g} | [RegExpConstant,RegExpEscape] |
4247
| Test.java:11:68:11:68 | 8 | [RegExpConstant,RegExpNormalChar] |
48+
| Test.java:11:68:11:69 | 8+ | [RegExpPlus] |
4349
| Test.java:12:10:12:13 | \\cA | [RegExpConstant,RegExpEscape] |
50+
| Test.java:12:10:12:14 | \\cA+ | [RegExpPlus] |
4451
| Test.java:13:10:13:13 | \\c( | [RegExpConstant,RegExpEscape] |
52+
| Test.java:13:10:13:14 | \\c(+ | [RegExpPlus] |
4553
| Test.java:14:10:14:14 | \\c\\ | [RegExpConstant,RegExpEscape] |
46-
| Test.java:14:10:14:18 | \\c\\(ab) | [RegExpSequence] |
54+
| Test.java:14:10:14:19 | \\c\\(ab)+ | [RegExpSequence] |
4755
| Test.java:14:15:14:18 | (ab) | [RegExpGroup] |
56+
| Test.java:14:15:14:19 | (ab)+ | [RegExpPlus] |
4857
| Test.java:14:16:14:16 | a | [RegExpConstant,RegExpNormalChar] |
4958
| Test.java:14:16:14:17 | ab | [RegExpSequence] |
5059
| Test.java:14:17:14:17 | b | [RegExpConstant,RegExpNormalChar] |
@@ -110,18 +119,19 @@ parseFailures
110119
| Test.java:16:102:16:102 | u | [RegExpConstant,RegExpNormalChar] |
111120
| Test.java:16:102:16:108 | u{16,}+ | [RegExpQuantifier] |
112121
| Test.java:17:10:17:13 | (?i) | [RegExpZeroWidthMatch] |
113-
| Test.java:17:10:17:35 | (?i)(?=a)(?!b)(?<=c)(?<!d) | [RegExpSequence] |
122+
| Test.java:17:10:17:36 | (?i)(?=a)(?!b)(?<=c)(?<!d)+ | [RegExpSequence] |
114123
| Test.java:17:14:17:18 | (?=a) | [RegExpPositiveLookahead] |
115124
| Test.java:17:17:17:17 | a | [RegExpConstant,RegExpNormalChar] |
116125
| Test.java:17:19:17:23 | (?!b) | [RegExpNegativeLookahead] |
117126
| Test.java:17:22:17:22 | b | [RegExpConstant,RegExpNormalChar] |
118127
| Test.java:17:24:17:29 | (?<=c) | [RegExpPositiveLookbehind] |
119128
| Test.java:17:28:17:28 | c | [RegExpConstant,RegExpNormalChar] |
120129
| Test.java:17:30:17:35 | (?<!d) | [RegExpNegativeLookbehind] |
130+
| Test.java:17:30:17:36 | (?<!d)+ | [RegExpPlus] |
121131
| Test.java:17:34:17:34 | d | [RegExpConstant,RegExpNormalChar] |
122132
| Test.java:18:10:18:10 | a | [RegExpConstant,RegExpNormalChar] |
123-
| Test.java:18:10:18:24 | a\|\|b\|c(d\|e\|)f\|g | [RegExpAlt] |
124-
| Test.java:18:12:18:24 | \|b\|c(d\|e\|)f\|g | [RegExpAlt] |
133+
| Test.java:18:10:18:25 | a\|\|b\|c(d\|e\|)f\|g+ | [RegExpAlt] |
134+
| Test.java:18:12:18:25 | \|b\|c(d\|e\|)f\|g+ | [RegExpAlt] |
125135
| Test.java:18:13:18:13 | b | [RegExpConstant,RegExpNormalChar] |
126136
| Test.java:18:15:18:15 | c | [RegExpConstant,RegExpNormalChar] |
127137
| Test.java:18:15:18:22 | c(d\|e\|)f | [RegExpSequence] |
@@ -131,13 +141,16 @@ parseFailures
131141
| Test.java:18:19:18:19 | e | [RegExpConstant,RegExpNormalChar] |
132142
| Test.java:18:22:18:22 | f | [RegExpConstant,RegExpNormalChar] |
133143
| Test.java:18:24:18:24 | g | [RegExpConstant,RegExpNormalChar] |
144+
| Test.java:18:24:18:25 | g+ | [RegExpPlus] |
134145
| Test.java:19:10:19:13 | \\01 | [RegExpConstant,RegExpEscape] |
135-
| Test.java:19:10:19:37 | \\018\\033\\0377\\0777\u1337 | [RegExpSequence] |
146+
| Test.java:19:10:19:38 | \\018\\033\\0377\\0777\u1337+ | [RegExpSequence] |
136147
| Test.java:19:14:19:14 | 8 | [RegExpConstant,RegExpNormalChar] |
137148
| Test.java:19:15:19:19 | \\033 | [RegExpConstant,RegExpEscape] |
138149
| Test.java:19:20:19:25 | \\0377 | [RegExpConstant,RegExpEscape] |
139150
| Test.java:19:26:19:30 | \\077 | [RegExpConstant,RegExpEscape] |
140151
| Test.java:19:31:19:31 | 7 | [RegExpConstant,RegExpNormalChar] |
141152
| Test.java:19:32:19:37 | \u1337 | [RegExpConstant,RegExpNormalChar] |
153+
| Test.java:19:32:19:38 | \u1337+ | [RegExpPlus] |
142154
| Test.java:20:10:20:12 | [\|] | [RegExpCharacterClass] |
155+
| Test.java:20:10:20:13 | [\|]+ | [RegExpPlus] |
143156
| Test.java:20:11:20:11 | \| | [RegExpConstant,RegExpNormalChar] |

java/ql/test/library-tests/regex/parser/Test.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,21 @@
33
class Test {
44
static String[] regs = {
55
"[A-Z\\d]++",
6-
"\\Q hello world [ *** \\Q ) ( \\E",
7-
"[\\Q hi ] \\E]",
8-
"[]]",
9-
"[^]]",
10-
"[abc[defg]]",
11-
"[abc&&[\\W\\p{Lower}\\P{Space}\\N{degree sign}]]\\b7\\b{g}8",
12-
"\\cA",
13-
"\\c(",
14-
"\\c\\(ab)",
6+
"\\Q hello world [ *** \\Q ) ( \\E+",
7+
"[\\Q hi ] \\E]+",
8+
"[]]+",
9+
"[^]]+",
10+
"[abc[defg]]+",
11+
"[abc&&[\\W\\p{Lower}\\P{Space}\\N{degree sign}]]\\b7\\b{g}8+",
12+
"\\cA+",
13+
"\\c(+",
14+
"\\c\\(ab)+",
1515
"(?>hi)(?<name>hell*?o*+)123\\k<name>",
1616
"a+b*c?d{2}e{3,4}f{,5}g{6,}h+?i*?j??k{7}?l{8,9}?m{,10}?n{11,}?o++p*+q?+r{12}+s{13,14}+t{,15}+u{16,}+",
17-
"(?i)(?=a)(?!b)(?<=c)(?<!d)",
18-
"a||b|c(d|e|)f|g",
19-
"\\018\\033\\0377\\0777\u1337",
20-
"[|]"
17+
"(?i)(?=a)(?!b)(?<=c)(?<!d)+",
18+
"a||b|c(d|e|)f|g+",
19+
"\\018\\033\\0377\\0777\u1337+",
20+
"[|]+"
2121
};
2222

2323
void test() {

0 commit comments

Comments
 (0)