Skip to content

Commit 84e412f

Browse files
authored
Merge pull request github#16477 from michaelnebel/csharp/madinlinetest
C#: Inline expectation for model generator test.
2 parents 855fe12 + e198d01 commit 84e412f

25 files changed

+644
-491
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
private import csharp as Cs
2+
private import codeql.mad.test.InlineMadTest
3+
4+
private module InlineMadTestLang implements InlineMadTestLangSig {
5+
class Callable = Cs::Callable;
6+
7+
string getComment(Callable c) {
8+
exists(Cs::CommentBlock block, Cs::Element after | after = block.getAfter() |
9+
(
10+
after = c or
11+
after = c.(Cs::Accessor).getDeclaration()
12+
) and
13+
result = block.getALine()
14+
)
15+
}
16+
}
17+
18+
import InlineMadTestImpl<InlineMadTestLang>
Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,2 @@
1-
| NoSummaries;BaseClass;M1;(System.String);summary;df-generated |
2-
| NoSummaries;BaseClass;M2;(System.String);summary;df-generated |
3-
| NoSummaries;CollectionFlow;ReturnSimpleTypeArray;(System.Int32[]);summary;df-generated |
4-
| NoSummaries;CollectionFlow;ReturnSimpleTypeDictionary;(System.Collections.Generic.Dictionary<System.Int32,System.Int32>);summary;df-generated |
5-
| NoSummaries;CollectionFlow;ReturnSimpleTypeList;(System.Collections.Generic.List<System.Int32>);summary;df-generated |
6-
| NoSummaries;EquatableBound;Equals;(System.Object);summary;df-generated |
7-
| NoSummaries;EquatableUnBound<T>;Equals;(T);summary;df-generated |
8-
| NoSummaries;SimpleTypes;M1;(System.Boolean);summary;df-generated |
9-
| NoSummaries;SimpleTypes;M2;(System.Boolean);summary;df-generated |
10-
| NoSummaries;SimpleTypes;M3;(System.Int32);summary;df-generated |
11-
| NoSummaries;SimpleTypes;M4;(System.Int32);summary;df-generated |
12-
| Sinks;NewSinks;WrapFieldResponseWriteFile;();summary;df-generated |
13-
| Sinks;NewSinks;WrapPrivateFieldResponseWriteFile;();summary;df-generated |
14-
| Sinks;NewSinks;WrapPrivatePropResponseWriteFile;();summary;df-generated |
15-
| Sinks;NewSinks;WrapPropPrivateSetResponseWriteFile;();summary;df-generated |
16-
| Sinks;NewSinks;WrapPropResponseWriteFile;();summary;df-generated |
17-
| Sinks;NewSinks;WrapResponseWrite;(System.Object);summary;df-generated |
18-
| Sinks;NewSinks;WrapResponseWriteFile;(System.String);summary;df-generated |
19-
| Sources;NewSources;WrapConsoleReadKey;();summary;df-generated |
20-
| Sources;NewSources;WrapConsoleReadLine;();summary;df-generated |
21-
| Sources;NewSources;WrapConsoleReadLineAndProcees;(System.String);summary;df-generated |
22-
| Summaries;EqualsGetHashCodeNoFlow;Equals;(System.Object);summary;df-generated |
23-
| Summaries;EqualsGetHashCodeNoFlow;GetHashCode;();summary;df-generated |
24-
| Summaries;OperatorFlow;op_Increment;(Summaries.OperatorFlow);summary;df-generated |
1+
unexpectedModel
2+
expectedModel

csharp/ql/test/utils/modelgenerator/dataflow/CaptureNeutralModels.ext.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ extensions:
33
pack: codeql/csharp-all
44
extensible: neutralModel
55
data:
6-
- [ "NoSummaries", "ManuallyModelled", "HasNeutralSummaryNoFlow", "(System.Object)", "summary", "manual"]
6+
- [ "Models", "ManuallyModelled", "HasNeutralSummaryNoFlow", "(System.Object)", "summary", "manual"]
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import csharp
2+
import utils.modelgenerator.internal.CaptureSummaryFlowQuery
3+
import TestUtilities.InlineMadTest
4+
5+
module InlineMadTestConfig implements InlineMadTestConfigSig {
6+
string getCapturedModel(Callable c) { result = captureNoFlow(c) }
7+
8+
string getKind() { result = "neutral" }
9+
}
10+
11+
import InlineMadTest<InlineMadTestConfig>

csharp/ql/test/utils/modelgenerator/dataflow/CaptureNeutralModels.qlref

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,2 @@
1-
| Sinks;NewSinks;false;WrapFieldResponseWriteFile;();;Argument[this];html-injection;df-generated |
2-
| Sinks;NewSinks;false;WrapPropResponseWriteFile;();;Argument[this];html-injection;df-generated |
3-
| Sinks;NewSinks;false;WrapResponseWrite;(System.Object);;Argument[0];html-injection;df-generated |
4-
| Sinks;NewSinks;false;WrapResponseWriteFile;(System.String);;Argument[0];html-injection;df-generated |
1+
unexpectedModel
2+
expectedModel
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import csharp
2+
import utils.modelgenerator.internal.CaptureModels
3+
import TestUtilities.InlineMadTest
4+
5+
module InlineMadTestConfig implements InlineMadTestConfigSig {
6+
string getCapturedModel(Callable c) { result = captureSink(c) }
7+
8+
string getKind() { result = "sink" }
9+
}
10+
11+
import InlineMadTest<InlineMadTestConfig>

csharp/ql/test/utils/modelgenerator/dataflow/CaptureSinkModels.qlref

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
| Sources;NewSources;false;WrapConsoleReadKey;();;ReturnValue;local;df-generated |
2-
| Sources;NewSources;false;WrapConsoleReadLine;();;ReturnValue;local;df-generated |
3-
| Sources;NewSources;false;WrapConsoleReadLineAndProcees;(System.String);;ReturnValue;local;df-generated |
1+
unexpectedModel
2+
expectedModel
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import csharp
2+
import utils.modelgenerator.internal.CaptureModels
3+
import TestUtilities.InlineMadTest
4+
5+
module InlineMadTestConfig implements InlineMadTestConfigSig {
6+
string getCapturedModel(Callable c) { result = captureSource(c) }
7+
8+
string getKind() { result = "source" }
9+
}
10+
11+
import InlineMadTest<InlineMadTestConfig>

0 commit comments

Comments
 (0)