diff --git a/java/ql/test/library-tests/frameworks/rabbitmq/FlowTest.ql b/java/ql/test/library-tests/frameworks/rabbitmq/FlowTest.ql index 6e200ffa201..47cc6b07ad2 100644 --- a/java/ql/test/library-tests/frameworks/rabbitmq/FlowTest.ql +++ b/java/ql/test/library-tests/frameworks/rabbitmq/FlowTest.ql @@ -3,22 +3,18 @@ import semmle.code.java.dataflow.TaintTracking import semmle.code.java.dataflow.FlowSources import TestUtilities.InlineFlowTest -class EnableLegacy extends EnableLegacyConfiguration { - EnableLegacy() { exists(this) } -} +module Config implements DataFlow::ConfigSig { + predicate isSource(DataFlow::Node node) { node instanceof RemoteFlowSource } -class Conf extends TaintTracking::Configuration { - Conf() { this = "qltest:frameworks:rabbitmq" } - - override predicate isSource(DataFlow::Node node) { node instanceof RemoteFlowSource } - - override predicate isSink(DataFlow::Node node) { + predicate isSink(DataFlow::Node node) { exists(MethodAccess ma | ma.getMethod().hasName("sink") | node.asExpr() = ma.getAnArgument()) } } -class HasFlowTest extends InlineFlowTest { - override DataFlow::Configuration getValueFlowConfig() { none() } +module Flow = TaintTracking::Global; - override DataFlow::Configuration getTaintFlowConfig() { result = any(Conf c) } +class HasFlowTest extends InlineFlowTest { + override predicate hasValueFlow(DataFlow::Node src, DataFlow::Node sink) { none() } + + override predicate hasTaintFlow(DataFlow::Node src, DataFlow::Node sink) { Flow::flow(src, sink) } }