@alloy-js/python 0.5.0-dev.1 → 0.5.0-dev.2

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 (166) hide show
  1. package/dist/dev/src/components/SourceFile.js +44 -32
  2. package/dist/dev/src/components/SourceFile.js.map +1 -1
  3. package/dist/dev/test/callsignatures.test.js +471 -297
  4. package/dist/dev/test/callsignatures.test.js.map +1 -1
  5. package/dist/dev/test/class-method-declaration.test.js +21 -10
  6. package/dist/dev/test/class-method-declaration.test.js.map +1 -1
  7. package/dist/dev/test/classdeclarations.test.js +459 -393
  8. package/dist/dev/test/classdeclarations.test.js.map +1 -1
  9. package/dist/dev/test/classinstantiations.test.js +201 -168
  10. package/dist/dev/test/classinstantiations.test.js.map +1 -1
  11. package/dist/dev/test/constructordeclaration.test.js +22 -11
  12. package/dist/dev/test/constructordeclaration.test.js.map +1 -1
  13. package/dist/dev/test/dataclassdeclarations.test.js +322 -368
  14. package/dist/dev/test/dataclassdeclarations.test.js.map +1 -1
  15. package/dist/dev/test/decoratorlist.test.js +96 -49
  16. package/dist/dev/test/decoratorlist.test.js.map +1 -1
  17. package/dist/dev/test/dundermethoddeclaration.test.js +22 -11
  18. package/dist/dev/test/dundermethoddeclaration.test.js.map +1 -1
  19. package/dist/dev/test/enums.test.js +218 -184
  20. package/dist/dev/test/enums.test.js.map +1 -1
  21. package/dist/dev/test/externals.test.js +57 -45
  22. package/dist/dev/test/externals.test.js.map +1 -1
  23. package/dist/dev/test/factories.test.js +124 -50
  24. package/dist/dev/test/factories.test.js.map +1 -1
  25. package/dist/dev/test/functioncallexpressions.test.js +199 -164
  26. package/dist/dev/test/functioncallexpressions.test.js.map +1 -1
  27. package/dist/dev/test/functiondeclaration.test.js +439 -272
  28. package/dist/dev/test/functiondeclaration.test.js.map +1 -1
  29. package/dist/dev/test/imports.test.js +273 -221
  30. package/dist/dev/test/imports.test.js.map +1 -1
  31. package/dist/dev/test/memberexpressions.test.js +1237 -972
  32. package/dist/dev/test/memberexpressions.test.js.map +1 -1
  33. package/dist/dev/test/methoddeclaration.test.js +142 -78
  34. package/dist/dev/test/methoddeclaration.test.js.map +1 -1
  35. package/dist/dev/test/namepolicies.test.js +130 -94
  36. package/dist/dev/test/namepolicies.test.js.map +1 -1
  37. package/dist/dev/test/propertydeclaration.test.js +88 -59
  38. package/dist/dev/test/propertydeclaration.test.js.map +1 -1
  39. package/dist/dev/test/pydanticclassdeclarations.test.js +299 -347
  40. package/dist/dev/test/pydanticclassdeclarations.test.js.map +1 -1
  41. package/dist/dev/test/pydocs.test.js +888 -715
  42. package/dist/dev/test/pydocs.test.js.map +1 -1
  43. package/dist/dev/test/references.test.js +42 -35
  44. package/dist/dev/test/references.test.js.map +1 -1
  45. package/dist/dev/test/sourcefiles.test.js +1109 -841
  46. package/dist/dev/test/sourcefiles.test.js.map +1 -1
  47. package/dist/dev/test/staticmethoddeclaration.test.js +21 -10
  48. package/dist/dev/test/staticmethoddeclaration.test.js.map +1 -1
  49. package/dist/dev/test/type-checking-imports.test.js +408 -359
  50. package/dist/dev/test/type-checking-imports.test.js.map +1 -1
  51. package/dist/dev/test/typereference.test.js +55 -40
  52. package/dist/dev/test/typereference.test.js.map +1 -1
  53. package/dist/dev/test/uniontypeexpression.test.js +222 -146
  54. package/dist/dev/test/uniontypeexpression.test.js.map +1 -1
  55. package/dist/dev/test/utils.js +39 -77
  56. package/dist/dev/test/utils.js.map +1 -1
  57. package/dist/dev/test/values.test.js +237 -101
  58. package/dist/dev/test/values.test.js.map +1 -1
  59. package/dist/dev/test/variables.test.js +321 -203
  60. package/dist/dev/test/variables.test.js.map +1 -1
  61. package/dist/dev/test/vitest.setup.js +2 -0
  62. package/dist/dev/test/vitest.setup.js.map +1 -0
  63. package/dist/src/components/SourceFile.d.ts +2 -2
  64. package/dist/src/components/SourceFile.d.ts.map +1 -1
  65. package/dist/src/components/SourceFile.js +12 -0
  66. package/dist/src/components/SourceFile.js.map +1 -1
  67. package/dist/test/callsignatures.test.js +346 -272
  68. package/dist/test/callsignatures.test.js.map +1 -1
  69. package/dist/test/class-method-declaration.test.js +7 -4
  70. package/dist/test/class-method-declaration.test.js.map +1 -1
  71. package/dist/test/classdeclarations.test.js +302 -288
  72. package/dist/test/classdeclarations.test.js.map +1 -1
  73. package/dist/test/classinstantiations.test.js +112 -103
  74. package/dist/test/classinstantiations.test.js.map +1 -1
  75. package/dist/test/constructordeclaration.test.js +7 -4
  76. package/dist/test/constructordeclaration.test.js.map +1 -1
  77. package/dist/test/dataclassdeclarations.test.js +134 -184
  78. package/dist/test/dataclassdeclarations.test.js.map +1 -1
  79. package/dist/test/decoratorlist.test.js +59 -36
  80. package/dist/test/decoratorlist.test.js.map +1 -1
  81. package/dist/test/dundermethoddeclaration.test.js +7 -4
  82. package/dist/test/dundermethoddeclaration.test.js.map +1 -1
  83. package/dist/test/enums.test.js +161 -159
  84. package/dist/test/enums.test.js.map +1 -1
  85. package/dist/test/externals.test.js +24 -24
  86. package/dist/test/externals.test.js.map +1 -1
  87. package/dist/test/factories.test.js +75 -33
  88. package/dist/test/factories.test.js.map +1 -1
  89. package/dist/test/functioncallexpressions.test.js +117 -106
  90. package/dist/test/functioncallexpressions.test.js.map +1 -1
  91. package/dist/test/functiondeclaration.test.js +247 -180
  92. package/dist/test/functiondeclaration.test.js.map +1 -1
  93. package/dist/test/imports.test.js +171 -143
  94. package/dist/test/imports.test.js.map +1 -1
  95. package/dist/test/memberexpressions.test.js +582 -453
  96. package/dist/test/memberexpressions.test.js.map +1 -1
  97. package/dist/test/methoddeclaration.test.js +66 -46
  98. package/dist/test/methoddeclaration.test.js.map +1 -1
  99. package/dist/test/namepolicies.test.js +90 -78
  100. package/dist/test/namepolicies.test.js.map +1 -1
  101. package/dist/test/propertydeclaration.test.js +25 -20
  102. package/dist/test/propertydeclaration.test.js.map +1 -1
  103. package/dist/test/pydanticclassdeclarations.test.js +134 -190
  104. package/dist/test/pydanticclassdeclarations.test.js.map +1 -1
  105. package/dist/test/pydocs.test.js +573 -532
  106. package/dist/test/pydocs.test.js.map +1 -1
  107. package/dist/test/references.test.js +31 -28
  108. package/dist/test/references.test.js.map +1 -1
  109. package/dist/test/sourcefiles.test.js +700 -580
  110. package/dist/test/sourcefiles.test.js.map +1 -1
  111. package/dist/test/staticmethoddeclaration.test.js +7 -4
  112. package/dist/test/staticmethoddeclaration.test.js.map +1 -1
  113. package/dist/test/type-checking-imports.test.js +297 -284
  114. package/dist/test/type-checking-imports.test.js.map +1 -1
  115. package/dist/test/typereference.test.js +29 -22
  116. package/dist/test/typereference.test.js.map +1 -1
  117. package/dist/test/uniontypeexpression.test.js +124 -88
  118. package/dist/test/uniontypeexpression.test.js.map +1 -1
  119. package/dist/test/utils.d.ts +10 -17
  120. package/dist/test/utils.d.ts.map +1 -1
  121. package/dist/test/utils.js +32 -74
  122. package/dist/test/utils.js.map +1 -1
  123. package/dist/test/values.test.js +135 -67
  124. package/dist/test/values.test.js.map +1 -1
  125. package/dist/test/variables.test.js +201 -151
  126. package/dist/test/variables.test.js.map +1 -1
  127. package/dist/test/vitest.setup.d.ts +2 -0
  128. package/dist/test/vitest.setup.d.ts.map +1 -0
  129. package/dist/test/vitest.setup.js +2 -0
  130. package/dist/test/vitest.setup.js.map +1 -0
  131. package/dist/tsconfig.tsbuildinfo +1 -1
  132. package/docs/api/components/SourceFile.md +20 -8
  133. package/package.json +2 -2
  134. package/src/components/SourceFile.tsx +6 -1
  135. package/temp/api.json +16 -2
  136. package/test/callsignatures.test.tsx +309 -283
  137. package/test/class-method-declaration.test.tsx +3 -4
  138. package/test/classdeclarations.test.tsx +263 -248
  139. package/test/classinstantiations.test.tsx +115 -109
  140. package/test/constructordeclaration.test.tsx +9 -6
  141. package/test/dataclassdeclarations.test.tsx +243 -361
  142. package/test/decoratorlist.test.tsx +78 -59
  143. package/test/dundermethoddeclaration.test.tsx +3 -4
  144. package/test/enums.test.tsx +65 -81
  145. package/test/externals.test.tsx +25 -25
  146. package/test/factories.test.tsx +64 -22
  147. package/test/functioncallexpressions.test.tsx +123 -109
  148. package/test/functiondeclaration.test.tsx +209 -148
  149. package/test/imports.test.tsx +119 -91
  150. package/test/memberexpressions.test.tsx +265 -207
  151. package/test/methoddeclaration.test.tsx +84 -63
  152. package/test/namepolicies.test.tsx +69 -69
  153. package/test/propertydeclaration.test.tsx +7 -8
  154. package/test/pydanticclassdeclarations.test.tsx +355 -487
  155. package/test/pydocs.test.tsx +531 -579
  156. package/test/references.test.tsx +24 -23
  157. package/test/sourcefiles.test.tsx +527 -492
  158. package/test/staticmethoddeclaration.test.tsx +3 -4
  159. package/test/type-checking-imports.test.tsx +206 -218
  160. package/test/typereference.test.tsx +15 -12
  161. package/test/uniontypeexpression.test.tsx +74 -61
  162. package/test/utils.tsx +26 -110
  163. package/test/values.test.tsx +82 -32
  164. package/test/variables.test.tsx +162 -142
  165. package/test/vitest.setup.ts +1 -0
  166. package/vitest.config.ts +3 -0
