mirror of
https://github.com/github/codeql.git
synced 2026-05-27 09:31:30 +02:00
Test-side changes accompanying the dataflow migration:
* Test queries (.ql) and shared test harness (TestSummaries,
TestTaintLib) qualify CFG / SSA types with Cfg:: / SsaImpl::,
bridge via AST (Name, Call, ...) instead of legacy NameNode /
CallNode, and switch GlobalSsaVariable / EssaVariable usages
to the new adapter API.
* .expected files updated for legitimate precision and toString
changes:
- phi-node def-use edges newly exposed in def_use_counts.
- scope-exit synthetic use surfaces one extra implicit use
in use-use-counts.
- For [empty]/[non-empty] outcome rows added in
EnclosingCallable.
- SsaSourceVariable / Global Variable label cosmetics
normalised throughout.
* Inline annotations:
- typetracking/test.py: removed MISSING:tracked on lines
93/95 (now found), added SPURIOUS:tracked on line 108
(decorator over-reach).
- global-flow/test.py: added SPURIOUS writes=g_mod on line
20 (correctly reports immediately-overwritten write).
- tainttracking/customSanitizer/test.py: marked
try/except: ensure_tainted(s) cases as MISSING: tainted
(no-raise CFG abstraction does not connect try body to
except body).
- coverage/test.py: marked
SINK(return_from_inner_scope([])) as
MISSING: flow=... pending closer investigation.
* regression/{dataflow,custom_dataflow}.expected: accept two
if/else cond-correlation over-reaches (documented limitation;
same imprecision applies under legacy semantics by design).
After this change the dataflow library-tests stand at 62 of 64
passing; the two remaining failures are tracked under the
ImportStarRefinement workstream.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
47 lines
2.5 KiB
Plaintext
47 lines
2.5 KiB
Plaintext
| test.py:1:1:1:21 | FunctionExpr | test.py:1:5:1:17 | obfuscated_id |
|
|
| test.py:1:1:1:21 | FunctionExpr | test.py:1:5:1:17 | obfuscated_id |
|
|
| test.py:1:5:1:17 | obfuscated_id | test.py:0:0:0:0 | ModuleVariableNode in Module test for obfuscated_id |
|
|
| test.py:1:5:1:17 | obfuscated_id | test.py:7:5:7:17 | obfuscated_id |
|
|
| test.py:1:19:1:19 | x | test.py:2:3:2:3 | y |
|
|
| test.py:1:19:1:19 | x | test.py:2:3:2:3 | y |
|
|
| test.py:1:19:1:19 | x | test.py:2:3:2:3 | y |
|
|
| test.py:1:19:1:19 | x | test.py:2:3:2:3 | y |
|
|
| test.py:1:19:1:19 | x | test.py:2:7:2:7 | x |
|
|
| test.py:1:19:1:19 | x | test.py:2:7:2:7 | x |
|
|
| test.py:1:19:1:19 | x | test.py:2:7:2:7 | x |
|
|
| test.py:1:19:1:19 | x | test.py:2:7:2:7 | x |
|
|
| test.py:2:3:2:3 | y | test.py:3:3:3:3 | z |
|
|
| test.py:2:3:2:3 | y | test.py:3:3:3:3 | z |
|
|
| test.py:2:3:2:3 | y | test.py:3:3:3:3 | z |
|
|
| test.py:2:3:2:3 | y | test.py:3:3:3:3 | z |
|
|
| test.py:2:3:2:3 | y | test.py:3:7:3:7 | y |
|
|
| test.py:2:3:2:3 | y | test.py:3:7:3:7 | y |
|
|
| test.py:2:3:2:3 | y | test.py:3:7:3:7 | y |
|
|
| test.py:2:3:2:3 | y | test.py:3:7:3:7 | y |
|
|
| test.py:2:7:2:7 | x | test.py:2:3:2:3 | y |
|
|
| test.py:2:7:2:7 | x | test.py:2:3:2:3 | y |
|
|
| test.py:2:7:2:7 | x | test.py:2:3:2:3 | y |
|
|
| test.py:2:7:2:7 | x | test.py:2:3:2:3 | y |
|
|
| test.py:3:3:3:3 | z | test.py:4:10:4:10 | z |
|
|
| test.py:3:3:3:3 | z | test.py:4:10:4:10 | z |
|
|
| test.py:3:3:3:3 | z | test.py:4:10:4:10 | z |
|
|
| test.py:3:3:3:3 | z | test.py:4:10:4:10 | z |
|
|
| test.py:3:7:3:7 | y | test.py:3:3:3:3 | z |
|
|
| test.py:3:7:3:7 | y | test.py:3:3:3:3 | z |
|
|
| test.py:3:7:3:7 | y | test.py:3:3:3:3 | z |
|
|
| test.py:3:7:3:7 | y | test.py:3:3:3:3 | z |
|
|
| test.py:4:10:4:10 | z | test.py:7:5:7:20 | After obfuscated_id() |
|
|
| test.py:4:10:4:10 | z | test.py:7:5:7:20 | After obfuscated_id() |
|
|
| test.py:6:1:6:1 | a | test.py:0:0:0:0 | ModuleVariableNode in Module test for a |
|
|
| test.py:6:1:6:1 | a | test.py:7:19:7:19 | a |
|
|
| test.py:6:1:6:1 | a | test.py:7:19:7:19 | a |
|
|
| test.py:6:5:6:6 | IntegerLiteral | test.py:6:1:6:1 | a |
|
|
| test.py:6:5:6:6 | IntegerLiteral | test.py:6:1:6:1 | a |
|
|
| test.py:7:1:7:1 | b | test.py:0:0:0:0 | ModuleVariableNode in Module test for b |
|
|
| test.py:7:5:7:20 | After obfuscated_id() | test.py:7:1:7:1 | b |
|
|
| test.py:7:5:7:20 | After obfuscated_id() | test.py:7:1:7:1 | b |
|
|
| test.py:7:19:7:19 | a | test.py:1:19:1:19 | x |
|
|
| test.py:7:19:7:19 | a | test.py:1:19:1:19 | x |
|
|
| test.py:7:19:7:19 | a | test.py:7:5:7:20 | After obfuscated_id() |
|
|
| test.py:7:19:7:19 | a | test.py:7:5:7:20 | After obfuscated_id() |
|