JS: Add test for use steps

This commit is contained in:
Asger F
2024-04-17 14:45:45 +02:00
parent 2dcb5fbd16
commit eab96988bf
4 changed files with 20 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
import ApiGraphs.VerifyAssertions
private import semmle.javascript.dataflow.internal.PreCallGraphStep
class CustomUseStep extends PreCallGraphStep {
override predicate loadStep(DataFlow::Node pred, DataFlow::Node succ, string prop) {
exists(DataFlow::CallNode call |
call.getCalleeName() = "customLoad" and
pred = call.getArgument(0) and
succ = call and
prop = call.getArgument(1).getStringValue()
)
}
}

View File

@@ -0,0 +1,4 @@
const foo = require("foo");
foo.bar; // use=moduleImport("foo").getMember("exports").getMember("bar")
customLoad(foo, "baz") // use=moduleImport("foo").getMember("exports").getMember("baz")

View File

@@ -0,0 +1,3 @@
{
"name": "custom-use-steps"
}