@darabonba/python-generator 2.0.1 → 2.0.3

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 (179) hide show
  1. package/.github/workflows/ci.yml +1 -1
  2. package/ChangeLog.md +12 -0
  3. package/lib/generator.js +223 -127
  4. package/lib/helper.js +21 -1
  5. package/package.json +1 -1
  6. package/tests/expected/{python3/model/tea_python_tests/client.py → annotation/tea_python_tests/models/__init__.py} +6 -3
  7. package/tests/expected/annotation/tea_python_tests/{models.py → models/_test.py} +1 -1
  8. package/tests/expected/comment/tea_python_tests/models/__init__.py +15 -0
  9. package/tests/expected/comment/tea_python_tests/models/_test_1.py +91 -0
  10. package/tests/expected/comment/tea_python_tests/models/_test_2.py +55 -0
  11. package/tests/expected/comment/tea_python_tests/models/_test_3.py +61 -0
  12. package/tests/expected/complex/tea_python_tests/client.py +6 -6
  13. package/tests/expected/complex/tea_python_tests/exceptions/__init__.py +13 -0
  14. package/tests/expected/complex/tea_python_tests/exceptions/_err_1.py +23 -0
  15. package/tests/expected/complex/tea_python_tests/exceptions/_err_2.py +22 -0
  16. package/tests/expected/complex/tea_python_tests/models/__init__.py +19 -0
  17. package/tests/{output/complex/tea_python_tests/models.py → expected/complex/tea_python_tests/models/_complex_request.py} +22 -151
  18. package/tests/expected/complex/tea_python_tests/models/_complex_request_configs.py +47 -0
  19. package/tests/expected/complex/tea_python_tests/models/_complex_request_header.py +42 -0
  20. package/tests/expected/complex/tea_python_tests/models/_complex_request_part.py +33 -0
  21. package/tests/expected/complex/tea_python_tests/models/_response.py +33 -0
  22. package/tests/expected/model/tea_python_tests/exceptions/__init__.py +11 -0
  23. package/tests/expected/model/tea_python_tests/{exceptions.py → exceptions/_main_file.py} +1 -1
  24. package/tests/expected/model/tea_python_tests/models/__init__.py +33 -0
  25. package/tests/expected/model/tea_python_tests/models/_class.py +24 -0
  26. package/tests/expected/model/tea_python_tests/models/_m.py +38 -0
  27. package/tests/expected/model/tea_python_tests/models/_main_file_model.py +45 -0
  28. package/tests/expected/model/tea_python_tests/models/_main_file_model_model.py +32 -0
  29. package/tests/expected/model/tea_python_tests/models/_model.py +32 -0
  30. package/tests/expected/model/tea_python_tests/models/_msub_m.py +26 -0
  31. package/tests/expected/model/tea_python_tests/{models.py → models/_my_model.py} +41 -363
  32. package/tests/expected/model/tea_python_tests/models/_my_model_model.py +45 -0
  33. package/tests/expected/model/tea_python_tests/models/_my_model_model_model.py +32 -0
  34. package/tests/expected/model/tea_python_tests/models/_my_model_subarraymodel.py +24 -0
  35. package/tests/expected/model/tea_python_tests/models/_my_model_submodel.py +45 -0
  36. package/tests/expected/model/tea_python_tests/models/_my_model_submodel_model.py +32 -0
  37. package/tests/expected/multi/tea_python_tests/api.py +0 -2
  38. package/tests/expected/multi/tea_python_tests/api_models/__init__.py +11 -0
  39. package/tests/expected/{python3/annotation/tea_python_tests/models.py → multi/tea_python_tests/api_models/_test_model_dir_2.py} +7 -9
  40. package/tests/expected/multi/tea_python_tests/client.py +0 -2
  41. package/tests/expected/multi/tea_python_tests/exceptions/__init__.py +13 -0
  42. package/tests/{output/complex/tea_python_tests/exceptions.py → expected/multi/tea_python_tests/exceptions/_err.py} +10 -11
  43. package/tests/expected/multi/tea_python_tests/model/user_exceptions/__init__.py +15 -0
  44. package/tests/expected/multi/tea_python_tests/model/user_exceptions/_err.py +22 -0
  45. package/tests/expected/multi/tea_python_tests/model/{user_exceptions.py → user_exceptions/_err_1.py} +3 -32
  46. package/tests/expected/multi/tea_python_tests/model/user_exceptions/_err_2.py +18 -0
  47. package/tests/expected/multi/tea_python_tests/model/user_models/__init__.py +13 -0
  48. package/tests/expected/multi/tea_python_tests/model/user_models/_base_info.py +72 -0
  49. package/tests/expected/multi/tea_python_tests/model/{user_models.py → user_models/_info.py} +3 -69
  50. package/tests/expected/multi/tea_python_tests/models/__init__.py +13 -0
  51. package/tests/expected/multi/tea_python_tests/models/_test_model_dir.py +79 -0
  52. package/tests/expected/{python2/empty/tea_python_tests/client.py → typedef/tea_python_tests/models/__init__.py} +9 -3
  53. package/tests/{output/typedef/tea_python_tests/models.py → expected/typedef/tea_python_tests/models/_m.py} +1 -1
  54. package/tests/fixtures/multi/api.dara +4 -0
  55. package/tests/fixtures/multi/main.dara +18 -0
  56. package/tests/main.tests.js +194 -219
  57. package/tests/output/annotation/tea_python_tests/models/__init__.py +11 -0
  58. package/tests/output/annotation/tea_python_tests/{models.py → models/_test.py} +1 -1
  59. package/tests/output/comment/tea_python_tests/models/__init__.py +15 -0
  60. package/tests/output/comment/tea_python_tests/models/_test_1.py +91 -0
  61. package/tests/output/comment/tea_python_tests/models/_test_2.py +55 -0
  62. package/tests/output/comment/tea_python_tests/models/_test_3.py +61 -0
  63. package/tests/output/complex/tea_python_tests/client.py +6 -6
  64. package/tests/output/complex/tea_python_tests/exceptions/__init__.py +13 -0
  65. package/tests/output/complex/tea_python_tests/exceptions/_err_1.py +23 -0
  66. package/tests/output/complex/tea_python_tests/exceptions/_err_2.py +22 -0
  67. package/tests/output/complex/tea_python_tests/models/__init__.py +19 -0
  68. package/tests/{expected/complex/tea_python_tests/models.py → output/complex/tea_python_tests/models/_complex_request.py} +22 -151
  69. package/tests/output/complex/tea_python_tests/models/_complex_request_configs.py +47 -0
  70. package/tests/output/complex/tea_python_tests/models/_complex_request_header.py +42 -0
  71. package/tests/output/complex/tea_python_tests/models/_complex_request_part.py +33 -0
  72. package/tests/output/complex/tea_python_tests/models/_response.py +33 -0
  73. package/tests/output/model/tea_python_tests/exceptions/__init__.py +11 -0
  74. package/tests/output/model/tea_python_tests/{exceptions.py → exceptions/_main_file.py} +1 -1
  75. package/tests/output/model/tea_python_tests/models/__init__.py +33 -0
  76. package/tests/output/model/tea_python_tests/models/_class.py +24 -0
  77. package/tests/output/model/tea_python_tests/models/_m.py +38 -0
  78. package/tests/output/model/tea_python_tests/models/_main_file_model.py +45 -0
  79. package/tests/output/model/tea_python_tests/models/_main_file_model_model.py +32 -0
  80. package/tests/output/model/tea_python_tests/models/_model.py +32 -0
  81. package/tests/output/model/tea_python_tests/models/_msub_m.py +26 -0
  82. package/tests/output/model/tea_python_tests/{models.py → models/_my_model.py} +41 -363
  83. package/tests/output/model/tea_python_tests/models/_my_model_model.py +45 -0
  84. package/tests/output/model/tea_python_tests/models/_my_model_model_model.py +32 -0
  85. package/tests/output/model/tea_python_tests/models/_my_model_subarraymodel.py +24 -0
  86. package/tests/output/model/tea_python_tests/models/_my_model_submodel.py +45 -0
  87. package/tests/output/model/tea_python_tests/models/_my_model_submodel_model.py +32 -0
  88. package/tests/output/multi/tea_python_tests/api.py +0 -2
  89. package/tests/output/multi/tea_python_tests/api_models/__init__.py +11 -0
  90. package/tests/{expected/python2/annotation/tea_python_tests/models.py → output/multi/tea_python_tests/api_models/_test_model_dir_2.py} +12 -11
  91. package/tests/output/multi/tea_python_tests/client.py +0 -2
  92. package/tests/output/multi/tea_python_tests/exceptions/__init__.py +13 -0
  93. package/tests/{expected/complex/tea_python_tests/exceptions.py → output/multi/tea_python_tests/exceptions/_err.py} +10 -11
  94. package/tests/output/multi/tea_python_tests/model/user_exceptions/__init__.py +15 -0
  95. package/tests/output/multi/tea_python_tests/model/user_exceptions/_err.py +22 -0
  96. package/tests/output/multi/tea_python_tests/model/{user_exceptions.py → user_exceptions/_err_1.py} +3 -32
  97. package/tests/output/multi/tea_python_tests/model/user_exceptions/_err_2.py +18 -0
  98. package/tests/output/multi/tea_python_tests/model/user_models/__init__.py +13 -0
  99. package/tests/output/multi/tea_python_tests/model/user_models/_base_info.py +72 -0
  100. package/tests/output/multi/tea_python_tests/model/{user_models.py → user_models/_info.py} +3 -69
  101. package/tests/output/multi/tea_python_tests/models/__init__.py +13 -0
  102. package/tests/output/multi/tea_python_tests/models/_test_model_dir.py +79 -0
  103. package/tests/{expected/python2/model/tea_python_tests/client.py → output/typedef/tea_python_tests/models/__init__.py} +9 -3
  104. package/tests/{expected/typedef/tea_python_tests/models.py → output/typedef/tea_python_tests/models/_m.py} +1 -1
  105. package/tests/expected/comment/tea_python_tests/models.py +0 -195
  106. package/tests/expected/python2/alias/setup.py +0 -79
  107. package/tests/expected/python2/alias/tea_python_tests/client.py +0 -23
  108. package/tests/expected/python2/annotation/tea_python_tests/client.py +0 -54
  109. package/tests/expected/python2/api/tea_python_tests/client.py +0 -54
  110. package/tests/expected/python2/comment/tea_python_tests/client.py +0 -188
  111. package/tests/expected/python2/comment/tea_python_tests/models.py +0 -146
  112. package/tests/expected/python2/complex/tea_python_tests/client.py +0 -301
  113. package/tests/expected/python2/complex/tea_python_tests/models.py +0 -315
  114. package/tests/expected/python2/const/tea_python_tests/client.py +0 -14
  115. package/tests/expected/python2/empty/setup.py +0 -76
  116. package/tests/expected/python2/exec/tea_python_tests/exec_client.py +0 -16
  117. package/tests/expected/python2/function/tea_python_tests/client.py +0 -47
  118. package/tests/expected/python2/import/setup.py +0 -85
  119. package/tests/expected/python2/import/tea_python_tests/client.py +0 -24
  120. package/tests/expected/python2/map/tea_python_tests/client.py +0 -19
  121. package/tests/expected/python2/model/tea_python_tests/models.py +0 -575
  122. package/tests/expected/python2/statements/tea_python_tests/client.py +0 -64
  123. package/tests/expected/python2/super/tea_python_tests/client.py +0 -8
  124. package/tests/expected/python2/typedef/setup.py +0 -85
  125. package/tests/expected/python2/typedef/tea_python_tests/client.py +0 -38
  126. package/tests/expected/python2/typedef/tea_python_tests/models.py +0 -35
  127. package/tests/expected/python3/alias/setup.py +0 -77
  128. package/tests/expected/python3/alias/tea_python_tests/client.py +0 -32
  129. package/tests/expected/python3/annotation/tea_python_tests/client.py +0 -88
  130. package/tests/expected/python3/api/tea_python_tests/client.py +0 -92
  131. package/tests/expected/python3/comment/tea_python_tests/__init__.py +0 -1
  132. package/tests/expected/python3/comment/tea_python_tests/client.py +0 -319
  133. package/tests/expected/python3/comment/tea_python_tests/models.py +0 -163
  134. package/tests/expected/python3/complex/tea_python_tests/__init__.py +0 -1
  135. package/tests/expected/python3/complex/tea_python_tests/client.py +0 -514
  136. package/tests/expected/python3/complex/tea_python_tests/models.py +0 -349
  137. package/tests/expected/python3/const/tea_python_tests/__init__.py +0 -1
  138. package/tests/expected/python3/const/tea_python_tests/client.py +0 -9
  139. package/tests/expected/python3/empty/setup.py +0 -74
  140. package/tests/expected/python3/empty/tea_python_tests/__init__.py +0 -1
  141. package/tests/expected/python3/empty/tea_python_tests/client.py +0 -5
  142. package/tests/expected/python3/exec/tea_python_tests/__init__.py +0 -1
  143. package/tests/expected/python3/exec/tea_python_tests/exec_client.py +0 -20
  144. package/tests/expected/python3/function/tea_python_tests/__init__.py +0 -1
  145. package/tests/expected/python3/function/tea_python_tests/client.py +0 -67
  146. package/tests/expected/python3/import/setup.py +0 -77
  147. package/tests/expected/python3/import/tea_python_tests/__init__.py +0 -1
  148. package/tests/expected/python3/import/tea_python_tests/client.py +0 -28
  149. package/tests/expected/python3/map/tea_python_tests/__init__.py +0 -1
  150. package/tests/expected/python3/map/tea_python_tests/client.py +0 -22
  151. package/tests/expected/python3/model/tea_python_tests/__init__.py +0 -1
  152. package/tests/expected/python3/model/tea_python_tests/models.py +0 -631
  153. package/tests/expected/python3/statements/tea_python_tests/__init__.py +0 -1
  154. package/tests/expected/python3/statements/tea_python_tests/client.py +0 -83
  155. package/tests/expected/python3/super/tea_python_tests/__init__.py +0 -1
  156. package/tests/expected/python3/super/tea_python_tests/client.py +0 -13
  157. package/tests/expected/python3/typedef/setup.py +0 -77
  158. package/tests/expected/python3/typedef/tea_python_tests/__init__.py +0 -1
  159. package/tests/expected/python3/typedef/tea_python_tests/client.py +0 -72
  160. package/tests/expected/python3/typedef/tea_python_tests/models.py +0 -39
  161. package/tests/output/comment/tea_python_tests/models.py +0 -195
  162. /package/tests/expected/{python2/alias → multi}/tea_python_tests/__init__.py +0 -0
  163. /package/tests/{expected/python2/annotation → output/alias}/tea_python_tests/__init__.py +0 -0
  164. /package/tests/{expected/python2/api → output/annotation}/tea_python_tests/__init__.py +0 -0
  165. /package/tests/{expected/python2/comment → output/api}/tea_python_tests/__init__.py +0 -0
  166. /package/tests/{expected/python2/complex → output/builtin}/tea_python_tests/__init__.py +0 -0
  167. /package/tests/{expected/python2/const → output/comment}/tea_python_tests/__init__.py +0 -0
  168. /package/tests/{expected/python2/empty → output/complex}/tea_python_tests/__init__.py +0 -0
  169. /package/tests/{expected/python2/exec → output/const}/tea_python_tests/__init__.py +0 -0
  170. /package/tests/{expected/python2/function → output/empty}/tea_python_tests/__init__.py +0 -0
  171. /package/tests/{expected/python2/import → output/exec}/tea_python_tests/__init__.py +0 -0
  172. /package/tests/{expected/python2/map → output/function}/tea_python_tests/__init__.py +0 -0
  173. /package/tests/{expected/python2/model → output/import}/tea_python_tests/__init__.py +0 -0
  174. /package/tests/{expected/python2/statements → output/map}/tea_python_tests/__init__.py +0 -0
  175. /package/tests/{expected/python2/super → output/model}/tea_python_tests/__init__.py +0 -0
  176. /package/tests/{expected/python2/typedef → output/multi}/tea_python_tests/__init__.py +0 -0
  177. /package/tests/{expected/python3/alias → output/statements}/tea_python_tests/__init__.py +0 -0
  178. /package/tests/{expected/python3/annotation → output/super}/tea_python_tests/__init__.py +0 -0
  179. /package/tests/{expected/python3/api → output/typedef}/tea_python_tests/__init__.py +0 -0
