@darabonba/python-generator 2.0.2 → 2.0.4

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 (182) hide show
  1. package/.github/workflows/ci.yml +1 -1
  2. package/ChangeLog.md +15 -0
  3. package/lib/builtin.js +6 -12
  4. package/lib/generator.js +195 -109
  5. package/lib/helper.js +21 -1
  6. package/package.json +1 -1
  7. package/tests/expected/{python3/model/tea_python_tests/client.py → annotation/tea_python_tests/models/__init__.py} +6 -3
  8. package/tests/expected/annotation/tea_python_tests/{models.py → models/_test.py} +1 -1
  9. package/tests/expected/builtin/tea_python_tests/client.py +5 -5
  10. package/tests/expected/comment/tea_python_tests/models/__init__.py +15 -0
  11. package/tests/expected/comment/tea_python_tests/models/_test_1.py +91 -0
  12. package/tests/expected/comment/tea_python_tests/models/_test_2.py +55 -0
  13. package/tests/expected/comment/tea_python_tests/models/_test_3.py +61 -0
  14. package/tests/expected/complex/tea_python_tests/client.py +6 -6
  15. package/tests/expected/complex/tea_python_tests/exceptions/__init__.py +13 -0
  16. package/tests/expected/complex/tea_python_tests/exceptions/_err_1.py +23 -0
  17. package/tests/expected/complex/tea_python_tests/exceptions/_err_2.py +22 -0
  18. package/tests/expected/complex/tea_python_tests/models/__init__.py +19 -0
  19. package/tests/{output/complex/tea_python_tests/models.py → expected/complex/tea_python_tests/models/_complex_request.py} +12 -141
  20. package/tests/expected/complex/tea_python_tests/models/_complex_request_configs.py +47 -0
  21. package/tests/expected/complex/tea_python_tests/models/_complex_request_header.py +42 -0
  22. package/tests/expected/complex/tea_python_tests/models/_complex_request_part.py +33 -0
  23. package/tests/expected/complex/tea_python_tests/models/_response.py +33 -0
  24. package/tests/expected/model/tea_python_tests/exceptions/__init__.py +11 -0
  25. package/tests/expected/model/tea_python_tests/{exceptions.py → exceptions/_main_file.py} +1 -1
  26. package/tests/expected/model/tea_python_tests/models/__init__.py +33 -0
  27. package/tests/expected/model/tea_python_tests/models/_class.py +24 -0
  28. package/tests/expected/model/tea_python_tests/models/_m.py +38 -0
  29. package/tests/expected/model/tea_python_tests/models/_main_file_model.py +45 -0
  30. package/tests/expected/model/tea_python_tests/models/_main_file_model_model.py +32 -0
  31. package/tests/expected/model/tea_python_tests/models/_model.py +32 -0
  32. package/tests/expected/model/tea_python_tests/models/_msub_m.py +26 -0
  33. package/tests/expected/model/tea_python_tests/{models.py → models/_my_model.py} +16 -321
  34. package/tests/expected/model/tea_python_tests/models/_my_model_model.py +45 -0
  35. package/tests/expected/model/tea_python_tests/models/_my_model_model_model.py +32 -0
  36. package/tests/expected/model/tea_python_tests/models/_my_model_subarraymodel.py +24 -0
  37. package/tests/expected/model/tea_python_tests/models/_my_model_submodel.py +45 -0
  38. package/tests/expected/model/tea_python_tests/models/_my_model_submodel_model.py +32 -0
  39. package/tests/expected/multi/tea_python_tests/api.py +0 -2
  40. package/tests/expected/multi/tea_python_tests/api_models/__init__.py +11 -0
  41. package/tests/expected/{python3/annotation/tea_python_tests/models.py → multi/tea_python_tests/api_models/_test_model_dir_2.py} +7 -9
  42. package/tests/expected/multi/tea_python_tests/client.py +0 -2
  43. package/tests/expected/multi/tea_python_tests/exceptions/__init__.py +13 -0
  44. package/tests/{output/complex/tea_python_tests/exceptions.py → expected/multi/tea_python_tests/exceptions/_err.py} +10 -11
  45. package/tests/expected/multi/tea_python_tests/model/user_exceptions/__init__.py +15 -0
  46. package/tests/expected/multi/tea_python_tests/model/user_exceptions/_err.py +22 -0
  47. package/tests/expected/multi/tea_python_tests/model/{user_exceptions.py → user_exceptions/_err_1.py} +3 -32
  48. package/tests/expected/multi/tea_python_tests/model/user_exceptions/_err_2.py +18 -0
  49. package/tests/expected/multi/tea_python_tests/model/user_models/__init__.py +13 -0
  50. package/tests/expected/multi/tea_python_tests/model/user_models/_base_info.py +72 -0
  51. package/tests/expected/multi/tea_python_tests/model/{user_models.py → user_models/_info.py} +3 -69
  52. package/tests/expected/multi/tea_python_tests/models/__init__.py +13 -0
  53. package/tests/expected/multi/tea_python_tests/models/_test_model_dir.py +79 -0
  54. package/tests/expected/{python2/empty/tea_python_tests/client.py → typedef/tea_python_tests/models/__init__.py} +9 -3
  55. package/tests/{output/typedef/tea_python_tests/models.py → expected/typedef/tea_python_tests/models/_m.py} +1 -1
  56. package/tests/fixtures/multi/api.dara +4 -0
  57. package/tests/fixtures/multi/main.dara +18 -0
  58. package/tests/main.tests.js +194 -219
  59. package/tests/output/annotation/tea_python_tests/models/__init__.py +11 -0
  60. package/tests/output/annotation/tea_python_tests/{models.py → models/_test.py} +1 -1
  61. package/tests/output/builtin/tea_python_tests/client.py +5 -5
  62. package/tests/output/comment/tea_python_tests/models/__init__.py +15 -0
  63. package/tests/output/comment/tea_python_tests/models/_test_1.py +91 -0
  64. package/tests/output/comment/tea_python_tests/models/_test_2.py +55 -0
  65. package/tests/output/comment/tea_python_tests/models/_test_3.py +61 -0
  66. package/tests/output/complex/tea_python_tests/client.py +6 -6
  67. package/tests/output/complex/tea_python_tests/exceptions/__init__.py +13 -0
  68. package/tests/output/complex/tea_python_tests/exceptions/_err_1.py +23 -0
  69. package/tests/output/complex/tea_python_tests/exceptions/_err_2.py +22 -0
  70. package/tests/output/complex/tea_python_tests/models/__init__.py +19 -0
  71. package/tests/{expected/complex/tea_python_tests/models.py → output/complex/tea_python_tests/models/_complex_request.py} +12 -141
  72. package/tests/output/complex/tea_python_tests/models/_complex_request_configs.py +47 -0
  73. package/tests/output/complex/tea_python_tests/models/_complex_request_header.py +42 -0
  74. package/tests/output/complex/tea_python_tests/models/_complex_request_part.py +33 -0
  75. package/tests/output/complex/tea_python_tests/models/_response.py +33 -0
  76. package/tests/output/model/tea_python_tests/exceptions/__init__.py +11 -0
  77. package/tests/output/model/tea_python_tests/{exceptions.py → exceptions/_main_file.py} +1 -1
  78. package/tests/output/model/tea_python_tests/models/__init__.py +33 -0
  79. package/tests/output/model/tea_python_tests/models/_class.py +24 -0
  80. package/tests/output/model/tea_python_tests/models/_m.py +38 -0
  81. package/tests/output/model/tea_python_tests/models/_main_file_model.py +45 -0
  82. package/tests/output/model/tea_python_tests/models/_main_file_model_model.py +32 -0
  83. package/tests/output/model/tea_python_tests/models/_model.py +32 -0
  84. package/tests/output/model/tea_python_tests/models/_msub_m.py +26 -0
  85. package/tests/output/model/tea_python_tests/{models.py → models/_my_model.py} +16 -321
  86. package/tests/output/model/tea_python_tests/models/_my_model_model.py +45 -0
  87. package/tests/output/model/tea_python_tests/models/_my_model_model_model.py +32 -0
  88. package/tests/output/model/tea_python_tests/models/_my_model_subarraymodel.py +24 -0
  89. package/tests/output/model/tea_python_tests/models/_my_model_submodel.py +45 -0
  90. package/tests/output/model/tea_python_tests/models/_my_model_submodel_model.py +32 -0
  91. package/tests/output/multi/tea_python_tests/api.py +0 -2
  92. package/tests/output/multi/tea_python_tests/api_models/__init__.py +11 -0
  93. package/tests/{expected/python2/annotation/tea_python_tests/models.py → output/multi/tea_python_tests/api_models/_test_model_dir_2.py} +12 -11
  94. package/tests/output/multi/tea_python_tests/client.py +0 -2
  95. package/tests/output/multi/tea_python_tests/exceptions/__init__.py +13 -0
  96. package/tests/{expected/complex/tea_python_tests/exceptions.py → output/multi/tea_python_tests/exceptions/_err.py} +10 -11
  97. package/tests/output/multi/tea_python_tests/model/user_exceptions/__init__.py +15 -0
  98. package/tests/output/multi/tea_python_tests/model/user_exceptions/_err.py +22 -0
  99. package/tests/output/multi/tea_python_tests/model/{user_exceptions.py → user_exceptions/_err_1.py} +3 -32
  100. package/tests/output/multi/tea_python_tests/model/user_exceptions/_err_2.py +18 -0
  101. package/tests/output/multi/tea_python_tests/model/user_models/__init__.py +13 -0
  102. package/tests/output/multi/tea_python_tests/model/user_models/_base_info.py +72 -0
  103. package/tests/output/multi/tea_python_tests/model/{user_models.py → user_models/_info.py} +3 -69
  104. package/tests/output/multi/tea_python_tests/models/__init__.py +13 -0
  105. package/tests/output/multi/tea_python_tests/models/_test_model_dir.py +79 -0
  106. package/tests/{expected/python2/model/tea_python_tests/client.py → output/typedef/tea_python_tests/models/__init__.py} +9 -3
  107. package/tests/{expected/typedef/tea_python_tests/models.py → output/typedef/tea_python_tests/models/_m.py} +1 -1
  108. package/tests/expected/comment/tea_python_tests/models.py +0 -195
  109. package/tests/expected/python2/alias/setup.py +0 -79
  110. package/tests/expected/python2/alias/tea_python_tests/client.py +0 -23
  111. package/tests/expected/python2/annotation/tea_python_tests/client.py +0 -54
  112. package/tests/expected/python2/api/tea_python_tests/client.py +0 -54
  113. package/tests/expected/python2/comment/tea_python_tests/client.py +0 -188
  114. package/tests/expected/python2/comment/tea_python_tests/models.py +0 -146
  115. package/tests/expected/python2/complex/tea_python_tests/client.py +0 -301
  116. package/tests/expected/python2/complex/tea_python_tests/models.py +0 -315
  117. package/tests/expected/python2/const/tea_python_tests/client.py +0 -14
  118. package/tests/expected/python2/empty/setup.py +0 -76
  119. package/tests/expected/python2/exec/tea_python_tests/exec_client.py +0 -16
  120. package/tests/expected/python2/function/tea_python_tests/client.py +0 -47
  121. package/tests/expected/python2/import/setup.py +0 -85
  122. package/tests/expected/python2/import/tea_python_tests/client.py +0 -24
  123. package/tests/expected/python2/map/tea_python_tests/client.py +0 -19
  124. package/tests/expected/python2/model/tea_python_tests/models.py +0 -575
  125. package/tests/expected/python2/statements/tea_python_tests/client.py +0 -64
  126. package/tests/expected/python2/super/tea_python_tests/client.py +0 -8
  127. package/tests/expected/python2/typedef/setup.py +0 -85
  128. package/tests/expected/python2/typedef/tea_python_tests/client.py +0 -38
  129. package/tests/expected/python2/typedef/tea_python_tests/models.py +0 -35
  130. package/tests/expected/python3/alias/setup.py +0 -77
  131. package/tests/expected/python3/alias/tea_python_tests/client.py +0 -32
  132. package/tests/expected/python3/annotation/tea_python_tests/client.py +0 -88
  133. package/tests/expected/python3/api/tea_python_tests/client.py +0 -92
  134. package/tests/expected/python3/comment/tea_python_tests/__init__.py +0 -1
  135. package/tests/expected/python3/comment/tea_python_tests/client.py +0 -319
  136. package/tests/expected/python3/comment/tea_python_tests/models.py +0 -163
  137. package/tests/expected/python3/complex/tea_python_tests/__init__.py +0 -1
  138. package/tests/expected/python3/complex/tea_python_tests/client.py +0 -514
  139. package/tests/expected/python3/complex/tea_python_tests/models.py +0 -349
  140. package/tests/expected/python3/const/tea_python_tests/__init__.py +0 -1
  141. package/tests/expected/python3/const/tea_python_tests/client.py +0 -9
  142. package/tests/expected/python3/empty/setup.py +0 -74
  143. package/tests/expected/python3/empty/tea_python_tests/__init__.py +0 -1
  144. package/tests/expected/python3/empty/tea_python_tests/client.py +0 -5
  145. package/tests/expected/python3/exec/tea_python_tests/__init__.py +0 -1
  146. package/tests/expected/python3/exec/tea_python_tests/exec_client.py +0 -20
  147. package/tests/expected/python3/function/tea_python_tests/__init__.py +0 -1
  148. package/tests/expected/python3/function/tea_python_tests/client.py +0 -67
  149. package/tests/expected/python3/import/setup.py +0 -77
  150. package/tests/expected/python3/import/tea_python_tests/__init__.py +0 -1
  151. package/tests/expected/python3/import/tea_python_tests/client.py +0 -28
  152. package/tests/expected/python3/map/tea_python_tests/__init__.py +0 -1
  153. package/tests/expected/python3/map/tea_python_tests/client.py +0 -22
  154. package/tests/expected/python3/model/tea_python_tests/__init__.py +0 -1
  155. package/tests/expected/python3/model/tea_python_tests/models.py +0 -631
  156. package/tests/expected/python3/statements/tea_python_tests/__init__.py +0 -1
  157. package/tests/expected/python3/statements/tea_python_tests/client.py +0 -83
  158. package/tests/expected/python3/super/tea_python_tests/__init__.py +0 -1
  159. package/tests/expected/python3/super/tea_python_tests/client.py +0 -13
  160. package/tests/expected/python3/typedef/setup.py +0 -77
  161. package/tests/expected/python3/typedef/tea_python_tests/__init__.py +0 -1
  162. package/tests/expected/python3/typedef/tea_python_tests/client.py +0 -72
  163. package/tests/expected/python3/typedef/tea_python_tests/models.py +0 -39
  164. package/tests/output/comment/tea_python_tests/models.py +0 -195
  165. /package/tests/expected/{python2/alias → multi}/tea_python_tests/__init__.py +0 -0
  166. /package/tests/{expected/python2/annotation → output/alias}/tea_python_tests/__init__.py +0 -0
  167. /package/tests/{expected/python2/api → output/annotation}/tea_python_tests/__init__.py +0 -0
  168. /package/tests/{expected/python2/comment → output/api}/tea_python_tests/__init__.py +0 -0
  169. /package/tests/{expected/python2/complex → output/builtin}/tea_python_tests/__init__.py +0 -0
  170. /package/tests/{expected/python2/const → output/comment}/tea_python_tests/__init__.py +0 -0
  171. /package/tests/{expected/python2/empty → output/complex}/tea_python_tests/__init__.py +0 -0
  172. /package/tests/{expected/python2/exec → output/const}/tea_python_tests/__init__.py +0 -0
  173. /package/tests/{expected/python2/function → output/empty}/tea_python_tests/__init__.py +0 -0
  174. /package/tests/{expected/python2/import → output/exec}/tea_python_tests/__init__.py +0 -0
  175. /package/tests/{expected/python2/map → output/function}/tea_python_tests/__init__.py +0 -0
  176. /package/tests/{expected/python2/model → output/import}/tea_python_tests/__init__.py +0 -0
  177. /package/tests/{expected/python2/statements → output/map}/tea_python_tests/__init__.py +0 -0
  178. /package/tests/{expected/python2/super → output/model}/tea_python_tests/__init__.py +0 -0
  179. /package/tests/{expected/python2/typedef → output/multi}/tea_python_tests/__init__.py +0 -0
  180. /package/tests/{expected/python3/alias → output/statements}/tea_python_tests/__init__.py +0 -0
  181. /package/tests/{expected/python3/annotation → output/super}/tea_python_tests/__init__.py +0 -0
  182. /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