Commit 52b3b9e
authored
[pysrc2cpg] Fix **kwargs handling, walrus operator and comprehension test coverage (#5910)
* [pysrc2cpg] Fix **kwargs handling, add match pattern AST nodes, and test coverage
- Fix **kwargs unpacking to preserve dict argument for taint tracking
- Convert match statement patterns to proper AST nodes in case body blocks
- Add walrus operator tests verifying expression semantics
- Add comprehensive comprehension tests (list, set, dict, generator)
* Address review feedback: fix test conventions and kwargs arg name
- Rename (named expression) to (assignment expression) in walrus test
- Remove lazy and explicit test.py filename from new test blocks
- Use val keywordDictArgName = "<keyword_dict>" instead of "**" string literal
- Revert match pattern AST node changes (needs proper semantic design)
- Fix walrus operator test to match actual generated code
* Fix scalafmt formatting in PythonAstVisitor1 parent d7a0889 commit 52b3b9e
4 files changed
Lines changed: 124 additions & 8 deletions
File tree
- joern-cli/frontends/pysrc2cpg/src
- main/scala/io/joern/pysrc2cpg
- test/scala/io/joern/pysrc2cpg/cpg
Lines changed: 9 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
1444 | 1444 | | |
1445 | 1445 | | |
1446 | 1446 | | |
1447 | | - | |
1448 | 1447 | | |
1449 | 1448 | | |
1450 | 1449 | | |
| |||
1848 | 1847 | | |
1849 | 1848 | | |
1850 | 1849 | | |
1851 | | - | |
| 1850 | + | |
1852 | 1851 | | |
1853 | | - | |
| 1852 | + | |
1854 | 1853 | | |
1855 | 1854 | | |
1856 | | - | |
1857 | | - | |
| 1855 | + | |
| 1856 | + | |
| 1857 | + | |
1858 | 1858 | | |
1859 | 1859 | | |
1860 | 1860 | | |
| |||
2184 | 2184 | | |
2185 | 2185 | | |
2186 | 2186 | | |
2187 | | - | |
2188 | | - | |
| 2187 | + | |
| 2188 | + | |
| 2189 | + | |
2189 | 2190 | | |
2190 | 2191 | | |
2191 | 2192 | | |
| |||
Lines changed: 27 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
206 | 233 | | |
207 | 234 | | |
208 | 235 | | |
| |||
Lines changed: 30 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
194 | 194 | | |
195 | 195 | | |
196 | 196 | | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
197 | 227 | | |
198 | 228 | | |
199 | 229 | | |
| |||
Lines changed: 58 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
0 commit comments