Skip to content

Commit eab9698

Browse files
committed
JS: Add test for use steps
1 parent 2dcb5fb commit eab9698

File tree

4 files changed

+20
-0
lines changed

4 files changed

+20
-0
lines changed

javascript/ql/test/ApiGraphs/custom-use-steps/VerifyAssertions.expected

Whitespace-only changes.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import ApiGraphs.VerifyAssertions
2+
private import semmle.javascript.dataflow.internal.PreCallGraphStep
3+
4+
class CustomUseStep extends PreCallGraphStep {
5+
override predicate loadStep(DataFlow::Node pred, DataFlow::Node succ, string prop) {
6+
exists(DataFlow::CallNode call |
7+
call.getCalleeName() = "customLoad" and
8+
pred = call.getArgument(0) and
9+
succ = call and
10+
prop = call.getArgument(1).getStringValue()
11+
)
12+
}
13+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
const foo = require("foo");
2+
3+
foo.bar; // use=moduleImport("foo").getMember("exports").getMember("bar")
4+
customLoad(foo, "baz") // use=moduleImport("foo").getMember("exports").getMember("baz")
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"name": "custom-use-steps"
3+
}

0 commit comments

Comments
 (0)