@@ -1,514 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # This file is auto-generated, don't edit it. Thanks.
3
- import time
4
-
5
- from Source.source_client import SourceClient
6
- from Tea.request import TeaRequest
7
- from Tea.core import TeaCore
8
- from Tea.exceptions import UnretryableException
9
- from Tea.response import TeaResponse
10
- from typing import List, Dict, Any
11
-
12
- from Source import models as source_models
13
- from tea_python_tests import models as main_models
14
-
15
-
16
- class Client(SourceClient):
17
- _configs: List[source_models.Config] = None
18
-
19
- def __init__(
20
- self,
21
- config: source_models.Config,
22
- ):
23
- super().__init__(config)
24
- self._configs[0] = config
25
-
26
- def complex_1(
27
- self,
28
- request: main_models.ComplexRequest,
29
- client: SourceClient,
30
- ) -> source_models.RuntimeObject:
31
- request.validate()
32
- _runtime = {
33
- 'timeouted': 'retry'
34
- }
35
- _last_request = None
36
- _last_exception = None
37
- _now = time.time()
38
- _retry_times = 0
39
- while TeaCore.allow_retry(_runtime.get('retry'), _retry_times, _now):
40
- if _retry_times > 0:
41
- _backoff_time = TeaCore.get_backoff_time(_runtime.get('backoff'), _retry_times)
42
- if _backoff_time > 0:
43
- TeaCore.sleep(_backoff_time)
44
- _retry_times = _retry_times + 1
45
- try:
46
- _request = TeaRequest()
47
- x = False
48
- y = True
49
- z = False
50
- if x and y or not z:
51
- x = y
52
- # to map test.
53
- req = source_models.Request()
54
- m = self.call_to_map(TeaCore.to_map(req))
55
- name = 'complex'
56
- map_val = {
57
- 'test': 'ok'
58
- }
59
- version = f"/{'2019-01-08'}{self._pathname}"
60
- module_model_map_val = {}
61
- module_map_val = {}
62
- model_map_val = {}
63
- sub_model_map_val = {}
64
- _request.protocol = self._protocol
65
- _request.port = 80
66
- _request.method = 'GET'
67
- _request.pathname = f'/{self._pathname}'
68
- _request.query = SourceClient.query(TeaCore.merge({
69
- 'date': '2019'
70
- }, request.header,
71
- map_val))
72
- _request.body = SourceClient.body()
73
- request.from_ = 'test'
74
- from_ = main_models.ComplexRequest(
75
- from_='test'
76
- )
77
- self.complex_3(from_)
78
- _last_request = _request
79
- _response = TeaCore.do_action(_request, _runtime)
80
- if True and True:
81
- return
82
- elif True or False:
83
- return source_models.RuntimeObject()
84
- client.print(TeaCore.to_map(request), '1')
85
- client.print_async(TeaCore.to_map(request), '1')
86
- self.hello(TeaCore.to_map(request), [
87
- '1',
88
- '2'
89
- ])
90
- self.hello(None, None)
91
- self.complex_3(None)
92
- return TeaCore.from_map(
93
- source_models.RuntimeObject(),
94
- {}
95
- )
96
- except Exception as e:
97
- if TeaCore.is_retryable(e):
98
- _last_exception = e
99
- continue
100
- raise e
101
- raise UnretryableException(_last_request, _last_exception)
102
-
103
- async def complex_1_async(
104
- self,
105
- request: main_models.ComplexRequest,
106
- client: SourceClient,
107
- ) -> source_models.RuntimeObject:
108
- request.validate()
109
- _runtime = {
110
- 'timeouted': 'retry'
111
- }
112
- _last_request = None
113
- _last_exception = None
114
- _now = time.time()
115
- _retry_times = 0
116
- while TeaCore.allow_retry(_runtime.get('retry'), _retry_times, _now):
117
- if _retry_times > 0:
118
- _backoff_time = TeaCore.get_backoff_time(_runtime.get('backoff'), _retry_times)
119
- if _backoff_time > 0:
120
- TeaCore.sleep(_backoff_time)
121
- _retry_times = _retry_times + 1
122
- try:
123
- _request = TeaRequest()
124
- x = False
125
- y = True
126
- z = False
127
- if x and y or not z:
128
- x = y
129
- # to map test.
130
- req = source_models.Request()
131
- m = self.call_to_map(TeaCore.to_map(req))
132
- name = 'complex'
133
- map_val = {
134
- 'test': 'ok'
135
- }
136
- version = f"/{'2019-01-08'}{self._pathname}"
137
- module_model_map_val = {}
138
- module_map_val = {}
139
- model_map_val = {}
140
- sub_model_map_val = {}
141
- _request.protocol = self._protocol
142
- _request.port = 80
143
- _request.method = 'GET'
144
- _request.pathname = f'/{self._pathname}'
145
- _request.query = SourceClient.query(TeaCore.merge({
146
- 'date': '2019'
147
- }, request.header,
148
- map_val))
149
- _request.body = SourceClient.body()
150
- request.from_ = 'test'
151
- from_ = main_models.ComplexRequest(
152
- from_='test'
153
- )
154
- await self.complex_3_async(from_)
155
- _last_request = _request
156
- _response = await TeaCore.async_do_action(_request, _runtime)
157
- if True and True:
158
- return
159
- elif True or False:
160
- return source_models.RuntimeObject()
161
- client.print(TeaCore.to_map(request), '1')
162
- await client.print_async_async(TeaCore.to_map(request), '1')
163
- await self.hello_async(TeaCore.to_map(request), [
164
- '1',
165
- '2'
166
- ])
167
- await self.hello_async(None, None)
168
- await self.complex_3_async(None)
169
- return TeaCore.from_map(
170
- source_models.RuntimeObject(),
171
- {}
172
- )
173
- except Exception as e:
174
- if TeaCore.is_retryable(e):
175
- _last_exception = e
176
- continue
177
- raise e
178
- raise UnretryableException(_last_request, _last_exception)
179
-
180
- def complex_2(
181
- self,
182
- request: main_models.ComplexRequest,
183
- str: List[str],
184
- val: Dict[str, str],
185
- ) -> dict:
186
- request.validate()
187
- _request = TeaRequest()
188
- name = 'complex'
189
- config = source_models.Config()
190
- client = SourceClient(config)
191
- _request.protocol = 'HTTP'
192
- _request.port = 80
193
- _request.method = 'GET'
194
- _request.pathname = '/'
195
- _request.query = SourceClient.query({
196
- 'date': '2019',
197
- 'version': '2019-01-08',
198
- 'protocol': _request.protocol
199
- })
200
- _request.body = SourceClient.body()
201
- _last_request = _request
202
- _response = TeaCore.do_action(_request)
203
-
204
- async def complex_2_async(
205
- self,
206
- request: main_models.ComplexRequest,
207
- str: List[str],
208
- val: Dict[str, str],
209
- ) -> dict:
210
- request.validate()
211
- _request = TeaRequest()
212
- name = 'complex'
213
- config = source_models.Config()
214
- client = SourceClient(config)
215
- _request.protocol = 'HTTP'
216
- _request.port = 80
217
- _request.method = 'GET'
218
- _request.pathname = '/'
219
- _request.query = SourceClient.query({
220
- 'date': '2019',
221
- 'version': '2019-01-08',
222
- 'protocol': _request.protocol
223
- })
224
- _request.body = SourceClient.body()
225
- _last_request = _request
226
- _response = await TeaCore.async_do_action(_request)
227
-
228
- def complex_3(
229
- self,
230
- request: main_models.ComplexRequest,
231
- ) -> main_models.ComplexRequest:
232
- request.validate()
233
- _request = TeaRequest()
234
- name = 'complex'
235
- _request.protocol = self.template_string()
236
- _request.port = 80
237
- _request.method = 'GET'
238
- _request.pathname = '/'
239
- _request.query = SourceClient.query({
240
- 'date': '2019'
241
- })
242
- _request.body = SourceClient.body()
243
- _request.headers['host'] = 'hello'
244
- _last_request = _request
245
- _response = TeaCore.do_action(_request)
246
- resp = _response
247
- req = source_models.Request(
248
- accesskey=request.access_key,
249
- region=resp.status_message
250
- )
251
- self.array_0(TeaCore.to_map(request))
252
- req.accesskey = 'accesskey'
253
- req.accesskey = request.access_key
254
- SourceClient.parse(main_models.ComplexRequest())
255
- SourceClient.array(TeaCore.to_map(request), '1')
256
- SourceClient.async_func()
257
- return TeaCore.from_map(
258
- main_models.ComplexRequest(),
259
- TeaCore.merge(_request.query)
260
- )
261
-
262
- async def complex_3_async(
263
- self,
264
- request: main_models.ComplexRequest,
265
- ) -> main_models.ComplexRequest:
266
- request.validate()
267
- _request = TeaRequest()
268
- name = 'complex'
269
- _request.protocol = await self.template_string_async()
270
- _request.port = 80
271
- _request.method = 'GET'
272
- _request.pathname = '/'
273
- _request.query = SourceClient.query({
274
- 'date': '2019'
275
- })
276
- _request.body = SourceClient.body()
277
- _request.headers['host'] = 'hello'
278
- _last_request = _request
279
- _response = await TeaCore.async_do_action(_request)
280
- resp = _response
281
- req = source_models.Request(
282
- accesskey=request.access_key,
283
- region=resp.status_message
284
- )
285
- self.array_0(TeaCore.to_map(request))
286
- req.accesskey = 'accesskey'
287
- req.accesskey = request.access_key
288
- SourceClient.parse(main_models.ComplexRequest())
289
- SourceClient.array(TeaCore.to_map(request), '1')
290
- await SourceClient.async_func_async()
291
- return TeaCore.from_map(
292
- main_models.ComplexRequest(),
293
- TeaCore.merge(_request.query)
294
- )
295
-
296
- def hello(
297
- self,
298
- request: dict,
299
- strs: List[str],
300
- ) -> List[str]:
301
- return self.array_1()
302
-
303
- async def hello_async(
304
- self,
305
- request: dict,
306
- strs: List[str],
307
- ) -> List[str]:
308
- return self.array_1()
309
-
310
- @staticmethod
311
- def print(
312
- reqeust: TeaRequest,
313
- reqs: List[main_models.ComplexRequest],
314
- response: TeaResponse,
315
- val: Dict[str, str],
316
- ) -> source_models.Request:
317
- return TeaCore.from_map(
318
- source_models.Request(),
319
- {}
320
- )
321
-
322
- @staticmethod
323
- async def print_async(
324
- reqeust: TeaRequest,
325
- reqs: List[main_models.ComplexRequest],
326
- response: TeaResponse,
327
- val: Dict[str, str],
328
- ) -> source_models.Request:
329
- return TeaCore.from_map(
330
- source_models.Request(),
331
- {}
332
- )
333
-
334
- @staticmethod
335
- def array_0(
336
- req: dict,
337
- ) -> List[Any]:
338
- temp = source_models.Config()
339
- any_arr = [
340
- temp
341
- ]
342
- return {}
343
-
344
- @staticmethod
345
- def array_1() -> List[str]:
346
- return [
347
- '1'
348
- ]
349
-
350
- @staticmethod
351
- def array_2() -> List[List[Any]]:
352
- temp = source_models.Config()
353
- any_arr = [
354
- temp
355
- ]
356
- return [
357
- [
358
- any_arr
359
- ]
360
- ]
361
-
362
- def template_string(self) -> str:
363
- return f'/{self._protocol}'
364
-
365
- async def template_string_async(self) -> str:
366
- return f'/{self._protocol}'
367
-
368
- def empty_model(self) -> None:
369
- main_models.ComplexRequest()
370
- main_models.ComplexRequestHeader()
371
- status = ''
372
- try:
373
- status = 'failed'
374
- except Exception as e:
375
- status = 'catch exception'
376
- finally:
377
- status = 'ok'
378
-
379
- async def empty_model_async(self) -> None:
380
- main_models.ComplexRequest()
381
- main_models.ComplexRequestHeader()
382
- status = ''
383
- try:
384
- status = 'failed'
385
- except Exception as e:
386
- status = 'catch exception'
387
- finally:
388
- status = 'ok'
389
-
390
- @staticmethod
391
- def array_access() -> str:
392
- configs = [
393
- 'a',
394
- 'b',
395
- 'c'
396
- ]
397
- config = configs[0]
398
- return config
399
-
400
- @staticmethod
401
- def array_access_2() -> str:
402
- data = {
403
- 'configs': [
404
- 'a',
405
- 'b',
406
- 'c'
407
- ]
408
- }
409
- config = data['configs'][0]
410
- return config
411
-
412
- @staticmethod
413
- def array_access_3(
414
- request: main_models.ComplexRequest,
415
- index: int,
416
- ) -> str:
417
- config_val = request.configs.value[0]
418
- val = request.configs.value[index]
419
- i_0 = 0
420
- val = request.configs.value[i_0]
421
- return config_val
422
-
423
- @staticmethod
424
- def array_assign(
425
- config: str,
426
- ) -> List[str]:
427
- configs = [
428
- 'a',
429
- 'b',
430
- 'c'
431
- ]
432
- configs[3] = config
433
- return configs
434
-
435
- @staticmethod
436
- def array_assign_2(
437
- config: str,
438
- ) -> List[str]:
439
- data = {
440
- 'configs': [
441
- 'a',
442
- 'b',
443
- 'c'
444
- ]
445
- }
446
- data['configs'][3] = config
447
- return data.get('configs')
448
-
449
- @staticmethod
450
- def array_assign_3(
451
- request: main_models.ComplexRequest,
452
- config: str,
453
- ) -> None:
454
- request.configs.value[0] = config
455
- i_0 = 0
456
- request.configs.value[i_0] = config
457
-
458
- @staticmethod
459
- def map_access(
460
- request: main_models.ComplexRequest,
461
- ) -> str:
462
- config_info = request.configs.extra.get('name')
463
- return config_info
464
-
465
- @staticmethod
466
- def map_access_2(
467
- request: source_models.Request,
468
- key: str,
469
- ) -> str:
470
- config_info = request.configs.extra.get('name')
471
- config_value = request.configs.extra.get(key)
472
- i_0 = key
473
- config_value = request.configs.extra.get(i_0)
474
- return config_info
475
-
476
- @staticmethod
477
- def map_access_3() -> str:
478
- data = {
479
- 'configs': {
480
- 'value': 'string'
481
- }
482
- }
483
- return data['configs'].get('value')
484
-
485
- @staticmethod
486
- def map_assign(
487
- request: main_models.ComplexRequest,
488
- name: str,
489
- ) -> None:
490
- request.configs.extra['name'] = name
491
- i_0 = 'name'
492
- request.configs.extra[i_0] = name
493
-
494
- @staticmethod
495
- def str_fmt() -> None:
496
- s = 'strtest'
497
- s_1 = f' % 1{s}'
498
- s_2 = f''' "hello" 'world' {s}'''
499
- s_3 = f'hello world'
500
- s_4 = f'''{{
501
- "json": "json val",
502
- "key": "value"
503
- }}'''
504
- s_5 = f' %s str:{s}'
505
- s_6 = f' %%s str'
506
- fs_1 = f'{{"key": "{s}"}}'
507
- fs_2 = f'{{{{"key": "{s}"}}}}'
508
- fs_3 = f' {s}'
509
-
510
- @staticmethod
511
- def call_to_map(
512
- m: Dict[str, Any],
513
- ) -> Dict[str, Any]:
514
- return m