@@ -1,36 +1,59 @@
1
1
  import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
2
  import { refkey } from "@alloy-js/core";
3
- import { d } from "@alloy-js/core/testing";
4
3
  import { describe, expect, it } from "vitest";
5
4
  import * as py from "../src/index.js";
6
- import { assertFileContents, toSourceText, toSourceTextMultiple } from "./utils.js";
5
+ import { TestOutput, TestOutputDirectory } from "./utils.js";
7
6
  describe("UnionTypeExpression", () => {
8
7
  it("renders a Python union expression - 1 item", () => {
9
- expect(toSourceText([_$createComponent(py.UnionTypeExpression, {
10
- children: ["int"]
8
+ expect(_$createComponent(TestOutput, {
9
+ get children() {
10
+ return _$createComponent(py.UnionTypeExpression, {
11
+ children: ["int"]
12
+ }, {
13
+ fileName: import.meta.url,
14
+ lineNumber: 10,
15
+ columnNumber: 9
16
+ });
17
+ }
11
18
  }, {
12
19
  fileName: import.meta.url,
13
- lineNumber: 14,
14
- columnNumber: 21
15
- })])).toRenderTo("int");
20
+ lineNumber: 9,
21
+ columnNumber: 7
22
+ })).toRenderTo("int");
16
23
  });
17
24
  it("renders a Python union expression - 2 items", () => {
18
- expect(toSourceText([_$createComponent(py.UnionTypeExpression, {
19
- children: ["int", "str"]
25
+ expect(_$createComponent(TestOutput, {
26
+ get children() {
27
+ return _$createComponent(py.UnionTypeExpression, {
28
+ children: ["int", "str"]
29
+ }, {
30
+ fileName: import.meta.url,
31
+ lineNumber: 18,
32
+ columnNumber: 9
33
+ });
34
+ }
20
35
  }, {
21
36
  fileName: import.meta.url,
22
- lineNumber: 19,
23
- columnNumber: 21
24
- })])).toRenderTo("int | str");
37
+ lineNumber: 17,
38
+ columnNumber: 7
39
+ })).toRenderTo("int | str");
25
40
  });
26
41
  it("renders a Python union expression - N items", () => {
27
- expect(toSourceText([_$createComponent(py.UnionTypeExpression, {
28
- children: ["int", "str", "float", "bool", "list", "dict", "set", "tuple", "frozenset", "bytes", "bytearray", "memoryview", "complex"]
42
+ expect(_$createComponent(TestOutput, {
43
+ get children() {
44
+ return _$createComponent(py.UnionTypeExpression, {
45
+ children: ["int", "str", "float", "bool", "list", "dict", "set", "tuple", "frozenset", "bytes", "bytearray", "memoryview", "complex"]
46
+ }, {
47
+ fileName: import.meta.url,
48
+ lineNumber: 26,
49
+ columnNumber: 9
50
+ });
51
+ }
29
52
  }, {
30
53
  fileName: import.meta.url,
31
54
  lineNumber: 25,
32
- columnNumber: 9
33
- })])).toRenderTo(d`
55
+ columnNumber: 7
56
+ })).toRenderTo(`
34
57
  (
35
58
  int
36
59
  | str
@@ -48,94 +71,126 @@ describe("UnionTypeExpression", () => {
48
71
  )`);
49
72
  });
50
73
  it("renders a Python union expression - 2 items again", () => {
51
- expect(toSourceText([_$createComponent(py.UnionTypeExpression, {
52
- children: ["int", "str"]
74
+ expect(_$createComponent(TestOutput, {
75
+ get children() {
76
+ return _$createComponent(py.UnionTypeExpression, {
77
+ children: ["int", "str"]
78
+ }, {
79
+ fileName: import.meta.url,
80
+ lineNumber: 67,
81
+ columnNumber: 9
82
+ });
83
+ }
53
84
  }, {
54
85
  fileName: import.meta.url,
55
- lineNumber: 62,
56
- columnNumber: 21
57
- })])).toRenderTo("int | str");
86
+ lineNumber: 66,
87
+ columnNumber: 7
88
+ })).toRenderTo("int | str");
58
89
  });
59
90
  it("renders a Python union expression - 2 items with None", () => {
60
- expect(toSourceText([_$createComponent(py.UnionTypeExpression, {
61
- children: ["int", "str", "None"]
91
+ expect(_$createComponent(TestOutput, {
92
+ get children() {
93
+ return _$createComponent(py.UnionTypeExpression, {
94
+ children: ["int", "str", "None"]
95
+ }, {
96
+ fileName: import.meta.url,
97
+ lineNumber: 75,
98
+ columnNumber: 9
99
+ });
100
+ }
62
101
  }, {
63
102
  fileName: import.meta.url,
64
- lineNumber: 68,
65
- columnNumber: 9
66
- })])).toRenderTo("int | str | None");
103
+ lineNumber: 74,
104
+ columnNumber: 7
105
+ })).toRenderTo("int | str | None");
67
106
  });
68
107
  it("renders a Python union with generic types", () => {
69
- expect(toSourceText([_$createComponent(py.UnionTypeExpression, {
108
+ expect(_$createComponent(TestOutput, {
70
109
  get children() {
71
- return [_$createComponent(py.TypeReference, {
72
- name: "list",
73
- typeArgs: ["int"]
74
- }, {
75
- fileName: import.meta.url,
76
- lineNumber: 78,
77
- columnNumber: 13
78
- }), _$createComponent(py.TypeReference, {
79
- name: "dict",
80
- typeArgs: ["str", "int"]
110
+ return _$createComponent(py.UnionTypeExpression, {
111
+ get children() {
112
+ return [_$createComponent(py.TypeReference, {
113
+ name: "list",
114
+ typeArgs: ["int"]
115
+ }, {
116
+ fileName: import.meta.url,
117
+ lineNumber: 85,
118
+ columnNumber: 13
119
+ }), _$createComponent(py.TypeReference, {
120
+ name: "dict",
121
+ typeArgs: ["str", "int"]
122
+ }, {
123
+ fileName: import.meta.url,
124
+ lineNumber: 86,
125
+ columnNumber: 13
126
+ })];
127
+ }
81
128
  }, {
82
129
  fileName: import.meta.url,
83
- lineNumber: 79,
84
- columnNumber: 13
85
- })];
130
+ lineNumber: 83,
131
+ columnNumber: 9
132
+ });
86
133
  }
87
134
  }, {
88
135
  fileName: import.meta.url,
89
- lineNumber: 76,
90
- columnNumber: 9
91
- })])).toRenderTo("list[int] | dict[str, int]");
136
+ lineNumber: 82,
137
+ columnNumber: 7
138
+ })).toRenderTo("list[int] | dict[str, int]");
92
139
  });
93
140
  it("renders a Python type expression with references", () => {
94
141
  const classRefkey = refkey();
95
142
  const otherClassRefkey = refkey();
96
- expect(toSourceText([_$createComponent(py.StatementList, {
143
+ expect(_$createComponent(TestOutput, {
97
144
  get children() {
98
- return [_$createComponent(py.ClassDeclaration, {
99
- name: "Bar",
100
- refkey: classRefkey
101
- }, {
102
- fileName: import.meta.url,
103
- lineNumber: 93,
104
- columnNumber: 11
105
- }), _$createComponent(py.ClassDeclaration, {
106
- name: "Foo",
107
- refkey: otherClassRefkey
108
- }, {
109
- fileName: import.meta.url,
110
- lineNumber: 97,
111
- columnNumber: 11
112
- }), _$createComponent(py.UnionTypeExpression, {
145
+ return _$createComponent(py.StatementList, {
113
146
  get children() {
114
- return [_$createComponent(py.Reference, {
147
+ return [_$createComponent(py.ClassDeclaration, {
148
+ name: "Bar",
115
149
  refkey: classRefkey
116
150
  }, {
117
151
  fileName: import.meta.url,
118
- lineNumber: 103,
119
- columnNumber: 15
120
- }), _$createComponent(py.Reference, {
152
+ lineNumber: 100,
153
+ columnNumber: 11
154
+ }), _$createComponent(py.ClassDeclaration, {
155
+ name: "Foo",
121
156
  refkey: otherClassRefkey
122
157
  }, {
123
158
  fileName: import.meta.url,
124
159
  lineNumber: 104,
125
- columnNumber: 15
160
+ columnNumber: 11
161
+ }), _$createComponent(py.UnionTypeExpression, {
162
+ get children() {
163
+ return [_$createComponent(py.Reference, {
164
+ refkey: classRefkey
165
+ }, {
166
+ fileName: import.meta.url,
167
+ lineNumber: 110,
168
+ columnNumber: 15
169
+ }), _$createComponent(py.Reference, {
170
+ refkey: otherClassRefkey
171
+ }, {
172
+ fileName: import.meta.url,
173
+ lineNumber: 111,
174
+ columnNumber: 15
175
+ })];
176
+ }
177
+ }, {
178
+ fileName: import.meta.url,
179
+ lineNumber: 108,
180
+ columnNumber: 11
126
181
  })];
127
182
  }
128
183
  }, {
129
184
  fileName: import.meta.url,
130
- lineNumber: 101,
131
- columnNumber: 11
132
- })];
185
+ lineNumber: 99,
186
+ columnNumber: 9
187
+ });
133
188
  }
134
189
  }, {
135
190
  fileName: import.meta.url,
136
- lineNumber: 92,
137
- columnNumber: 9
138
- })])).toRenderTo(d`
191
+ lineNumber: 98,
192
+ columnNumber: 7
193
+ })).toRenderTo(`
139
194
  class Bar:
140
195
  pass
141
196
 
@@ -147,70 +202,77 @@ describe("UnionTypeExpression", () => {
147
202
  });
148
203
  it("emits import for TypeReference with refkey and typeArgs across files", () => {
149
204
  const classRefkey = refkey();
150
- const res = toSourceTextMultiple([_$createComponent(py.SourceFile, {
151
- path: "defs.py",
205
+ expect(_$createComponent(TestOutputDirectory, {
152
206
  get children() {
153
- return _$createComponent(py.ClassDeclaration, {
154
- name: "Bar",
155
- refkey: classRefkey
207
+ return [_$createComponent(py.SourceFile, {
208
+ path: "defs.py",
209
+ get children() {
210
+ return _$createComponent(py.ClassDeclaration, {
211
+ name: "Bar",
212
+ refkey: classRefkey
213
+ }, {
214
+ fileName: import.meta.url,
215
+ lineNumber: 134,
216
+ columnNumber: 11
217
+ });
218
+ }
156
219
  }, {
157
220
  fileName: import.meta.url,
158
- lineNumber: 124,
221
+ lineNumber: 133,
159
222
  columnNumber: 9
160
- });
161
- }
162
- }, {
163
- fileName: import.meta.url,
164
- lineNumber: 123,
165
- columnNumber: 7
166
- }), _$createComponent(py.SourceFile, {
167
- path: "use.py",
168
- get children() {
169
- return _$createComponent(py.StatementList, {
223
+ }), _$createComponent(py.SourceFile, {
224
+ path: "use.py",
170
225
  get children() {
171
- return _$createComponent(py.VariableDeclaration, {
172
- name: "v",
173
- get type() {
174
- return _$createComponent(py.TypeReference, {
175
- refkey: classRefkey,
176
- typeArgs: ["T"]
226
+ return _$createComponent(py.StatementList, {
227
+ get children() {
228
+ return _$createComponent(py.VariableDeclaration, {
229
+ name: "v",
230
+ get type() {
231
+ return _$createComponent(py.TypeReference, {
232
+ refkey: classRefkey,
233
+ typeArgs: ["T"]
234
+ }, {
235
+ fileName: import.meta.url,
236
+ lineNumber: 140,
237
+ columnNumber: 21
238
+ });
239
+ }
177
240
  }, {
178
241
  fileName: import.meta.url,
179
- lineNumber: 130,
180
- columnNumber: 19
242
+ lineNumber: 138,
243
+ columnNumber: 13
181
244
  });
182
245
  }
183
246
  }, {
184
247
  fileName: import.meta.url,
185
- lineNumber: 128,
248
+ lineNumber: 137,
186
249
  columnNumber: 11
187
250
  });
188
251
  }
189
252
  }, {
190
253
  fileName: import.meta.url,
191
- lineNumber: 127,
254
+ lineNumber: 136,
192
255
  columnNumber: 9
193
- });
256
+ })];
194
257
  }
195
258
  }, {
196
259
  fileName: import.meta.url,
197
- lineNumber: 126,
260
+ lineNumber: 132,
198
261
  columnNumber: 7
199
- })]);
200
- assertFileContents(res, {
262
+ })).toRenderTo({
201
263
  "defs.py": `
202
- class Bar:
203
- pass
264
+ class Bar:
265
+ pass
204
266
 
205
- `,
267
+ `,
206
268
  "use.py": `
207
- from typing import TYPE_CHECKING
269
+ from typing import TYPE_CHECKING
208
270
 
209
- if TYPE_CHECKING:
210
- from defs import Bar
271
+ if TYPE_CHECKING:
272
+ from defs import Bar
211
273
 
212
- v: Bar[T] = None
213
- `
274
+ v: Bar[T] = None
275
+ `
214
276
  });
215
277
  });
216
278
  });
@@ -223,36 +285,44 @@ describe("TypeExpression in different scenarios", () => {
223
285
  refkey: classRefkey
224
286
  }, {
225
287
  fileName: import.meta.url,
226
- lineNumber: 158,
288
+ lineNumber: 168,
227
289
  columnNumber: 34
228
290
  })];
229
291
  }
230
292
  }, {
231
293
  fileName: import.meta.url,
232
- lineNumber: 157,
294
+ lineNumber: 167,
233
295
  columnNumber: 7
234
296
  });
235
- expect(toSourceText([_$createComponent(py.ClassDeclaration, {
236
- name: "Foo",
237
- refkey: classRefkey
238
- }, {
239
- fileName: import.meta.url,
240
- lineNumber: 163,
241
- columnNumber: 9
242
- }), _$createComponent(py.FunctionDeclaration, {
243
- name: "fooFunction",
244
- parameters: [{
245
- name: "x",
246
- type: type
247
- }],
248
- args: true,
249
- kwargs: true,
250
- returnType: type
297
+ expect(_$createComponent(TestOutput, {
298
+ get children() {
299
+ return [_$createComponent(py.ClassDeclaration, {
300
+ name: "Foo",
301
+ refkey: classRefkey
302
+ }, {
303
+ fileName: import.meta.url,
304
+ lineNumber: 173,
305
+ columnNumber: 9
306
+ }), _$createComponent(py.FunctionDeclaration, {
307
+ name: "fooFunction",
308
+ parameters: [{
309
+ name: "x",
310
+ type: type
311
+ }],
312
+ args: true,
313
+ kwargs: true,
314
+ returnType: type
315
+ }, {
316
+ fileName: import.meta.url,
317
+ lineNumber: 177,
318
+ columnNumber: 9
319
+ })];
320
+ }
251
321
  }, {
252
322
  fileName: import.meta.url,
253
- lineNumber: 167,
254
- columnNumber: 9
255
- })])).toRenderTo(d`
323
+ lineNumber: 172,
324
+ columnNumber: 7
325
+ })).toRenderTo(`
256
326
  class Foo:
257
327
  pass
258
328
 
@@ -260,7 +330,6 @@ describe("TypeExpression in different scenarios", () => {
260
330
  def foo_function(x: int | str | Foo, *args, **kwargs) -> int | str | Foo:
261
331
  pass
262
332
 
263
-
264
333
  `);
265
334
  });
266
335
  it("renders an UnionTypeExpression as a variable type", () => {
@@ -271,36 +340,43 @@ describe("TypeExpression in different scenarios", () => {
271
340
  refkey: classRefkey
272
341
  }, {
273
342
  fileName: import.meta.url,
274
- lineNumber: 195,
343
+ lineNumber: 207,
275
344
  columnNumber: 34
276
345
  })];
277
346
  }
278
347
  }, {
279
348
  fileName: import.meta.url,
280
- lineNumber: 194,
349
+ lineNumber: 206,
281
350
  columnNumber: 7
282
351
  });
283
- expect(toSourceText([_$createComponent(py.ClassDeclaration, {
284
- name: "Foo",
285
- refkey: classRefkey
286
- }, {
287
- fileName: import.meta.url,
288
- lineNumber: 200,
289
- columnNumber: 9
290
- }), _$createComponent(py.VariableDeclaration, {
291
- name: "fooVariable",
292
- type: type
352
+ expect(_$createComponent(TestOutput, {
353
+ get children() {
354
+ return [_$createComponent(py.ClassDeclaration, {
355
+ name: "Foo",
356
+ refkey: classRefkey
357
+ }, {
358
+ fileName: import.meta.url,
359
+ lineNumber: 212,
360
+ columnNumber: 9
361
+ }), _$createComponent(py.VariableDeclaration, {
362
+ name: "fooVariable",
363
+ type: type
364
+ }, {
365
+ fileName: import.meta.url,
366
+ lineNumber: 216,
367
+ columnNumber: 9
368
+ })];
369
+ }
293
370
  }, {
294
371
  fileName: import.meta.url,
295
- lineNumber: 204,
296
- columnNumber: 9
297
- })])).toRenderTo(d`
372
+ lineNumber: 211,
373
+ columnNumber: 7
374
+ })).toRenderTo(`
298
375
  class Foo:
299
376
  pass
300
377
 
301
378
 
302
379
  foo_variable: int | str | Foo = None
303
-
304
380
  `);
305
381
  });
306
382
  });
@@ -1 +1 @@
1
- {"version":3,"names":["refkey","d","describe","expect","it","py","assertFileContents","toSourceText","toSourceTextMultiple","_$createComponent","UnionTypeExpression","children","fileName","import","meta","url","lineNumber","columnNumber","toRenderTo","TypeReference","name","typeArgs","classRefkey","otherClassRefkey","StatementList","ClassDeclaration","Reference","res","SourceFile","path","VariableDeclaration","type","FunctionDeclaration","parameters","args","kwargs","returnType"],"sources":["../../../test/uniontypeexpression.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["refkey","describe","expect","it","py","TestOutput","TestOutputDirectory","_$createComponent","children","UnionTypeExpression","fileName","import","meta","url","lineNumber","columnNumber","toRenderTo","TypeReference","name","typeArgs","classRefkey","otherClassRefkey","StatementList","ClassDeclaration","Reference","SourceFile","path","VariableDeclaration","type","FunctionDeclaration","parameters","args","kwargs","returnType"],"sources":["../../../test/uniontypeexpression.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}