@alloy-js/python 0.4.0-dev.2 → 0.4.0-dev.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. package/dist/dev/src/builtins/python.js +30 -0
  2. package/dist/dev/src/builtins/python.js.map +1 -0
  3. package/dist/dev/src/components/Atom.js +122 -0
  4. package/dist/dev/src/components/Atom.js.map +1 -0
  5. package/dist/dev/src/components/CallSignature.js +195 -0
  6. package/dist/dev/src/components/CallSignature.js.map +1 -0
  7. package/dist/dev/src/components/ClassDeclaration.js +112 -0
  8. package/dist/dev/src/components/ClassDeclaration.js.map +1 -0
  9. package/dist/dev/src/components/ClassInstantiation.js +40 -0
  10. package/dist/dev/src/components/ClassInstantiation.js.map +1 -0
  11. package/dist/dev/src/components/ClassMethodDeclaration.js +40 -0
  12. package/dist/dev/src/components/ClassMethodDeclaration.js.map +1 -0
  13. package/dist/dev/src/components/ConstructorDeclaration.js +39 -0
  14. package/dist/dev/src/components/ConstructorDeclaration.js.map +1 -0
  15. package/dist/dev/src/components/DataclassDeclaration.js +177 -0
  16. package/dist/dev/src/components/DataclassDeclaration.js.map +1 -0
  17. package/dist/dev/src/components/Declaration.js +31 -0
  18. package/dist/dev/src/components/Declaration.js.map +1 -0
  19. package/dist/dev/src/components/DunderMethodDeclaration.js +33 -0
  20. package/dist/dev/src/components/DunderMethodDeclaration.js.map +1 -0
  21. package/dist/dev/src/components/EnumDeclaration.js +259 -0
  22. package/dist/dev/src/components/EnumDeclaration.js.map +1 -0
  23. package/dist/dev/src/components/EnumMember.js +95 -0
  24. package/dist/dev/src/components/EnumMember.js.map +1 -0
  25. package/dist/dev/src/components/FunctionBase.js +130 -0
  26. package/dist/dev/src/components/FunctionBase.js.map +1 -0
  27. package/dist/dev/src/components/FunctionCallExpression.js +53 -0
  28. package/dist/dev/src/components/FunctionCallExpression.js.map +1 -0
  29. package/dist/dev/src/components/FunctionDeclaration.js +45 -0
  30. package/dist/dev/src/components/FunctionDeclaration.js.map +1 -0
  31. package/dist/dev/src/components/FutureStatement.js +31 -0
  32. package/dist/dev/src/components/FutureStatement.js.map +1 -0
  33. package/dist/dev/src/components/ImportStatement.js +167 -0
  34. package/dist/dev/src/components/ImportStatement.js.map +1 -0
  35. package/dist/dev/src/components/LexicalScope.js +26 -0
  36. package/dist/dev/src/components/LexicalScope.js.map +1 -0
  37. package/dist/dev/src/components/MemberExpression.js +290 -0
  38. package/dist/dev/src/components/MemberExpression.js.map +1 -0
  39. package/dist/dev/src/components/MemberScope.js +23 -0
  40. package/dist/dev/src/components/MemberScope.js.map +1 -0
  41. package/dist/dev/src/components/MethodBase.js +40 -0
  42. package/dist/dev/src/components/MethodBase.js.map +1 -0
  43. package/dist/dev/src/components/MethodDeclaration.js +38 -0
  44. package/dist/dev/src/components/MethodDeclaration.js.map +1 -0
  45. package/dist/dev/src/components/PropertyDeclaration.js +287 -0
  46. package/dist/dev/src/components/PropertyDeclaration.js.map +1 -0
  47. package/dist/dev/src/components/PyDoc.js +1478 -0
  48. package/dist/dev/src/components/PyDoc.js.map +1 -0
  49. package/dist/dev/src/components/PythonBlock.js +35 -0
  50. package/dist/dev/src/components/PythonBlock.js.map +1 -0
  51. package/dist/dev/src/components/Reference.js +23 -0
  52. package/dist/dev/src/components/Reference.js.map +1 -0
  53. package/dist/dev/src/components/SourceFile.js +385 -0
  54. package/dist/dev/src/components/SourceFile.js.map +1 -0
  55. package/dist/dev/src/components/StatementList.js +34 -0
  56. package/dist/dev/src/components/StatementList.js.map +1 -0
  57. package/dist/dev/src/components/StaticMethodDeclaration.js +40 -0
  58. package/dist/dev/src/components/StaticMethodDeclaration.js.map +1 -0
  59. package/dist/dev/src/components/TypeArguments.js +22 -0
  60. package/dist/dev/src/components/TypeArguments.js.map +1 -0
  61. package/dist/dev/src/components/TypeRefContext.js +33 -0
  62. package/dist/dev/src/components/TypeRefContext.js.map +1 -0
  63. package/dist/dev/src/components/TypeReference.js +67 -0
  64. package/dist/dev/src/components/TypeReference.js.map +1 -0
  65. package/dist/dev/src/components/UnionTypeExpression.js +57 -0
  66. package/dist/dev/src/components/UnionTypeExpression.js.map +1 -0
  67. package/dist/dev/src/components/VariableDeclaration.js +150 -0
  68. package/dist/dev/src/components/VariableDeclaration.js.map +1 -0
  69. package/dist/dev/src/components/index.js +32 -0
  70. package/dist/dev/src/components/index.js.map +1 -0
  71. package/dist/dev/src/context/index.js +2 -0
  72. package/dist/dev/src/context/index.js.map +1 -0
  73. package/dist/dev/src/context/type-ref-context.js +17 -0
  74. package/dist/dev/src/context/type-ref-context.js.map +1 -0
  75. package/dist/dev/src/create-module.js +64 -0
  76. package/dist/dev/src/create-module.js.map +1 -0
  77. package/dist/dev/src/index.js +8 -0
  78. package/dist/dev/src/index.js.map +1 -0
  79. package/dist/dev/src/name-conflict-resolver.js +8 -0
  80. package/dist/dev/src/name-conflict-resolver.js.map +1 -0
  81. package/dist/dev/src/name-policy.js +48 -0
  82. package/dist/dev/src/name-policy.js.map +1 -0
  83. package/dist/dev/src/parameter-descriptor.js +8 -0
  84. package/dist/dev/src/parameter-descriptor.js.map +1 -0
  85. package/dist/dev/src/symbol-creation.js +58 -0
  86. package/dist/dev/src/symbol-creation.js.map +1 -0
  87. package/dist/dev/src/symbols/factories.js +28 -0
  88. package/dist/dev/src/symbols/factories.js.map +1 -0
  89. package/dist/dev/src/symbols/index.js +8 -0
  90. package/dist/dev/src/symbols/index.js.map +1 -0
  91. package/dist/dev/src/symbols/python-lexical-scope.js +15 -0
  92. package/dist/dev/src/symbols/python-lexical-scope.js.map +1 -0
  93. package/dist/dev/src/symbols/python-member-scope.js +7 -0
  94. package/dist/dev/src/symbols/python-member-scope.js.map +1 -0
  95. package/dist/dev/src/symbols/python-module-scope.js +86 -0
  96. package/dist/dev/src/symbols/python-module-scope.js.map +1 -0
  97. package/dist/dev/src/symbols/python-output-symbol.js +73 -0
  98. package/dist/dev/src/symbols/python-output-symbol.js.map +1 -0
  99. package/dist/dev/src/symbols/reference.js +87 -0
  100. package/dist/dev/src/symbols/reference.js.map +1 -0
  101. package/dist/dev/src/symbols/scopes.js +13 -0
  102. package/dist/dev/src/symbols/scopes.js.map +1 -0
  103. package/dist/dev/src/utils.js +13 -0
  104. package/dist/dev/src/utils.js.map +1 -0
  105. package/dist/dev/test/callsignatures.test.js +482 -0
  106. package/dist/dev/test/callsignatures.test.js.map +1 -0
  107. package/dist/dev/test/class-method-declaration.test.js +85 -0
  108. package/dist/dev/test/class-method-declaration.test.js.map +1 -0
  109. package/dist/dev/test/classdeclarations.test.js +654 -0
  110. package/dist/dev/test/classdeclarations.test.js.map +1 -0
  111. package/dist/dev/test/classinstantiations.test.js +281 -0
  112. package/dist/dev/test/classinstantiations.test.js.map +1 -0
  113. package/dist/dev/test/constructordeclaration.test.js +86 -0
  114. package/dist/dev/test/constructordeclaration.test.js.map +1 -0
  115. package/dist/dev/test/dataclassdeclarations.test.js +1068 -0
  116. package/dist/dev/test/dataclassdeclarations.test.js.map +1 -0
  117. package/dist/dev/test/dundermethoddeclaration.test.js +93 -0
  118. package/dist/dev/test/dundermethoddeclaration.test.js.map +1 -0
  119. package/dist/dev/test/enums.test.js +263 -0
  120. package/dist/dev/test/enums.test.js.map +1 -0
  121. package/dist/dev/test/externals.test.js +307 -0
  122. package/dist/dev/test/externals.test.js.map +1 -0
  123. package/dist/dev/test/factories.test.js +122 -0
  124. package/dist/dev/test/factories.test.js.map +1 -0
  125. package/dist/dev/test/functioncallexpressions.test.js +257 -0
  126. package/dist/dev/test/functioncallexpressions.test.js.map +1 -0
  127. package/dist/dev/test/functiondeclaration.test.js +817 -0
  128. package/dist/dev/test/functiondeclaration.test.js.map +1 -0
  129. package/dist/dev/test/imports.test.js +372 -0
  130. package/dist/dev/test/imports.test.js.map +1 -0
  131. package/dist/dev/test/memberexpressions.test.js +1668 -0
  132. package/dist/dev/test/memberexpressions.test.js.map +1 -0
  133. package/dist/dev/test/methoddeclaration.test.js +344 -0
  134. package/dist/dev/test/methoddeclaration.test.js.map +1 -0
  135. package/dist/dev/test/namepolicies.test.js +154 -0
  136. package/dist/dev/test/namepolicies.test.js.map +1 -0
  137. package/dist/dev/test/propertydeclaration.test.js +354 -0
  138. package/dist/dev/test/propertydeclaration.test.js.map +1 -0
  139. package/dist/dev/test/pydocs.test.js +1675 -0
  140. package/dist/dev/test/pydocs.test.js.map +1 -0
  141. package/dist/dev/test/references.test.js +66 -0
  142. package/dist/dev/test/references.test.js.map +1 -0
  143. package/dist/dev/test/sourcefiles.test.js +1802 -0
  144. package/dist/dev/test/sourcefiles.test.js.map +1 -0
  145. package/dist/dev/test/staticmethoddeclaration.test.js +85 -0
  146. package/dist/dev/test/staticmethoddeclaration.test.js.map +1 -0
  147. package/dist/dev/test/type-checking-imports.test.js +617 -0
  148. package/dist/dev/test/type-checking-imports.test.js.map +1 -0
  149. package/dist/dev/test/typereference.test.js +79 -0
  150. package/dist/dev/test/typereference.test.js.map +1 -0
  151. package/dist/dev/test/uniontypeexpression.test.js +307 -0
  152. package/dist/dev/test/uniontypeexpression.test.js.map +1 -0
  153. package/dist/dev/test/utils.js +100 -0
  154. package/dist/dev/test/utils.js.map +1 -0
  155. package/dist/dev/test/values.test.js +182 -0
  156. package/dist/dev/test/values.test.js.map +1 -0
  157. package/dist/dev/test/variables.test.js +363 -0
  158. package/dist/dev/test/variables.test.js.map +1 -0
  159. package/dist/src/components/CallSignature.d.ts.map +1 -1
  160. package/dist/src/components/CallSignature.js +12 -3
  161. package/dist/src/components/CallSignature.js.map +1 -1
  162. package/dist/src/components/ImportStatement.d.ts +12 -0
  163. package/dist/src/components/ImportStatement.d.ts.map +1 -1
  164. package/dist/src/components/ImportStatement.js +47 -5
  165. package/dist/src/components/ImportStatement.js.map +1 -1
  166. package/dist/src/components/MemberExpression.d.ts +1 -1
  167. package/dist/src/components/MemberExpression.d.ts.map +1 -1
  168. package/dist/src/components/MemberExpression.js +98 -180
  169. package/dist/src/components/MemberExpression.js.map +1 -1
  170. package/dist/src/components/Reference.d.ts.map +1 -1
  171. package/dist/src/components/Reference.js +5 -1
  172. package/dist/src/components/Reference.js.map +1 -1
  173. package/dist/src/components/SourceFile.d.ts +1 -1
  174. package/dist/src/components/SourceFile.d.ts.map +1 -1
  175. package/dist/src/components/SourceFile.js +46 -7
  176. package/dist/src/components/SourceFile.js.map +1 -1
  177. package/dist/src/components/TypeRefContext.d.ts +26 -0
  178. package/dist/src/components/TypeRefContext.d.ts.map +1 -0
  179. package/dist/src/components/TypeRefContext.js +29 -0
  180. package/dist/src/components/TypeRefContext.js.map +1 -0
  181. package/dist/src/components/TypeReference.d.ts +5 -0
  182. package/dist/src/components/TypeReference.d.ts.map +1 -1
  183. package/dist/src/components/TypeReference.js +19 -9
  184. package/dist/src/components/TypeReference.js.map +1 -1
  185. package/dist/src/components/VariableDeclaration.d.ts.map +1 -1
  186. package/dist/src/components/VariableDeclaration.js +7 -2
  187. package/dist/src/components/VariableDeclaration.js.map +1 -1
  188. package/dist/src/components/index.d.ts +1 -1
  189. package/dist/src/components/index.d.ts.map +1 -1
  190. package/dist/src/components/index.js +1 -1
  191. package/dist/src/components/index.js.map +1 -1
  192. package/dist/src/context/index.d.ts +2 -0
  193. package/dist/src/context/index.d.ts.map +1 -0
  194. package/dist/src/context/index.js +2 -0
  195. package/dist/src/context/index.js.map +1 -0
  196. package/dist/src/context/type-ref-context.d.ts +13 -0
  197. package/dist/src/context/type-ref-context.d.ts.map +1 -0
  198. package/dist/src/context/type-ref-context.js +17 -0
  199. package/dist/src/context/type-ref-context.js.map +1 -0
  200. package/dist/src/symbols/python-module-scope.d.ts +13 -1
  201. package/dist/src/symbols/python-module-scope.d.ts.map +1 -1
  202. package/dist/src/symbols/python-module-scope.js +36 -2
  203. package/dist/src/symbols/python-module-scope.js.map +1 -1
  204. package/dist/src/symbols/python-output-symbol.d.ts +11 -0
  205. package/dist/src/symbols/python-output-symbol.d.ts.map +1 -1
  206. package/dist/src/symbols/python-output-symbol.js +26 -2
  207. package/dist/src/symbols/python-output-symbol.js.map +1 -1
  208. package/dist/src/symbols/reference.d.ts +8 -1
  209. package/dist/src/symbols/reference.d.ts.map +1 -1
  210. package/dist/src/symbols/reference.js +4 -2
  211. package/dist/src/symbols/reference.js.map +1 -1
  212. package/dist/test/dataclassdeclarations.test.js +5 -2
  213. package/dist/test/dataclassdeclarations.test.js.map +1 -1
  214. package/dist/test/externals.test.js +8 -2
  215. package/dist/test/externals.test.js.map +1 -1
  216. package/dist/test/functiondeclaration.test.js +6 -3
  217. package/dist/test/functiondeclaration.test.js.map +1 -1
  218. package/dist/test/imports.test.js +3 -3
  219. package/dist/test/imports.test.js.map +1 -1
  220. package/dist/test/references.test.js +1 -1
  221. package/dist/test/references.test.js.map +1 -1
  222. package/dist/test/sourcefiles.test.js +26 -26
  223. package/dist/test/sourcefiles.test.js.map +1 -1
  224. package/dist/test/type-checking-imports.test.d.ts +2 -0
  225. package/dist/test/type-checking-imports.test.d.ts.map +1 -0
  226. package/dist/test/type-checking-imports.test.js +437 -0
  227. package/dist/test/type-checking-imports.test.js.map +1 -0
  228. package/dist/test/uniontypeexpression.test.js +4 -1
  229. package/dist/test/uniontypeexpression.test.js.map +1 -1
  230. package/dist/test/variables.test.js +4 -1
  231. package/dist/test/variables.test.js.map +1 -1
  232. package/dist/tsconfig.tsbuildinfo +1 -1
  233. package/package.json +6 -4
  234. package/src/components/CallSignature.tsx +6 -2
  235. package/src/components/ImportStatement.tsx +52 -5
  236. package/src/components/MemberExpression.tsx +174 -298
  237. package/src/components/Reference.tsx +3 -1
  238. package/src/components/SourceFile.tsx +44 -8
  239. package/src/components/TypeRefContext.tsx +36 -0
  240. package/src/components/TypeReference.tsx +15 -7
  241. package/src/components/VariableDeclaration.tsx +5 -1
  242. package/src/components/index.ts +1 -1
  243. package/src/context/index.ts +1 -0
  244. package/src/context/type-ref-context.tsx +16 -0
  245. package/src/symbols/python-module-scope.ts +55 -2
  246. package/src/symbols/python-output-symbol.ts +32 -1
  247. package/src/symbols/reference.tsx +10 -0
  248. package/temp/api.json +443 -338
  249. package/test/dataclassdeclarations.test.tsx +8 -2
  250. package/test/externals.test.tsx +8 -2
  251. package/test/functiondeclaration.test.tsx +6 -3
  252. package/test/imports.test.tsx +6 -6
  253. package/test/references.test.tsx +1 -1
  254. package/test/sourcefiles.test.tsx +13 -13
  255. package/test/type-checking-imports.test.tsx +363 -0
  256. package/test/uniontypeexpression.test.tsx +4 -1
  257. package/test/variables.test.tsx +4 -1
  258. package/vitest.config.ts +8 -0
