Refactor Android tests

This commit is contained in:
Ed Minnix
2023-04-13 21:43:59 -04:00
parent 95c28967cc
commit f745642252
5 changed files with 44 additions and 38 deletions

View File

@@ -2,14 +2,20 @@ import java
import semmle.code.java.dataflow.FlowSources
import TestUtilities.InlineFlowTest
class EnableLegacy extends EnableLegacyConfiguration {
EnableLegacy() { exists(this) }
module SourceValueFlowConfig implements DataFlow::ConfigSig {
predicate isSource(DataFlow::Node src) { src instanceof RemoteFlowSource }
predicate isSink(DataFlow::Node sink) { DefaultFlowConfig::isSink(sink) }
int fieldFlowBranchLimit() { result = DefaultFlowConfig::fieldFlowBranchLimit() }
}
class SourceValueFlowConf extends DefaultValueFlowConf {
override predicate isSource(DataFlow::Node src) { src instanceof RemoteFlowSource }
}
module SourceValueFlow = DataFlow::Global<SourceValueFlowConfig>;
class SourceInlineFlowTest extends InlineFlowTest {
override DataFlow::Configuration getTaintFlowConfig() { none() }
override predicate hasValueFlow(DataFlow::Node src, DataFlow::Node sink) {
SourceValueFlow::flow(src, sink)
}
override predicate hasTaintFlow(DataFlow::Node src, DataFlow::Node sink) { none() }
}