Skip to content

Commit 3be3da2

Browse files
committed
add recursive API-graph test
1 parent ef5818e commit 3be3da2

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

python/ql/test/library-tests/ApiGraphs/py3/deftest1.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,18 @@ def namedCallback(myName, otherName):
4444

4545
foo.blob(namedCallback) #$ use=moduleImport("mypkg").getMember("foo").getMember("blob").getReturn()
4646

47-
foo.named(myName = 2) #$ def=moduleImport("mypkg").getMember("foo").getMember("named").getNamedParameter("myName")
47+
foo.named(myName = 2) #$ def=moduleImport("mypkg").getMember("foo").getMember("named").getNamedParameter("myName")
48+
49+
50+
def recusisionCallback(x):
51+
x.recursion() #$ use=moduleImport("mypkg").getMember("foo").getMember("rec").getParameter(0).getMember("callback").getParameter(0).getMember("recursion").getReturn()
52+
x.recursion() #$ use=moduleImport("mypkg").getMember("foo").getMember("rec").getParameter(0).getMember("rec1").getMember("callback").getParameter(0).getMember("recursion").getReturn()
53+
x.recursion() #$ use=moduleImport("mypkg").getMember("foo").getMember("rec").getParameter(0).getMember("rec1").getMember("rec2").getMember("callback").getParameter(0).getMember("recursion").getReturn()
54+
x.recursion() #$ use=moduleImport("mypkg").getMember("foo").getMember("rec").getParameter(0).getMember("rec1").getMember("rec2").getMember("rec1").getMember("callback").getParameter(0).getMember("recursion").getReturn()
55+
56+
recursiveDict = {};
57+
recursiveDict.callback = recusisionCallback;
58+
recursiveDict.rec1 = recursiveDict;
59+
recursiveDict.rec2 = recursiveDict;
60+
61+
foo.rec(recursiveDict); #$ def=moduleImport("mypkg").getMember("foo").getMember("rec").getParameter(0)

0 commit comments

Comments
 (0)