Skip to content

Commit df83a51

Browse files
committed
Ruby: Add anyNamedArg summary test
1 parent cb6e5c2 commit df83a51

File tree

3 files changed

+4
-2
lines changed

3 files changed

+4
-2
lines changed

ruby/ql/test/library-tests/dataflow/summaries/Summaries.expected

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,7 @@ nodes
204204
| summaries.rb:100:6:100:6 | x | semmle.label | x |
205205
subpaths
206206
invalidSpecComponent
207+
| ;;Member[Foo].Method[anyNamedArg] | Argument[any-named] | Argument[any-named] |
207208
#select
208209
| summaries.rb:2:6:2:12 | tainted | summaries.rb:1:20:1:36 | call to source : | summaries.rb:2:6:2:12 | tainted | $@ | summaries.rb:1:20:1:36 | call to source : | call to source : |
209210
| summaries.rb:2:6:2:12 | tainted | summaries.rb:1:20:1:36 | call to source : | summaries.rb:2:6:2:12 | tainted | $@ | summaries.rb:1:20:1:36 | call to source : | call to source : |

ruby/ql/test/library-tests/dataflow/summaries/Summaries.ql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ private class StepsFromModel extends ModelInput::SummaryModelCsv {
7373
";;Member[Foo].Method[blockArg].Argument[block].Parameter[0].Method[preserveTaint];Argument[0];ReturnValue;taint",
7474
";;Member[Foo].Method[namedArg];Argument[foo:];ReturnValue;taint",
7575
";;Member[Foo].Method[anyArg];Argument[any];ReturnValue;taint",
76+
";;Member[Foo].Method[anyNamedArg];Argument[any-named];ReturnValue;taint",
7677
";;Member[Foo].Method[anyPositionFromOne];Argument[1..];ReturnValue;taint",
7778
";;Member[Foo].Method[intoNamedCallback];Argument[0];Argument[foo:].Parameter[0];taint",
7879
";;Member[Foo].Method[intoNamedParameter];Argument[0];Argument[0].Parameter[foo:];taint",

ruby/ql/test/library-tests/dataflow/summaries/summaries.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ def userDefinedFunction(x, y)
5454
sink(Foo.anyArg(foo: tainted)) # $ hasTaintFlow=tainted
5555
sink(Foo.anyArg(tainted)) # $ hasTaintFlow=tainted
5656

57-
# sink(Foo.anyNamedArg(foo: tainted)) # $ MISSING: hasTaintFlow=tainted
58-
# sink(Foo.anyNamedArg(tainted))
57+
sink(Foo.anyNamedArg(foo: tainted)) # $ MISSING: hasTaintFlow=tainted
58+
sink(Foo.anyNamedArg(tainted))
5959

6060
sink(Foo.anyPositionFromOne(tainted))
6161
sink(Foo.anyPositionFromOne(0, tainted)) # $ hasTaintFlow=tainted

0 commit comments

Comments
 (0)