6
6
// Test case generated by GenerateFlowTestCase.ql
7
7
public class Test {
8
8
9
+ private final String str_pattern = "\\ $\\ {(.*)\\ }" ;
10
+ private final Pattern pattern = Pattern .compile (str_pattern );
11
+
9
12
Object source () { return null ; }
10
13
void sink (Object o ) { }
11
14
@@ -14,60 +17,64 @@ public void test() throws Exception {
14
17
{
15
18
// "java.util.regex;Matcher;false;group;;;Argument[-1];ReturnValue;taint"
16
19
String out = null ;
17
- Matcher in = (Matcher )source ();
18
- out = in .group ((String )null );
20
+ String in = (String ) source ();
21
+ Matcher m = pattern .matcher (in );
22
+ out = m .group ("foo" );
19
23
sink (out ); // $ hasTaintFlow
20
24
}
21
25
{
22
26
// "java.util.regex;Matcher;false;group;;;Argument[-1];ReturnValue;taint"
23
27
String out = null ;
24
- Matcher in = (Matcher )source ();
25
- out = in .group ();
28
+ String in = (String ) source ();
29
+ Matcher m = pattern .matcher (in );
30
+ out = m .group ();
26
31
sink (out ); // $ hasTaintFlow
27
32
}
28
33
{
29
34
// "java.util.regex;Matcher;false;group;;;Argument[-1];ReturnValue;taint"
30
35
String out = null ;
31
- Matcher in = (Matcher )source ();
32
- out = in .group (0 );
36
+ String in = (String ) source ();
37
+ Matcher m = pattern .matcher (in );
38
+ out = m .group (0 );
33
39
sink (out ); // $ hasTaintFlow
34
40
}
35
41
{
36
42
// "java.util.regex;Matcher;false;replaceAll;;;Argument[-1];ReturnValue;taint"
37
43
String out = null ;
38
- Matcher in = (Matcher )source ();
39
- out = in .replaceAll (null );
44
+ String in = (String ) source ();
45
+ Matcher m = pattern .matcher (in );
46
+ out = m .replaceAll ("foo" );
40
47
sink (out ); // $ hasTaintFlow
41
48
}
42
49
{
43
50
// "java.util.regex;Matcher;false;replaceAll;;;Argument[0];ReturnValue;taint"
44
51
String out = null ;
45
- String in = (String )source ();
46
- Matcher instance = null ;
47
- out = instance .replaceAll (in );
52
+ String in = (String ) source ();
53
+ Matcher m = pattern . matcher ( "foo" ) ;
54
+ out = m .replaceAll (in );
48
55
sink (out ); // $ hasTaintFlow
49
56
}
50
57
{
51
58
// "java.util.regex;Matcher;false;replaceFirst;;;Argument[-1];ReturnValue;taint"
52
59
String out = null ;
53
- Matcher in = (Matcher )source ();
54
- out = in .replaceFirst (null );
60
+ String in = (String ) source ();
61
+ Matcher m = pattern .matcher (in );
62
+ out = m .replaceFirst ("foo" );
55
63
sink (out ); // $ hasTaintFlow
56
64
}
57
65
{
58
66
// "java.util.regex;Matcher;false;replaceFirst;;;Argument[0];ReturnValue;taint"
59
67
String out = null ;
60
- String in = (String )source ();
61
- Matcher instance = null ;
62
- out = instance .replaceFirst (in );
68
+ String in = (String ) source ();
69
+ Matcher m = pattern . matcher ( "foo" ) ;
70
+ out = m .replaceFirst (in );
63
71
sink (out ); // $ hasTaintFlow
64
72
}
65
73
{
66
74
// "java.util.regex;Pattern;false;matcher;;;Argument[0];ReturnValue;taint"
67
75
Matcher out = null ;
68
76
CharSequence in = (CharSequence )source ();
69
- Pattern instance = null ;
70
- out = instance .matcher (in );
77
+ out = pattern .matcher (in );
71
78
sink (out ); // $ hasTaintFlow
72
79
}
73
80
{
@@ -81,19 +88,17 @@ public void test() throws Exception {
81
88
// "java.util.regex;Pattern;false;split;;;Argument[0];ReturnValue;taint"
82
89
String [] out = null ;
83
90
CharSequence in = (CharSequence )source ();
84
- Pattern instance = null ;
85
- out = instance .split (in );
91
+ out = pattern .split (in );
86
92
sink (out ); // $ hasTaintFlow
87
93
}
88
94
{
89
95
// "java.util.regex;Pattern;false;split;;;Argument[0];ReturnValue;taint"
90
96
String [] out = null ;
91
97
CharSequence in = (CharSequence )source ();
92
- Pattern instance = null ;
93
- out = instance .split (in , 0 );
98
+ out = pattern .split (in , 0 );
94
99
sink (out ); // $ hasTaintFlow
95
100
}
96
101
97
102
}
98
103
99
- }
104
+ }
0 commit comments