mirror of
https://github.com/github/codeql.git
synced 2025-12-17 17:23:36 +01:00
47 lines
2.5 KiB
Java
47 lines
2.5 KiB
Java
import org.apache.commons.text.StringTokenizer;
|
|
import org.apache.commons.text.matcher.StringMatcher;
|
|
|
|
public class StringTokenizerTest {
|
|
String taint() { return "tainted"; }
|
|
|
|
void sink(Object o) {}
|
|
|
|
void test() throws Exception {
|
|
|
|
// Test constructors:
|
|
sink((new StringTokenizer(taint().toCharArray())).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint().toCharArray(), ',')).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint().toCharArray(), ',', '"')).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint().toCharArray(), ",")).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint().toCharArray(), (StringMatcher)null)).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint().toCharArray(), (StringMatcher)null, (StringMatcher)null)).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint(), ',')).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint(), ',', '"')).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint(), ",")).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint(), (StringMatcher)null)).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint(), (StringMatcher)null, (StringMatcher)null)).toString()); // $hasTaintFlow
|
|
|
|
// Test constructing static methods:
|
|
sink(StringTokenizer.getCSVInstance(taint().toCharArray()).toString()); // $hasTaintFlow
|
|
sink(StringTokenizer.getCSVInstance(taint()).toString()); // $hasTaintFlow
|
|
sink(StringTokenizer.getTSVInstance(taint().toCharArray()).toString()); // $hasTaintFlow
|
|
sink(StringTokenizer.getTSVInstance(taint()).toString()); // $hasTaintFlow
|
|
|
|
// Test accessors:
|
|
sink((new StringTokenizer(taint())).clone()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).getContent()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).getTokenArray()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).getTokenList()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).next()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).nextToken()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).previous()); // $hasTaintFlow
|
|
sink((new StringTokenizer(taint())).previousToken()); // $hasTaintFlow
|
|
|
|
// Test mutators:
|
|
sink((new StringTokenizer()).reset(taint().toCharArray()).toString()); // $hasTaintFlow
|
|
sink((new StringTokenizer()).reset(taint()).toString()); // $hasTaintFlow
|
|
|
|
}
|
|
}
|