Michael Nebel
992801b7cb
C#: Update GetAnOutNode test.
2021-12-09 13:55:04 +01:00
Tom Hvitved
069cf9d17f
C#: Exclude stubs in GetAnOutNode.ql test
2021-12-09 13:33:14 +01:00
Michael Nebel
2f85735b6a
C#: Use stubs instead of dll's in the dataflow global tests.
2021-12-09 13:25:11 +01:00
Michael Nebel
a43704ab43
C#: Update dataflow/global tests based on synthetic fields.
2021-12-09 10:11:48 +01:00
Tom Hvitved
82abab1510
C#: Hide parameters of summarized callables
2021-11-10 15:11:13 +01:00
Anders Schack-Mulligen
f30dad7705
Dataflow: Update test expected outputs.
2021-09-07 13:02:20 +02:00
Tamas Vajk
b7f13a7e1f
C#: Change generic method names to include <> and type args/params
2021-09-06 11:48:22 +02:00
Tamas Vajk
03d1a3e0ad
Trim test files + remove duplicate newlines
2021-07-01 16:09:11 +02:00
Tamas Vajk
c29d11087b
C#: Start using 'options' files in tests
2021-07-01 16:08:47 +02:00
Tamas Vajk
a90a86bcbf
Fix flow from Element of Argument[0] for Int32.TryParse(ReadOnlySpan<Char>,...
2021-06-28 11:20:32 +02:00
Tamas Vajk
1ce7c631ff
Fix failing tests
2021-06-03 13:01:42 +02:00
Tom Hvitved
ee62522c51
C#: Extract implicit constructor initializer calls
2021-04-29 14:05:42 +02:00
Tom Hvitved
c5c80204d5
C#: Rework flow summary implementation
2021-03-24 11:27:01 +01:00
Tom Hvitved
6d6150d051
C#: Change some data-flow toString()s
2021-03-23 16:42:58 +01:00
Tom Hvitved
3c26779f40
Merge pull request #5415 from tamasvajk/feature/async-flow
...
C#: add store step for return statements inside async methods
2021-03-23 13:59:19 +01:00
Tamas Vajk
cd820917bc
Remove duplicate yield return entries from global dataflow test
2021-03-16 21:28:58 +01:00
Tom Hvitved
e1e4016a5c
C#: Fix missing delegate flow
2021-03-16 13:16:23 +01:00
Tom Hvitved
29c6d22163
C#: Add test exposing missing delegate flow
2021-03-16 13:16:23 +01:00
Tom Hvitved
94deed39a2
C#: Represent all expressions in post-order in the CFG
2020-11-12 20:04:48 +01:00
Tom Hvitved
03a36760b8
C#: Add data-flow test for ConfigureAwait()
2020-10-27 10:23:39 +01:00
Tom Hvitved
91806da2fa
C#: Address review comments
2020-10-14 14:15:34 +02:00
Tom Hvitved
5d1a5920c7
C#: Reimplement flow-summary compilation
2020-10-14 14:15:34 +02:00
Tom Hvitved
f2dc2d912a
C#: Add inter-procedural data-flow test for StringBuilder
2020-10-14 14:15:34 +02:00
Tom Hvitved
31816af11e
C#: Add missing data-flow for switch expressions
2020-10-07 17:10:29 +02:00
Tom Hvitved
9c503c1591
C#: Add more data/control-flow tests
2020-10-07 17:10:01 +02:00
Tom Hvitved
c0b251ad9e
C#: Precise data-flow for System.Threading.Tasks
2020-10-03 11:13:45 +02:00
Tom Hvitved
26544f322a
C#: Update data-flow tests for System.Threading.Tasks
2020-10-03 11:13:45 +02:00
Tom Hvitved
795c5784b0
C#: Precise data flow for collections
2020-06-26 13:40:05 +02:00
Tom Hvitved
b8ae4b7f64
C#: Move async data-flow tests from local to global
2020-06-25 10:04:18 +02:00
Tom Hvitved
8c9f85d04f
Data flow: Allow nodes to be hidden from path explanations
2020-06-09 13:53:19 +02:00
Tom Hvitved
1959480b78
C#: Field-flow summaries for library code
2020-04-16 15:20:47 +02:00
Tom Hvitved
a9b88b6eaa
C#: Update data flow tests
2020-04-14 09:31:10 +02:00
Anders Schack-Mulligen
fc87f1eb1b
C#: Fix tests.
2020-03-10 10:54:48 +01:00
Tom Hvitved
dcdb5299f0
C#: Update expected test output
2020-02-17 10:52:02 +01:00
Tom Hvitved
09b1e8b161
C#: Update expected test output
2020-02-13 20:08:11 +01:00
Tom Hvitved
fed6dd5324
C#: Generalize data-flow flow-through summaries
...
The predicate
```
argumentValueFlowsThrough(ArgumentNode arg, OutNode out, CallContext cc)
```
has been generalized to
```
argumentValueFlowsThrough(
DataFlowCall call, ArgumentNode arg, Node out, ContentOption contentIn,
ContentOption contentOut
)
```
This enables us to summarize normal flow-through (as before), getters, setters,
as well as getter-setters.
2020-02-04 14:09:12 +01:00
Tom Hvitved
f7278d36e1
Merge pull request #2498 from aschackmull/java/taint-getter
...
Java/C++/C#: Add support for taint-getter/setter summaries in data flow.
2020-01-15 09:55:19 +01:00
Tom Hvitved
9dde1ce76a
C#: No taint-tracking steps for ternary conditionals
...
Ternary conditionals `b ? x : y` mistakenly had taint-tracking steps from both
`b`, `x`, and `y` to the conditional expression itself. Flow from `b` was not
intented, and flow from `x` and `y` is already part of ordinary data flow.
2019-12-17 13:53:39 +01:00
Anders Schack-Mulligen
ca08097b56
Java/C++/C#: Fix Java Content.getType and getContainerType to match C# and fix C# tests.
2019-12-17 11:51:58 +01:00
Tom Hvitved
f1193d084b
C#: Add missing toString() relations
2019-12-16 19:38:46 +01:00
Anders Schack-Mulligen
0eacadb309
C#: Fix unit test.
2019-12-16 16:17:19 +01:00
Tom Hvitved
abcb6b8aab
C#: Type-based pruning for data flow
2019-12-10 15:48:48 +01:00
Tom Hvitved
78ddb37a8c
C#: Track type information in data flow
...
This commit adds type information to data flow paths, by mapping node types onto
the smaller set of GVN types, and implementing `ppReprType()`.
The effect is a mere change in `DataFlow::PathNode::toString()`; no type-based
pruning is done yet.
2019-12-10 15:46:28 +01:00
Calum Grant
4b0a149704
C#: Update qltest output.
2019-12-06 12:41:20 +00:00
Tom Hvitved
e4d17a9b04
C#: Refactor getAnOutNode() predicate
2019-09-22 18:55:34 +02:00
Tom Hvitved
cf4db48eb1
Merge branch 'rc/1.22' into master
2019-09-18 16:53:55 +02:00
Tom Hvitved
09e4e7901a
C#: Update expected test output
2019-09-18 13:36:15 +02:00
Luke Cartey
407f6349a3
C#: Fix potential bug in CaptureOutNode.
...
In theory this bug could associated CaptureOutNodes with the wrong transitively called
callable. However, in practice I could not create a test case that revealed incorrect
behaviour. I've included one such test case in the commit.
I believe that the cause of this is that OutNode::getACall() is not actually used in the
data flow libraries. Instead, DataFlowDispatch::Cached::getAnOutNode is the predicate
which is used to associated OutNode's with DataFlowCall's in practice, and that is always
used in a context that correctly binds the runtime target of the call.
2019-09-18 11:48:29 +01:00
Luke Cartey
4ecfe97e7b
C#: Adjust line numbers in test case.
2019-09-18 10:55:59 +01:00
Luke Cartey
3c07caefe4
C#: Add test for transitive capture calls.
2019-09-17 15:21:30 +01:00