Skip to content

Commit 2bf5a70

Browse files
committed
Rust: update model generator tests
1 parent b5a7f87 commit 2bf5a70

File tree

9 files changed

+105
-97
lines changed

9 files changed

+105
-97
lines changed
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
extensions:
22
- addsTo:
33
pack: codeql/rust-all
4-
extensible: sinkModelDeprecated
4+
extensible: sinkModel
55
data:
6-
- ["repo::test", "crate::sinks::known_sink", "Argument[0]", "test-sink", "manual"]
6+
- ["test::sinks::known_sink", "Argument[0]", "test-sink", "manual"]

rust/ql/test/utils-tests/modelgenerator/CaptureSinkModels.ql

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@ import SinkModels
44
import utils.test.InlineMadTest
55

66
module InlineMadTestConfig implements InlineMadTestConfigSig {
7-
string getCapturedModel(Function f) { result = Heuristic::captureSink(f) }
7+
string getCapturedModel(Function f) {
8+
exists(QualifiedCallable qc | f = qc.asFunction() | result = Heuristic::captureSink(qc))
9+
}
810

911
string getKind() { result = "sink" }
1012
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
extensions:
22
- addsTo:
33
pack: codeql/rust-all
4-
extensible: sourceModelDeprecated
4+
extensible: sourceModel
55
data:
6-
- ["repo::test", "crate::sources::known_source", "ReturnValue", "test-source", "manual"]
6+
- ["test::sources::known_source", "ReturnValue", "test-source", "manual"]

rust/ql/test/utils-tests/modelgenerator/CaptureSourceModels.ql

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ import utils.test.InlineMadTest
55
import codeql.rust.dataflow.internal.ModelsAsData
66

77
module InlineMadTestConfig implements InlineMadTestConfigSig {
8-
string getCapturedModel(Function c) { result = Heuristic::captureSource(c) }
8+
string getCapturedModel(Function c) {
9+
exists(QualifiedCallable qc | c = qc.asFunction() | result = Heuristic::captureSource(qc))
10+
}
911

1012
string getKind() { result = "source" }
1113
}

rust/ql/test/utils-tests/modelgenerator/CaptureSummaryModels.ql

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,11 @@ import SummaryModels
44
import utils.test.InlineMadTest
55

66
module InlineMadTestConfig implements InlineMadTestConfigSig {
7-
string getCapturedModel(Function f) { result = ContentSensitive::captureFlow(f, _, _, _, _) }
7+
string getCapturedModel(Function f) {
8+
exists(QualifiedCallable qc | f = qc.asFunction() |
9+
result = ContentSensitive::captureFlow(qc, _, _, _, _)
10+
)
11+
}
812

913
string getKind() { result = "summary" }
1014
}

rust/ql/test/utils-tests/modelgenerator/option.rs

Lines changed: 72 additions & 72 deletions
Large diffs are not rendered by default.

rust/ql/test/utils-tests/modelgenerator/sinks.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ fn known_sink(n: i64) {
33
()
44
}
55

6-
// sink=repo::test;crate::sinks::derived_sink;Argument[1];test-sink;df-generated
6+
// sink=test::sinks::derived_sink;Argument[1];test-sink;df-generated
77
pub fn derived_sink(c: bool, n: i64) -> i64 {
88
if c {
99
known_sink(n);

rust/ql/test/utils-tests/modelgenerator/sources.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ fn known_source(n: i64) -> i64 {
33
n
44
}
55

6-
// source=repo::test;crate::sources::derived_source;ReturnValue;test-source;df-generated
7-
// summary=repo::test;crate::sources::derived_source;Argument[1];ReturnValue;value;dfc-generated
6+
// source=test::sources::derived_source;ReturnValue;test-source;df-generated
7+
// summary=test::sources::derived_source;Argument[1];ReturnValue;value;dfc-generated
88
pub fn derived_source(c: bool, n: i64) -> i64 {
99
if c {
1010
known_source(n)

rust/ql/test/utils-tests/modelgenerator/summaries.rs

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// summary=repo::test;crate::summaries::identity;Argument[0];ReturnValue;value;dfc-generated
1+
// summary=test::summaries::identity;Argument[0];ReturnValue;value;dfc-generated
22
pub fn identity<A>(a: A) -> A {
33
a
44
}
@@ -16,23 +16,23 @@ pub enum Either<A, B> {
1616
use Either::*;
1717

1818
impl<A, B> Either<A, B> {
19-
// summary=repo::test;<crate::summaries::Either>::new;Argument[0];ReturnValue.Field[test::summaries::Either::Right(0)];value;dfc-generated
19+
// summary=<test::summaries::Either>::new;Argument[0];ReturnValue.Field[test::summaries::Either::Right(0)];value;dfc-generated
2020
pub fn new(b: B) -> Self {
2121
Right(b)
2222
}
2323

24-
// summary=repo::test;<crate::summaries::Either>::unwrap;Argument[self].Field[test::summaries::Either::Right(0)];ReturnValue;value;dfc-generated
24+
// summary=<test::summaries::Either>::unwrap;Argument[self].Field[test::summaries::Either::Right(0)];ReturnValue;value;dfc-generated
2525
pub fn unwrap(self) -> B {
2626
match self {
2727
Left(a) => panic!("Left cannot be unwrapped"),
2828
Right(b) => b,
2929
}
3030
}
3131

32-
// summary=repo::test;<crate::summaries::Either>::zip;Argument[0].Field[test::summaries::Either::Left(0)];ReturnValue.Field[test::summaries::Either::Left(0)];value;dfc-generated
33-
// summary=repo::test;<crate::summaries::Either>::zip;Argument[0].Field[test::summaries::Either::Right(0)];ReturnValue.Field[test::summaries::Either::Right(0)].Field[1];value;dfc-generated
34-
// summary=repo::test;<crate::summaries::Either>::zip;Argument[self].Field[test::summaries::Either::Left(0)];ReturnValue.Field[test::summaries::Either::Left(0)];value;dfc-generated
35-
// summary=repo::test;<crate::summaries::Either>::zip;Argument[self].Field[test::summaries::Either::Right(0)];ReturnValue.Field[test::summaries::Either::Right(0)].Field[0];value;dfc-generated
32+
// summary=<test::summaries::Either>::zip;Argument[0].Field[test::summaries::Either::Left(0)];ReturnValue.Field[test::summaries::Either::Left(0)];value;dfc-generated
33+
// summary=<test::summaries::Either>::zip;Argument[0].Field[test::summaries::Either::Right(0)];ReturnValue.Field[test::summaries::Either::Right(0)].Field[1];value;dfc-generated
34+
// summary=<test::summaries::Either>::zip;Argument[self].Field[test::summaries::Either::Left(0)];ReturnValue.Field[test::summaries::Either::Left(0)];value;dfc-generated
35+
// summary=<test::summaries::Either>::zip;Argument[self].Field[test::summaries::Either::Right(0)];ReturnValue.Field[test::summaries::Either::Right(0)].Field[0];value;dfc-generated
3636
pub fn zip<C>(self, other: Either<A, C>) -> Either<A, (B, C)> {
3737
match (self, other) {
3838
(Right(b), Right(d)) => Right((b, d)),
@@ -48,20 +48,20 @@ pub struct MyStruct {
4848
}
4949

5050
impl MyStruct {
51-
// summary=repo::test;<crate::summaries::MyStruct>::new;Argument[0];ReturnValue.Field[test::summaries::MyStruct::foo];value;dfc-generated
52-
// summary=repo::test;<crate::summaries::MyStruct>::new;Argument[1];ReturnValue.Field[test::summaries::MyStruct::bar];value;dfc-generated
51+
// summary=<test::summaries::MyStruct>::new;Argument[0];ReturnValue.Field[test::summaries::MyStruct::foo];value;dfc-generated
52+
// summary=<test::summaries::MyStruct>::new;Argument[1];ReturnValue.Field[test::summaries::MyStruct::bar];value;dfc-generated
5353
pub fn new(a: i64, b: f64) -> MyStruct {
5454
MyStruct { foo: a, bar: b }
5555
}
5656

57-
// summary=repo::test;<crate::summaries::MyStruct>::get_foo;Argument[self].Field[test::summaries::MyStruct::foo];ReturnValue;value;dfc-generated
57+
// summary=<test::summaries::MyStruct>::get_foo;Argument[self].Field[test::summaries::MyStruct::foo];ReturnValue;value;dfc-generated
5858
pub fn get_foo(self) -> i64 {
5959
match self {
6060
MyStruct { foo, bar: _ } => foo,
6161
}
6262
}
6363

64-
// summary=repo::test;<crate::summaries::MyStruct>::get_bar;Argument[self].Field[test::summaries::MyStruct::bar];ReturnValue;value;dfc-generated
64+
// summary=<test::summaries::MyStruct>::get_bar;Argument[self].Field[test::summaries::MyStruct::bar];ReturnValue;value;dfc-generated
6565
pub fn get_bar(self) -> f64 {
6666
match self {
6767
MyStruct { foo: _, bar } => bar,
@@ -71,8 +71,8 @@ impl MyStruct {
7171

7272
// Higher-order functions
7373

74-
// summary=repo::test;crate::summaries::apply;Argument[0];Argument[1].Parameter[0];value;dfc-generated
75-
// summary=repo::test;crate::summaries::apply;Argument[1].ReturnValue;ReturnValue;value;dfc-generated
74+
// summary=test::summaries::apply;Argument[0];Argument[1].Parameter[0];value;dfc-generated
75+
// summary=test::summaries::apply;Argument[1].ReturnValue;ReturnValue;value;dfc-generated
7676
pub fn apply<F>(n: i64, f: F) -> i64
7777
where
7878
F: FnOnce(i64) -> i64,
@@ -82,12 +82,12 @@ where
8282

8383
// Flow out of mutated arguments
8484

85-
// summary=repo::test;crate::summaries::set_int;Argument[1];Argument[0].Reference;value;dfc-generated
85+
// summary=test::summaries::set_int;Argument[1];Argument[0].Reference;value;dfc-generated
8686
pub fn set_int(n: &mut i64, c: i64) {
8787
*n = c;
8888
}
8989

90-
// summary=repo::test;crate::summaries::read_int;Argument[0].Reference;ReturnValue;value;dfc-generated
90+
// summary=test::summaries::read_int;Argument[0].Reference;ReturnValue;value;dfc-generated
9191
pub fn read_int(n: &mut i64) -> i64 {
9292
*n
9393
}

0 commit comments

Comments
 (0)