Skip to content

Commit 898207f

Browse files
committed
Add tests for RegExp intersection functionality in ql.
1 parent c381d3c commit 898207f

File tree

3 files changed

+47
-0
lines changed

3 files changed

+47
-0
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/[[abc]&&[bcd]]/v
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
nodes
2+
| intersection.js:1:1:1:17 | [ExprStmt] /[[abc]&&[bcd]]/v | semmle.label | [ExprStmt] /[[abc]&&[bcd]]/v |
3+
| intersection.js:1:1:1:17 | [ExprStmt] /[[abc]&&[bcd]]/v | semmle.order | 1 |
4+
| intersection.js:1:1:1:17 | [RegExpLiteral] /[[abc]&&[bcd]]/v | semmle.label | [RegExpLiteral] /[[abc]&&[bcd]]/v |
5+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | semmle.label | [RegExpCharacterClass] [[abc] |
6+
| intersection.js:1:2:1:15 | [???] [[abc]&&[bcd]] | semmle.label | [???] [[abc]&&[bcd]] |
7+
| intersection.js:1:3:1:3 | [RegExpNormalConstant] [ | semmle.label | [RegExpNormalConstant] [ |
8+
| intersection.js:1:4:1:4 | [RegExpNormalConstant] a | semmle.label | [RegExpNormalConstant] a |
9+
| intersection.js:1:5:1:5 | [RegExpNormalConstant] b | semmle.label | [RegExpNormalConstant] b |
10+
| intersection.js:1:6:1:6 | [RegExpNormalConstant] c | semmle.label | [RegExpNormalConstant] c |
11+
| intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | semmle.label | [RegExpCharacterClass] [bcd] |
12+
| intersection.js:1:10:1:15 | [RegExpSequence] [bcd]] | semmle.label | [RegExpSequence] [bcd]] |
13+
| intersection.js:1:11:1:11 | [RegExpNormalConstant] b | semmle.label | [RegExpNormalConstant] b |
14+
| intersection.js:1:12:1:12 | [RegExpNormalConstant] c | semmle.label | [RegExpNormalConstant] c |
15+
| intersection.js:1:13:1:13 | [RegExpNormalConstant] d | semmle.label | [RegExpNormalConstant] d |
16+
| intersection.js:1:15:1:15 | [RegExpNormalConstant] ] | semmle.label | [RegExpNormalConstant] ] |
17+
edges
18+
| intersection.js:1:1:1:17 | [ExprStmt] /[[abc]&&[bcd]]/v | intersection.js:1:1:1:17 | [RegExpLiteral] /[[abc]&&[bcd]]/v | semmle.label | 1 |
19+
| intersection.js:1:1:1:17 | [ExprStmt] /[[abc]&&[bcd]]/v | intersection.js:1:1:1:17 | [RegExpLiteral] /[[abc]&&[bcd]]/v | semmle.order | 1 |
20+
| intersection.js:1:1:1:17 | [RegExpLiteral] /[[abc]&&[bcd]]/v | intersection.js:1:2:1:15 | [???] [[abc]&&[bcd]] | semmle.label | 0 |
21+
| intersection.js:1:1:1:17 | [RegExpLiteral] /[[abc]&&[bcd]]/v | intersection.js:1:2:1:15 | [???] [[abc]&&[bcd]] | semmle.order | 0 |
22+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:3:1:3 | [RegExpNormalConstant] [ | semmle.label | 0 |
23+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:3:1:3 | [RegExpNormalConstant] [ | semmle.order | 0 |
24+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:4:1:4 | [RegExpNormalConstant] a | semmle.label | 1 |
25+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:4:1:4 | [RegExpNormalConstant] a | semmle.order | 1 |
26+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:5:1:5 | [RegExpNormalConstant] b | semmle.label | 2 |
27+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:5:1:5 | [RegExpNormalConstant] b | semmle.order | 2 |
28+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:6:1:6 | [RegExpNormalConstant] c | semmle.label | 3 |
29+
| intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | intersection.js:1:6:1:6 | [RegExpNormalConstant] c | semmle.order | 3 |
30+
| intersection.js:1:2:1:15 | [???] [[abc]&&[bcd]] | intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | semmle.label | 0 |
31+
| intersection.js:1:2:1:15 | [???] [[abc]&&[bcd]] | intersection.js:1:2:1:7 | [RegExpCharacterClass] [[abc] | semmle.order | 0 |
32+
| intersection.js:1:2:1:15 | [???] [[abc]&&[bcd]] | intersection.js:1:10:1:15 | [RegExpSequence] [bcd]] | semmle.label | 1 |
33+
| intersection.js:1:2:1:15 | [???] [[abc]&&[bcd]] | intersection.js:1:10:1:15 | [RegExpSequence] [bcd]] | semmle.order | 1 |
34+
| intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | intersection.js:1:11:1:11 | [RegExpNormalConstant] b | semmle.label | 0 |
35+
| intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | intersection.js:1:11:1:11 | [RegExpNormalConstant] b | semmle.order | 0 |
36+
| intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | intersection.js:1:12:1:12 | [RegExpNormalConstant] c | semmle.label | 1 |
37+
| intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | intersection.js:1:12:1:12 | [RegExpNormalConstant] c | semmle.order | 1 |
38+
| intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | intersection.js:1:13:1:13 | [RegExpNormalConstant] d | semmle.label | 2 |
39+
| intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | intersection.js:1:13:1:13 | [RegExpNormalConstant] d | semmle.order | 2 |
40+
| intersection.js:1:10:1:15 | [RegExpSequence] [bcd]] | intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | semmle.label | 0 |
41+
| intersection.js:1:10:1:15 | [RegExpSequence] [bcd]] | intersection.js:1:10:1:14 | [RegExpCharacterClass] [bcd] | semmle.order | 0 |
42+
| intersection.js:1:10:1:15 | [RegExpSequence] [bcd]] | intersection.js:1:15:1:15 | [RegExpNormalConstant] ] | semmle.label | 1 |
43+
| intersection.js:1:10:1:15 | [RegExpSequence] [bcd]] | intersection.js:1:15:1:15 | [RegExpNormalConstant] ] | semmle.order | 1 |
44+
graphProperties
45+
| semmle.graphKind | tree |
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
import semmle.javascript.PrintAst

0 commit comments

Comments
 (0)