Refactor dataflow library tests

This commit is contained in:
Ed Minnix
2023-04-13 21:25:41 -04:00
parent 0c380cdd72
commit 95c28967cc
12 changed files with 91 additions and 97 deletions

View File

@@ -1,14 +1,12 @@
import java
import semmle.code.java.dataflow.DataFlow
class Conf extends DataFlow::Configuration {
Conf() { this = "conf" }
override predicate isSource(DataFlow::Node src) {
module Config implements DataFlow::ConfigSig {
predicate isSource(DataFlow::Node src) {
src.asExpr().(MethodAccess).getMethod().hasName("source")
}
override predicate isSink(DataFlow::Node sink) {
predicate isSink(DataFlow::Node sink) {
exists(MethodAccess ma |
sink.asExpr() = ma.getAnArgument() and
ma.getMethod().hasName("sink")
@@ -16,6 +14,8 @@ class Conf extends DataFlow::Configuration {
}
}
from Conf c, DataFlow::Node src, DataFlow::Node sink
where c.hasFlow(src, sink)
module Flow = DataFlow::Global<Config>;
from DataFlow::Node src, DataFlow::Node sink
where Flow::flow(src, sink)
select src, sink