@@ -0,0 +1,257 @@
1
+ import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
+ import { refkey } from "@alloy-js/core";
3
+ import { d } from "@alloy-js/core/testing";
4
+ import { describe, expect, it } from "vitest";
5
+ import * as py from "../src/index.js";
6
+ import { toSourceText } from "./utils.js";
7
+ describe("FunctionCallExpression", () => {
8
+ it("renders", () => {
9
+ const result = toSourceText([_$createComponent(py.FunctionCallExpression, {
10
+ target: "foo"
11
+ }, {
12
+ fileName: import.meta.url,
13
+ lineNumber: 9,
14
+ columnNumber: 34
15
+ })]);
16
+ expect(result).toRenderTo(d`
17
+ foo()
18
+ `);
19
+ });
20
+ it("renders with args", () => {
21
+ const result = toSourceText([_$createComponent(py.FunctionCallExpression, {
22
+ target: "foo",
23
+ args: ["a", "b"]
24
+ }, {
25
+ fileName: import.meta.url,
26
+ lineNumber: 16,
27
+ columnNumber: 7
28
+ })]);
29
+ expect(result).toRenderTo(d`
30
+ foo(a, b)
31
+ `);
32
+ });
33
+ it("function call with variables", () => {
34
+ // Creating the reference separately so the naming policy doesn't interfere
35
+ const methodRef = refkey();
36
+ const result = toSourceText([_$createComponent(py.StatementList, {
37
+ get children() {
38
+ return [_$createComponent(py.FunctionDeclaration, {
39
+ name: "runFunc",
40
+ refkey: methodRef
41
+ }, {
42
+ fileName: import.meta.url,
43
+ lineNumber: 28,
44
+ columnNumber: 9
45
+ }), _$createComponent(py.FunctionCallExpression, {
46
+ target: methodRef,
47
+ get args() {
48
+ return [_$createComponent(py.Atom, {
49
+ jsValue: "A name"
50
+ }, {
51
+ fileName: import.meta.url,
52
+ lineNumber: 32,
53
+ columnNumber: 13
54
+ }), _$createComponent(py.Atom, {
55
+ jsValue: 42
56
+ }, {
57
+ fileName: import.meta.url,
58
+ lineNumber: 33,
59
+ columnNumber: 13
60
+ }), _$createComponent(py.Atom, {
61
+ jsValue: true
62
+ }, {
63
+ fileName: import.meta.url,
64
+ lineNumber: 34,
65
+ columnNumber: 13
66
+ })];
67
+ }
68
+ }, {
69
+ fileName: import.meta.url,
70
+ lineNumber: 29,
71
+ columnNumber: 9
72
+ })];
73
+ }
74
+ }, {
75
+ fileName: import.meta.url,
76
+ lineNumber: 27,
77
+ columnNumber: 7
78
+ })]);
79
+ const expected = d`
80
+ def run_func():
81
+ pass
82
+
83
+ run_func("A name", 42, True)
84
+ `;
85
+ expect(result).toRenderTo(expected);
86
+ });
87
+ it("function call with variables and assignment", () => {
88
+ // Creating the reference separately so the naming policy doesn't interfere
89
+ const methodRef = refkey();
90
+ const result = toSourceText([_$createComponent(py.StatementList, {
91
+ get children() {
92
+ return [_$createComponent(py.FunctionDeclaration, {
93
+ name: "runFunc",
94
+ returnType: "str",
95
+ refkey: methodRef,
96
+ parameters: [{
97
+ name: "name",
98
+ type: "str"
99
+ }, {
100
+ name: "number",
101
+ type: "int"
102
+ }, {
103
+ name: "flag",
104
+ type: "bool"
105
+ }]
106
+ }, {
107
+ fileName: import.meta.url,
108
+ lineNumber: 53,
109
+ columnNumber: 9
110
+ }), _$createComponent(py.VariableDeclaration, {
111
+ name: "result",
112
+ type: "str",
113
+ get initializer() {
114
+ return _$createComponent(py.FunctionCallExpression, {
115
+ target: methodRef,
116
+ get args() {
117
+ return [_$createComponent(py.Atom, {
118
+ jsValue: "A name"
119
+ }, {
120
+ fileName: import.meta.url,
121
+ lineNumber: 70,
122
+ columnNumber: 17
123
+ }), _$createComponent(py.Atom, {
124
+ jsValue: 42
125
+ }, {
126
+ fileName: import.meta.url,
127
+ lineNumber: 71,
128
+ columnNumber: 17
129
+ }), _$createComponent(py.Atom, {
130
+ jsValue: true
131
+ }, {
132
+ fileName: import.meta.url,
133
+ lineNumber: 72,
134
+ columnNumber: 17
135
+ })];
136
+ }
137
+ }, {
138
+ fileName: import.meta.url,
139
+ lineNumber: 67,
140
+ columnNumber: 13
141
+ });
142
+ }
143
+ }, {
144
+ fileName: import.meta.url,
145
+ lineNumber: 63,
146
+ columnNumber: 9
147
+ })];
148
+ }
149
+ }, {
150
+ fileName: import.meta.url,
151
+ lineNumber: 52,
152
+ columnNumber: 7
153
+ })]);
154
+ const expected = d`
155
+ def run_func(name: str, number: int, flag: bool) -> str:
156
+ pass
157
+
158
+ result: str = run_func("A name", 42, True)
159
+ `;
160
+ expect(result).toRenderTo(expected);
161
+ });
162
+ it("Method call without a reference and with call statement vars", () => {
163
+ const result = toSourceText([_$createComponent(py.StatementList, {
164
+ get children() {
165
+ return _$createComponent(py.FunctionCallExpression, {
166
+ target: "example_method",
167
+ get args() {
168
+ return [_$createComponent(py.VariableDeclaration, {
169
+ name: "name",
170
+ initializer: "A name",
171
+ callStatementVar: true
172
+ }, {
173
+ fileName: import.meta.url,
174
+ lineNumber: 94,
175
+ columnNumber: 13
176
+ }), _$createComponent(py.VariableDeclaration, {
177
+ name: "number",
178
+ initializer: 42,
179
+ callStatementVar: true
180
+ }, {
181
+ fileName: import.meta.url,
182
+ lineNumber: 99,
183
+ columnNumber: 13
184
+ }), _$createComponent(py.VariableDeclaration, {
185
+ name: "flag",
186
+ initializer: true,
187
+ callStatementVar: true
188
+ }, {
189
+ fileName: import.meta.url,
190
+ lineNumber: 104,
191
+ columnNumber: 13
192
+ })];
193
+ }
194
+ }, {
195
+ fileName: import.meta.url,
196
+ lineNumber: 91,
197
+ columnNumber: 9
198
+ });
199
+ }
200
+ }, {
201
+ fileName: import.meta.url,
202
+ lineNumber: 90,
203
+ columnNumber: 7
204
+ })]);
205
+ const expected = d`
206
+ example_method(name="A name", number=42, flag=True)
207
+ `;
208
+ expect(result).toRenderTo(expected);
209
+ });
210
+ it("Method call without a reference mixing unnamed and named vars", () => {
211
+ const result = toSourceText([_$createComponent(py.StatementList, {
212
+ get children() {
213
+ return _$createComponent(py.FunctionCallExpression, {
214
+ target: "example_method",
215
+ get args() {
216
+ return [_$createComponent(py.Atom, {
217
+ jsValue: "A name"
218
+ }, {
219
+ fileName: import.meta.url,
220
+ lineNumber: 125,
221
+ columnNumber: 13
222
+ }), _$createComponent(py.VariableDeclaration, {
223
+ name: "number",
224
+ initializer: 42,
225
+ callStatementVar: true
226
+ }, {
227
+ fileName: import.meta.url,
228
+ lineNumber: 126,
229
+ columnNumber: 13
230
+ }), _$createComponent(py.VariableDeclaration, {
231
+ name: "flag",
232
+ initializer: true,
233
+ callStatementVar: true
234
+ }, {
235
+ fileName: import.meta.url,
236
+ lineNumber: 131,
237
+ columnNumber: 13
238
+ })];
239
+ }
240
+ }, {
241
+ fileName: import.meta.url,
242
+ lineNumber: 122,
243
+ columnNumber: 9
244
+ });
245
+ }
246
+ }, {
247
+ fileName: import.meta.url,
248
+ lineNumber: 121,
249
+ columnNumber: 7
250
+ })]);
251
+ const expected = d`
252
+ example_method("A name", number=42, flag=True)
253
+ `;
254
+ expect(result).toRenderTo(expected);
255
+ });
256
+ });
257
+ //# sourceMappingURL=functioncallexpressions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["refkey","d","describe","expect","it","py","toSourceText","result","_$createComponent","FunctionCallExpression","target","fileName","import","meta","url","lineNumber","columnNumber","toRenderTo","args","methodRef","StatementList","children","FunctionDeclaration","name","Atom","jsValue","expected","returnType","parameters","type","VariableDeclaration","initializer","callStatementVar"],"sources":["../../../test/functioncallexpressions.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}