@typespec/http-client-python 0.28.2 → 0.29.0

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 (368) hide show
  1. package/dist/emitter/code-model.d.ts.map +1 -1
  2. package/dist/emitter/code-model.js +7 -6
  3. package/dist/emitter/code-model.js.map +1 -1
  4. package/dist/emitter/constants.d.ts +6 -0
  5. package/dist/emitter/constants.d.ts.map +1 -0
  6. package/dist/emitter/constants.js +27 -0
  7. package/dist/emitter/constants.js.map +1 -0
  8. package/dist/emitter/emitter.d.ts.map +1 -1
  9. package/dist/emitter/emitter.js +193 -119
  10. package/dist/emitter/emitter.js.map +1 -1
  11. package/dist/emitter/http.d.ts.map +1 -1
  12. package/dist/emitter/http.js +33 -1
  13. package/dist/emitter/http.js.map +1 -1
  14. package/dist/emitter/lib.d.ts +37 -3
  15. package/dist/emitter/lib.d.ts.map +1 -1
  16. package/dist/emitter/lib.js +17 -0
  17. package/dist/emitter/lib.js.map +1 -1
  18. package/dist/emitter/run-python3.js +1 -1
  19. package/dist/emitter/run-python3.js.map +1 -1
  20. package/dist/emitter/system-requirements.js +6 -4
  21. package/dist/emitter/system-requirements.js.map +1 -1
  22. package/dist/emitter/types.d.ts +2 -5
  23. package/dist/emitter/types.d.ts.map +1 -1
  24. package/dist/emitter/types.js +86 -63
  25. package/dist/emitter/types.js.map +1 -1
  26. package/dist/emitter/utils.d.ts.map +1 -1
  27. package/dist/emitter/utils.js +16 -17
  28. package/dist/emitter/utils.js.map +1 -1
  29. package/emitter/src/code-model.ts +7 -13
  30. package/emitter/src/constants.ts +27 -0
  31. package/emitter/src/emitter.ts +241 -123
  32. package/emitter/src/http.ts +29 -1
  33. package/emitter/src/lib.ts +24 -0
  34. package/emitter/src/run-python3.ts +1 -1
  35. package/emitter/src/system-requirements.ts +4 -4
  36. package/emitter/src/types.ts +102 -62
  37. package/emitter/src/utils.ts +16 -18
  38. package/emitter/temp/tsconfig.tsbuildinfo +1 -1
  39. package/emitter/test/utils.test.ts +3 -0
  40. package/emitter/tsconfig.build.json +2 -1
  41. package/emitter/tsconfig.json +2 -1
  42. package/eng/scripts/Build-Packages.ps1 +62 -37
  43. package/eng/scripts/Check-GitChanges.ps1 +30 -3
  44. package/eng/scripts/Functions.ps1 +54 -15
  45. package/eng/scripts/Generate.ps1 +42 -8
  46. package/eng/scripts/Generation.psm1 +44 -15
  47. package/eng/scripts/Initialize-Repository.ps1 +29 -11
  48. package/eng/scripts/Test-Packages.ps1 +47 -31
  49. package/eng/scripts/ci/config/eslint-ci.config.mjs +64 -0
  50. package/eng/scripts/ci/{mypy.ini → config/mypy.ini} +1 -1
  51. package/eng/scripts/ci/{pylintrc → config/pylintrc} +1 -1
  52. package/eng/scripts/ci/{pyrightconfig.json → config/pyrightconfig.json} +1 -1
  53. package/eng/scripts/ci/dev_requirements.txt +2 -1
  54. package/eng/scripts/ci/format.ts +232 -2
  55. package/eng/scripts/ci/lint.ts +223 -20
  56. package/eng/scripts/ci/regenerate-common.ts +411 -136
  57. package/eng/scripts/ci/regenerate.ts +247 -101
  58. package/eng/scripts/ci/run-tests.ts +507 -0
  59. package/eng/scripts/ci/run_apiview.py +22 -16
  60. package/eng/scripts/ci/run_mypy.py +34 -23
  61. package/eng/scripts/ci/run_pylint.py +27 -19
  62. package/eng/scripts/ci/run_pyright.py +9 -5
  63. package/eng/scripts/ci/run_sphinx_build.py +24 -9
  64. package/eng/scripts/ci/typecheck.ts +225 -0
  65. package/eng/scripts/ci/util.py +61 -25
  66. package/eng/scripts/ci/utils.ts +5 -5
  67. package/eng/scripts/setup/__pycache__/package_manager.cpython-311.pyc +0 -0
  68. package/eng/scripts/setup/__pycache__/venvtools.cpython-311.pyc +0 -0
  69. package/eng/scripts/setup/build.ts +1 -1
  70. package/eng/scripts/setup/build_pygen_wheel.py +4 -3
  71. package/eng/scripts/setup/install.py +4 -3
  72. package/eng/scripts/setup/install.ts +1 -1
  73. package/eng/scripts/setup/prepare.py +3 -2
  74. package/eng/scripts/setup/prepare.ts +1 -1
  75. package/eng/scripts/setup/run-python3.ts +1 -1
  76. package/eng/scripts/setup/run_batch.py +197 -0
  77. package/eng/scripts/setup/run_tsp.py +3 -3
  78. package/eng/scripts/setup/system-requirements.ts +8 -4
  79. package/eng/scripts/setup/venvtools.py +1 -1
  80. package/generator/build/lib/pygen/__init__.py +1 -3
  81. package/generator/build/lib/pygen/codegen/__init__.py +0 -1
  82. package/generator/build/lib/pygen/codegen/models/base.py +0 -1
  83. package/generator/build/lib/pygen/codegen/models/client.py +2 -1
  84. package/generator/build/lib/pygen/codegen/models/code_model.py +1 -0
  85. package/generator/build/lib/pygen/codegen/models/enum_type.py +0 -1
  86. package/generator/build/lib/pygen/codegen/models/model_type.py +1 -7
  87. package/generator/build/lib/pygen/codegen/models/parameter.py +16 -14
  88. package/generator/build/lib/pygen/codegen/serializers/__init__.py +27 -12
  89. package/generator/build/lib/pygen/codegen/serializers/builder_serializer.py +12 -3
  90. package/generator/build/lib/pygen/codegen/serializers/general_serializer.py +6 -2
  91. package/generator/build/lib/pygen/codegen/serializers/import_serializer.py +17 -4
  92. package/generator/build/lib/pygen/codegen/serializers/parameter_serializer.py +17 -11
  93. package/generator/build/lib/pygen/codegen/templates/model_base.py.jinja2 +176 -71
  94. package/generator/build/lib/pygen/codegen/templates/packaging_templates/README.md.jinja2 +11 -3
  95. package/generator/build/lib/pygen/codegen/templates/packaging_templates/pyproject.toml.jinja2 +1 -1
  96. package/generator/build/lib/pygen/codegen/templates/serialization.py.jinja2 +5 -1
  97. package/generator/build/lib/pygen/preprocess/__init__.py +37 -30
  98. package/generator/component-detection-pip-report.json +7 -7
  99. package/generator/dist/pygen-0.1.0-py3-none-any.whl +0 -0
  100. package/generator/pygen/__init__.py +1 -3
  101. package/generator/pygen/codegen/__init__.py +0 -1
  102. package/generator/pygen/codegen/models/base.py +0 -1
  103. package/generator/pygen/codegen/models/client.py +2 -1
  104. package/generator/pygen/codegen/models/code_model.py +1 -0
  105. package/generator/pygen/codegen/models/enum_type.py +0 -1
  106. package/generator/pygen/codegen/models/model_type.py +1 -7
  107. package/generator/pygen/codegen/models/parameter.py +16 -14
  108. package/generator/pygen/codegen/serializers/__init__.py +27 -12
  109. package/generator/pygen/codegen/serializers/builder_serializer.py +12 -3
  110. package/generator/pygen/codegen/serializers/general_serializer.py +6 -2
  111. package/generator/pygen/codegen/serializers/import_serializer.py +17 -4
  112. package/generator/pygen/codegen/serializers/parameter_serializer.py +17 -11
  113. package/generator/pygen/codegen/templates/model_base.py.jinja2 +176 -71
  114. package/generator/pygen/codegen/templates/packaging_templates/README.md.jinja2 +11 -3
  115. package/generator/pygen/codegen/templates/packaging_templates/pyproject.toml.jinja2 +1 -1
  116. package/generator/pygen/codegen/templates/serialization.py.jinja2 +5 -1
  117. package/generator/pygen/preprocess/__init__.py +37 -30
  118. package/generator/pygen.egg-info/PKG-INFO +1 -2
  119. package/generator/pygen.egg-info/requires.txt +1 -1
  120. package/generator/setup.py +1 -2
  121. package/package.json +63 -42
  122. package/eng/scripts/ci/run-ci.ts +0 -89
  123. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_commonproperties_async.py +0 -94
  124. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_largeheader_async.py +0 -30
  125. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_nonresource_async.py +0 -36
  126. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_operationtemplates_async.py +0 -205
  127. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_resource_async.py +0 -478
  128. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_access_async.py +0 -101
  129. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_api_version_header_async.py +0 -18
  130. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_api_version_path_async.py +0 -18
  131. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_api_version_query_async.py +0 -18
  132. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_client_default_value_async.py +0 -46
  133. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_client_initialization_async.py +0 -58
  134. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_client_location_async.py +0 -82
  135. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_deserialize_empty_string_as_null_async.py +0 -20
  136. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_flatten_async.py +0 -115
  137. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_hierrarchy_building_async.py +0 -53
  138. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_next_link_verb_async.py +0 -28
  139. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_override_async.py +0 -106
  140. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_usage_async.py +0 -38
  141. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_basic_async.py +0 -76
  142. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_lro_rpc_async.py +0 -22
  143. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_lro_standard_async.py +0 -39
  144. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_model_async.py +0 -33
  145. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_page_async.py +0 -80
  146. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_scalar_async.py +0 -41
  147. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_traits_async.py +0 -87
  148. package/generator/test/azure/mock_api_tests/asynctests/test_azure_encode_duration_async.py +0 -19
  149. package/generator/test/azure/mock_api_tests/asynctests/test_azure_example_basic_async.py +0 -30
  150. package/generator/test/azure/mock_api_tests/asynctests/test_azure_payload_pageable_async.py +0 -19
  151. package/generator/test/azure/mock_api_tests/asynctests/test_azure_resource_manager_method_subscription_id_async.py +0 -248
  152. package/generator/test/azure/mock_api_tests/asynctests/test_azure_resource_manager_multi_service_async.py +0 -110
  153. package/generator/test/azure/mock_api_tests/asynctests/test_azure_resource_manager_multi_service_shared_models_async.py +0 -132
  154. package/generator/test/azure/mock_api_tests/asynctests/test_azure_special_headers_client_request_id_async.py +0 -30
  155. package/generator/test/azure/mock_api_tests/asynctests/test_azure_versioning_previewversion_async.py +0 -53
  156. package/generator/test/azure/mock_api_tests/asynctests/test_client_namespace_async.py +0 -34
  157. package/generator/test/azure/mock_api_tests/asynctests/test_client_naming_async.py +0 -69
  158. package/generator/test/azure/mock_api_tests/asynctests/test_client_naming_enum_conflict_async.py +0 -37
  159. package/generator/test/azure/mock_api_tests/asynctests/test_client_overload_async.py +0 -27
  160. package/generator/test/azure/mock_api_tests/asynctests/test_client_structure_async.py +0 -64
  161. package/generator/test/azure/mock_api_tests/asynctests/test_client_structure_clientoperationgroup_async.py +0 -31
  162. package/generator/test/azure/mock_api_tests/asynctests/test_encode_duration_async.py +0 -63
  163. package/generator/test/azure/mock_api_tests/asynctests/test_encode_numeric_async.py +0 -35
  164. package/generator/test/azure/mock_api_tests/asynctests/test_parameters_basic_async.py +0 -24
  165. package/generator/test/azure/mock_api_tests/asynctests/test_parameters_spread_async.py +0 -76
  166. package/generator/test/azure/mock_api_tests/asynctests/test_payload_content_negotiation_async.py +0 -37
  167. package/generator/test/azure/mock_api_tests/asynctests/test_payload_multipart_async.py +0 -216
  168. package/generator/test/azure/mock_api_tests/asynctests/test_resiliency_srv_driven_async.py +0 -130
  169. package/generator/test/azure/mock_api_tests/asynctests/test_serialization_encoded_name_json_async.py +0 -24
  170. package/generator/test/azure/mock_api_tests/asynctests/test_service_multi_service_async.py +0 -31
  171. package/generator/test/azure/mock_api_tests/asynctests/test_special_words_async.py +0 -71
  172. package/generator/test/azure/mock_api_tests/conftest.py +0 -207
  173. package/generator/test/azure/mock_api_tests/data/image.jpg +0 -0
  174. package/generator/test/azure/mock_api_tests/data/image.png +0 -0
  175. package/generator/test/azure/mock_api_tests/test_azure_arm_commonproperties.py +0 -89
  176. package/generator/test/azure/mock_api_tests/test_azure_arm_largeheader.py +0 -27
  177. package/generator/test/azure/mock_api_tests/test_azure_arm_nonresource.py +0 -34
  178. package/generator/test/azure/mock_api_tests/test_azure_arm_operationtemplates.py +0 -180
  179. package/generator/test/azure/mock_api_tests/test_azure_arm_resource.py +0 -436
  180. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_access.py +0 -92
  181. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_api_version_header.py +0 -17
  182. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_api_version_path.py +0 -17
  183. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_api_version_query.py +0 -17
  184. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_client_default_value.py +0 -42
  185. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_client_initialization.py +0 -51
  186. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_client_location.py +0 -70
  187. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_deserialize_empty_string_as_null.py +0 -19
  188. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_flatten.py +0 -104
  189. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_hierrarchy_building.py +0 -45
  190. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_next_link_verb.py +0 -27
  191. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_override.py +0 -102
  192. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_usage.py +0 -32
  193. package/generator/test/azure/mock_api_tests/test_azure_core_basic.py +0 -70
  194. package/generator/test/azure/mock_api_tests/test_azure_core_lro_rpc.py +0 -20
  195. package/generator/test/azure/mock_api_tests/test_azure_core_lro_standard.py +0 -32
  196. package/generator/test/azure/mock_api_tests/test_azure_core_model.py +0 -30
  197. package/generator/test/azure/mock_api_tests/test_azure_core_page.py +0 -71
  198. package/generator/test/azure/mock_api_tests/test_azure_core_scalar.py +0 -35
  199. package/generator/test/azure/mock_api_tests/test_azure_core_traits.py +0 -85
  200. package/generator/test/azure/mock_api_tests/test_azure_encode_duration.py +0 -18
  201. package/generator/test/azure/mock_api_tests/test_azure_example_basic.py +0 -29
  202. package/generator/test/azure/mock_api_tests/test_azure_payload_pageable.py +0 -18
  203. package/generator/test/azure/mock_api_tests/test_azure_resource_manager_method_subscription_id.py +0 -235
  204. package/generator/test/azure/mock_api_tests/test_azure_resource_manager_multi_service.py +0 -104
  205. package/generator/test/azure/mock_api_tests/test_azure_resource_manager_multi_service_shared_models.py +0 -128
  206. package/generator/test/azure/mock_api_tests/test_azure_special_headers_client_request_id.py +0 -29
  207. package/generator/test/azure/mock_api_tests/test_azure_versioning_previewversion.py +0 -50
  208. package/generator/test/azure/mock_api_tests/test_clear_output_folder.py +0 -23
  209. package/generator/test/azure/mock_api_tests/test_client_namespace.py +0 -32
  210. package/generator/test/azure/mock_api_tests/test_client_naming.py +0 -57
  211. package/generator/test/azure/mock_api_tests/test_client_naming_enum_conflict.py +0 -35
  212. package/generator/test/azure/mock_api_tests/test_client_overload.py +0 -25
  213. package/generator/test/azure/mock_api_tests/test_client_structure.py +0 -60
  214. package/generator/test/azure/mock_api_tests/test_client_structure_clientoperationgroup.py +0 -29
  215. package/generator/test/azure/mock_api_tests/test_encode_duration.py +0 -60
  216. package/generator/test/azure/mock_api_tests/test_encode_numeric.py +0 -31
  217. package/generator/test/azure/mock_api_tests/test_model_base_flatten_compatibility.py +0 -251
  218. package/generator/test/azure/mock_api_tests/test_parameters_basic.py +0 -22
  219. package/generator/test/azure/mock_api_tests/test_parameters_spread.py +0 -66
  220. package/generator/test/azure/mock_api_tests/test_payload_content_negotiation.py +0 -33
  221. package/generator/test/azure/mock_api_tests/test_payload_multipart.py +0 -198
  222. package/generator/test/azure/mock_api_tests/test_resiliency_srv_driven.py +0 -124
  223. package/generator/test/azure/mock_api_tests/test_serialization_encoded_name_json.py +0 -21
  224. package/generator/test/azure/mock_api_tests/test_service_multi_service.py +0 -29
  225. package/generator/test/azure/mock_api_tests/test_special_words.py +0 -63
  226. package/generator/test/azure/requirements.txt +0 -125
  227. package/generator/test/azure/tox.ini +0 -64
  228. package/generator/test/data/image.jpg +0 -0
  229. package/generator/test/data/image.png +0 -0
  230. package/generator/test/dev_requirements.txt +0 -8
  231. package/generator/test/generic_mock_api_tests/asynctests/test_authentication_async.py +0 -140
  232. package/generator/test/generic_mock_api_tests/asynctests/test_encode_array_async.py +0 -139
  233. package/generator/test/generic_mock_api_tests/asynctests/test_encode_bytes_async.py +0 -132
  234. package/generator/test/generic_mock_api_tests/asynctests/test_encode_datetime_async.py +0 -127
  235. package/generator/test/generic_mock_api_tests/asynctests/test_headasboolean_async.py +0 -35
  236. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_body_optionality_async.py +0 -30
  237. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_collection_format_async.py +0 -38
  238. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_path_async.py +0 -24
  239. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_query_async.py +0 -18
  240. package/generator/test/generic_mock_api_tests/asynctests/test_payload_json_merge_patch_async.py +0 -98
  241. package/generator/test/generic_mock_api_tests/asynctests/test_payload_media_type_async.py +0 -27
  242. package/generator/test/generic_mock_api_tests/asynctests/test_payload_pageable_async.py +0 -134
  243. package/generator/test/generic_mock_api_tests/asynctests/test_payload_xml_async.py +0 -150
  244. package/generator/test/generic_mock_api_tests/asynctests/test_response_status_code_range_async.py +0 -38
  245. package/generator/test/generic_mock_api_tests/asynctests/test_routes_async.py +0 -331
  246. package/generator/test/generic_mock_api_tests/asynctests/test_server_endpoint_not_defined_async.py +0 -18
  247. package/generator/test/generic_mock_api_tests/asynctests/test_server_path_multiple_async.py +0 -25
  248. package/generator/test/generic_mock_api_tests/asynctests/test_server_path_single_async.py +0 -18
  249. package/generator/test/generic_mock_api_tests/asynctests/test_server_versions_not_versioned_async.py +0 -28
  250. package/generator/test/generic_mock_api_tests/asynctests/test_server_versions_versioned_async.py +0 -34
  251. package/generator/test/generic_mock_api_tests/asynctests/test_special_headers_conditional_request_async.py +0 -38
  252. package/generator/test/generic_mock_api_tests/asynctests/test_special_headers_repeatability_async.py +0 -19
  253. package/generator/test/generic_mock_api_tests/asynctests/test_specs_documentation_async.py +0 -59
  254. package/generator/test/generic_mock_api_tests/asynctests/test_streaming_jsonl_async.py +0 -27
  255. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_array_async.py +0 -127
  256. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_dictionary_async.py +0 -98
  257. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_enum_extensible_async.py +0 -25
  258. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_enum_fixed_async.py +0 -27
  259. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_file_async.py +0 -59
  260. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_empty_async.py +0 -32
  261. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_enum_discriminator_async.py +0 -70
  262. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_nested_discriminator_async.py +0 -85
  263. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_not_discriminated_async.py +0 -34
  264. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_recursive_async.py +0 -34
  265. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_single_discriminator_async.py +0 -67
  266. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_usage_async.py +0 -32
  267. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_visibility_async.py +0 -47
  268. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_additionalproperties_async.py +0 -353
  269. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_nullable_async.py +0 -110
  270. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_optional_async.py +0 -197
  271. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_valuetypes_async.py +0 -315
  272. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_scalar_async.py +0 -60
  273. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_union_async.py +0 -90
  274. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_added_async.py +0 -36
  275. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_made_optional_async.py +0 -21
  276. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_removed_async.py +0 -39
  277. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_renamed_from_async.py +0 -29
  278. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_return_type_changed_from_async.py +0 -18
  279. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_type_changed_from_async.py +0 -22
  280. package/generator/test/generic_mock_api_tests/conftest.py +0 -75
  281. package/generator/test/generic_mock_api_tests/data/image.jpg +0 -0
  282. package/generator/test/generic_mock_api_tests/data/image.png +0 -0
  283. package/generator/test/generic_mock_api_tests/test_authentication.py +0 -130
  284. package/generator/test/generic_mock_api_tests/test_encode_array.py +0 -126
  285. package/generator/test/generic_mock_api_tests/test_encode_bytes.py +0 -128
  286. package/generator/test/generic_mock_api_tests/test_encode_datetime.py +0 -123
  287. package/generator/test/generic_mock_api_tests/test_headasboolean.py +0 -33
  288. package/generator/test/generic_mock_api_tests/test_parameters_body_optionality.py +0 -27
  289. package/generator/test/generic_mock_api_tests/test_parameters_collection_format.py +0 -33
  290. package/generator/test/generic_mock_api_tests/test_parameters_path.py +0 -22
  291. package/generator/test/generic_mock_api_tests/test_parameters_query.py +0 -17
  292. package/generator/test/generic_mock_api_tests/test_payload_json_merge_patch.py +0 -93
  293. package/generator/test/generic_mock_api_tests/test_payload_media_type.py +0 -25
  294. package/generator/test/generic_mock_api_tests/test_payload_pageable.py +0 -99
  295. package/generator/test/generic_mock_api_tests/test_payload_xml.py +0 -135
  296. package/generator/test/generic_mock_api_tests/test_response_status_code_range.py +0 -36
  297. package/generator/test/generic_mock_api_tests/test_routes.py +0 -285
  298. package/generator/test/generic_mock_api_tests/test_server_endpoint_not_defined.py +0 -17
  299. package/generator/test/generic_mock_api_tests/test_server_path_multiple.py +0 -21
  300. package/generator/test/generic_mock_api_tests/test_server_path_single.py +0 -17
  301. package/generator/test/generic_mock_api_tests/test_server_versions_not_versioned.py +0 -25
  302. package/generator/test/generic_mock_api_tests/test_server_versions_versioned.py +0 -30
  303. package/generator/test/generic_mock_api_tests/test_special_headers_conditional_request.py +0 -34
  304. package/generator/test/generic_mock_api_tests/test_special_headers_repeatability.py +0 -18
  305. package/generator/test/generic_mock_api_tests/test_specs_documentation.py +0 -51
  306. package/generator/test/generic_mock_api_tests/test_streaming_jsonl.py +0 -25
  307. package/generator/test/generic_mock_api_tests/test_typetest_array.py +0 -111
  308. package/generator/test/generic_mock_api_tests/test_typetest_dictionary.py +0 -86
  309. package/generator/test/generic_mock_api_tests/test_typetest_enum_extensible.py +0 -23
  310. package/generator/test/generic_mock_api_tests/test_typetest_enum_fixed.py +0 -25
  311. package/generator/test/generic_mock_api_tests/test_typetest_file.py +0 -52
  312. package/generator/test/generic_mock_api_tests/test_typetest_model_empty.py +0 -29
  313. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_enum_discriminator.py +0 -58
  314. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_nested_discriminator.py +0 -79
  315. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_not_discriminated.py +0 -31
  316. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_recursive.py +0 -32
  317. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_single_discriminator.py +0 -60
  318. package/generator/test/generic_mock_api_tests/test_typetest_model_usage.py +0 -28
  319. package/generator/test/generic_mock_api_tests/test_typetest_model_visibility.py +0 -40
  320. package/generator/test/generic_mock_api_tests/test_typetest_property_additionalproperties.py +0 -314
  321. package/generator/test/generic_mock_api_tests/test_typetest_property_nullable.py +0 -102
  322. package/generator/test/generic_mock_api_tests/test_typetest_property_optional.py +0 -174
  323. package/generator/test/generic_mock_api_tests/test_typetest_property_valuetypes.py +0 -286
  324. package/generator/test/generic_mock_api_tests/test_typetest_scalar.py +0 -53
  325. package/generator/test/generic_mock_api_tests/test_typetest_union.py +0 -80
  326. package/generator/test/generic_mock_api_tests/test_typetest_union_discriminated.py +0 -290
  327. package/generator/test/generic_mock_api_tests/test_versioning_added.py +0 -33
  328. package/generator/test/generic_mock_api_tests/test_versioning_made_optional.py +0 -20
  329. package/generator/test/generic_mock_api_tests/test_versioning_removed.py +0 -37
  330. package/generator/test/generic_mock_api_tests/test_versioning_renamed_from.py +0 -27
  331. package/generator/test/generic_mock_api_tests/test_versioning_return_type_changed_from.py +0 -17
  332. package/generator/test/generic_mock_api_tests/test_versioning_type_changed_from.py +0 -21
  333. package/generator/test/unbranded/mock_api_tests/asynctests/test_auth_flow_async.py +0 -19
  334. package/generator/test/unbranded/mock_api_tests/asynctests/test_encode_duration_async.py +0 -63
  335. package/generator/test/unbranded/mock_api_tests/asynctests/test_encode_numeric_async.py +0 -35
  336. package/generator/test/unbranded/mock_api_tests/asynctests/test_parameters_basic_async.py +0 -24
  337. package/generator/test/unbranded/mock_api_tests/asynctests/test_parameters_spread_async.py +0 -76
  338. package/generator/test/unbranded/mock_api_tests/asynctests/test_payload_content_negotiation_async.py +0 -37
  339. package/generator/test/unbranded/mock_api_tests/asynctests/test_payload_multipart_async.py +0 -218
  340. package/generator/test/unbranded/mock_api_tests/asynctests/test_serialization_encoded_name_json_async.py +0 -24
  341. package/generator/test/unbranded/mock_api_tests/asynctests/test_special_words_async.py +0 -73
  342. package/generator/test/unbranded/mock_api_tests/asynctests/test_unbranded_async.py +0 -24
  343. package/generator/test/unbranded/mock_api_tests/conftest.py +0 -91
  344. package/generator/test/unbranded/mock_api_tests/data/image.jpg +0 -0
  345. package/generator/test/unbranded/mock_api_tests/data/image.png +0 -0
  346. package/generator/test/unbranded/mock_api_tests/test_auth_flow.py +0 -17
  347. package/generator/test/unbranded/mock_api_tests/test_encode_duration.py +0 -60
  348. package/generator/test/unbranded/mock_api_tests/test_encode_numeric.py +0 -32
  349. package/generator/test/unbranded/mock_api_tests/test_parameters_basic.py +0 -22
  350. package/generator/test/unbranded/mock_api_tests/test_parameters_spread.py +0 -66
  351. package/generator/test/unbranded/mock_api_tests/test_payload_content_negotiation.py +0 -33
  352. package/generator/test/unbranded/mock_api_tests/test_payload_multipart.py +0 -200
  353. package/generator/test/unbranded/mock_api_tests/test_serialization_encoded_name_json.py +0 -22
  354. package/generator/test/unbranded/mock_api_tests/test_special_words.py +0 -66
  355. package/generator/test/unbranded/mock_api_tests/test_unbranded.py +0 -65
  356. package/generator/test/unbranded/requirements.txt +0 -69
  357. package/generator/test/unbranded/tox.ini +0 -64
  358. package/generator/test/unittests/conftest.py +0 -15
  359. package/generator/test/unittests/requirements.txt +0 -3
  360. package/generator/test/unittests/test_enums.py +0 -89
  361. package/generator/test/unittests/test_model_base_serialization.py +0 -4906
  362. package/generator/test/unittests/test_model_base_xml_serialization.py +0 -1239
  363. package/generator/test/unittests/test_name_converter.py +0 -35
  364. package/generator/test/unittests/test_optional_return_type.py +0 -268
  365. package/generator/test/unittests/test_parameter_ordering.py +0 -104
  366. package/generator/test/unittests/test_sort_schema.py +0 -93
  367. package/generator/test/unittests/tox.ini +0 -5
  368. /package/eng/scripts/ci/{pyproject.toml → config/pyproject.toml} +0 -0
@@ -1,132 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from azure.resourcemanager.multiservicesharedmodels.combined.aio import CombinedClient
8
- from azure.resourcemanager.multiservicesharedmodels.combined.models import (
9
- VirtualMachine,
10
- VirtualMachineProperties,
11
- StorageAccount,
12
- StorageAccountProperties,
13
- SharedMetadata,
14
- )
15
-
16
-
17
- @pytest.fixture
18
- async def client(credential, authentication_policy):
19
- """Create a Combined async client for testing."""
20
- return CombinedClient(
21
- credential=credential,
22
- subscription_id="00000000-0000-0000-0000-000000000000",
23
- base_url="http://localhost:3000",
24
- authentication_policy=authentication_policy,
25
- polling_interval=0.1,
26
- )
27
-
28
-
29
- @pytest.mark.asyncio
30
- async def test_virtual_machines_get(client):
31
- """Test getting a virtual machine with shared metadata."""
32
- resource_group_name = "test-rg"
33
- vm_name = "vm-shared1"
34
-
35
- result = await client.virtual_machines.get(resource_group_name=resource_group_name, vm_name=vm_name)
36
-
37
- assert result is not None
38
- assert isinstance(result, VirtualMachine)
39
- assert result.name == vm_name
40
- assert result.location == "eastus"
41
- assert result.type == "Microsoft.Compute/virtualMachinesShared"
42
- assert result.properties is not None
43
- assert result.properties.provisioning_state == "Succeeded"
44
- assert result.properties.metadata is not None
45
- assert result.properties.metadata.created_by == "user@example.com"
46
- assert result.properties.metadata.tags == {"environment": "production"}
47
-
48
-
49
- @pytest.mark.asyncio
50
- async def test_virtual_machines_create_or_update(client):
51
- """Test creating or updating a virtual machine with shared metadata."""
52
- resource_group_name = "test-rg"
53
- vm_name = "vm-shared1"
54
-
55
- vm_resource = VirtualMachine(
56
- location="eastus",
57
- properties=VirtualMachineProperties(
58
- metadata=SharedMetadata(
59
- created_by="user@example.com",
60
- tags={"environment": "production"},
61
- ),
62
- ),
63
- )
64
-
65
- poller = await client.virtual_machines.begin_create_or_update(
66
- resource_group_name=resource_group_name,
67
- vm_name=vm_name,
68
- resource=vm_resource,
69
- )
70
-
71
- result = await poller.result()
72
- assert result is not None
73
- assert isinstance(result, VirtualMachine)
74
- assert result.location == "eastus"
75
- assert result.properties is not None
76
- assert result.properties.provisioning_state == "Succeeded"
77
- assert result.properties.metadata is not None
78
- assert result.properties.metadata.created_by == "user@example.com"
79
- assert result.properties.metadata.tags == {"environment": "production"}
80
-
81
-
82
- @pytest.mark.asyncio
83
- async def test_storage_accounts_get(client):
84
- """Test getting a storage account with shared metadata."""
85
- resource_group_name = "test-rg"
86
- account_name = "account1"
87
-
88
- result = await client.storage_accounts.get(resource_group_name=resource_group_name, account_name=account_name)
89
-
90
- assert result is not None
91
- assert isinstance(result, StorageAccount)
92
- assert result.name == account_name
93
- assert result.location == "westus"
94
- assert result.type == "Microsoft.Storage/storageAccounts"
95
- assert result.properties is not None
96
- assert result.properties.provisioning_state == "Succeeded"
97
- assert result.properties.metadata is not None
98
- assert result.properties.metadata.created_by == "admin@example.com"
99
- assert result.properties.metadata.tags == {"department": "engineering"}
100
-
101
-
102
- @pytest.mark.asyncio
103
- async def test_storage_accounts_create_or_update(client):
104
- """Test creating or updating a storage account with shared metadata."""
105
- resource_group_name = "test-rg"
106
- account_name = "account1"
107
-
108
- storage_resource = StorageAccount(
109
- location="westus",
110
- properties=StorageAccountProperties(
111
- metadata=SharedMetadata(
112
- created_by="admin@example.com",
113
- tags={"department": "engineering"},
114
- ),
115
- ),
116
- )
117
-
118
- poller = await client.storage_accounts.begin_create_or_update(
119
- resource_group_name=resource_group_name,
120
- account_name=account_name,
121
- resource=storage_resource,
122
- )
123
-
124
- result = await poller.result()
125
- assert result is not None
126
- assert isinstance(result, StorageAccount)
127
- assert result.location == "westus"
128
- assert result.properties is not None
129
- assert result.properties.provisioning_state == "Succeeded"
130
- assert result.properties.metadata is not None
131
- assert result.properties.metadata.created_by == "admin@example.com"
132
- assert result.properties.metadata.tags == {"department": "engineering"}
@@ -1,30 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import functools
7
-
8
- import pytest
9
-
10
- from azure.specialheaders.xmsclientrequestid.aio import XmsClientRequestIdClient
11
-
12
-
13
- @pytest.fixture
14
- async def client():
15
- async with XmsClientRequestIdClient() as client:
16
- yield client
17
-
18
-
19
- @pytest.mark.asyncio
20
- async def test_get(client: XmsClientRequestIdClient, check_client_request_id_header):
21
- checked = {}
22
- result, resp = await client.get(
23
- cls=lambda x, y, z: (y, x),
24
- raw_request_hook=functools.partial(
25
- check_client_request_id_header, header="x-ms-client-request-id", checked=checked
26
- ),
27
- )
28
- assert result is None
29
- assert resp.http_response.headers["x-ms-client-request-id"] == checked["x-ms-client-request-id"]
30
- pass
@@ -1,53 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from specs.azure.versioning.previewversion.aio import PreviewVersionClient
8
- from specs.azure.versioning.previewversion.models import UpdateWidgetColorRequest
9
-
10
-
11
- @pytest.fixture
12
- async def client():
13
- async with PreviewVersionClient() as client:
14
- yield client
15
-
16
-
17
- @pytest.fixture
18
- async def stable_client():
19
- async with PreviewVersionClient(api_version="2024-06-01") as client:
20
- yield client
21
-
22
-
23
- @pytest.mark.asyncio
24
- async def test_get_widget(client: PreviewVersionClient):
25
- result = await client.get_widget(id="widget-123")
26
- assert result.id == "widget-123"
27
- assert result.name == "Sample Widget"
28
- assert result.color == "blue"
29
-
30
-
31
- @pytest.mark.asyncio
32
- async def test_update_widget_color(client: PreviewVersionClient):
33
- color_update = UpdateWidgetColorRequest(color="red")
34
- result = await client.update_widget_color(id="widget-123", color_update=color_update)
35
- assert result.id == "widget-123"
36
- assert result.name == "Sample Widget"
37
- assert result.color == "red"
38
-
39
- with pytest.raises(ValueError):
40
- async with PreviewVersionClient(api_version="2024-06-01") as stable_client:
41
- await stable_client.update_widget_color(id="widget-123", color_update=color_update)
42
-
43
-
44
- @pytest.mark.asyncio
45
- async def test_list_widgets(stable_client: PreviewVersionClient):
46
- result = await stable_client.list_widgets(name="test")
47
- assert len(result.widgets) == 1
48
- assert result.widgets[0].id == "widget-1"
49
- assert result.widgets[0].name == "test"
50
-
51
- with pytest.raises(ValueError):
52
- async with PreviewVersionClient(api_version="2024-06-01") as client:
53
- await client.list_widgets(name="test", color="test")
@@ -1,34 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from client.clientnamespace.aio import ClientNamespaceFirstClient
8
- from client.clientnamespace.first.models import FirstClientResult
9
-
10
- from client.clientnamespace.second.aio import ClientNamespaceSecondClient
11
- from client.clientnamespace.second.models import SecondClientResult
12
- from client.clientnamespace.second.sub.models import SecondClientEnumType
13
-
14
-
15
- @pytest.fixture
16
- async def first_client():
17
- async with ClientNamespaceFirstClient() as client:
18
- yield client
19
-
20
-
21
- @pytest.fixture
22
- async def second_client():
23
- async with ClientNamespaceSecondClient() as client:
24
- yield client
25
-
26
-
27
- @pytest.mark.asyncio
28
- async def test_get_first(first_client: ClientNamespaceFirstClient):
29
- assert await first_client.get_first() == FirstClientResult(name="first")
30
-
31
-
32
- @pytest.mark.asyncio
33
- async def test_get_second(second_client: ClientNamespaceSecondClient):
34
- assert await second_client.get_second() == SecondClientResult(type=SecondClientEnumType.SECOND)
@@ -1,69 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from client.naming.main.aio import NamingClient
8
- from client.naming.main import models
9
-
10
-
11
- @pytest.fixture
12
- async def client():
13
- async with NamingClient() as client:
14
- yield client
15
-
16
-
17
- @pytest.mark.asyncio
18
- async def test_client(client: NamingClient):
19
- await client.property.client(models.ClientNameModel(client_name=True))
20
-
21
-
22
- @pytest.mark.asyncio
23
- async def test_language(client: NamingClient):
24
- await client.property.language(models.LanguageClientNameModel(python_name=True))
25
-
26
-
27
- @pytest.mark.asyncio
28
- async def test_compatible_with_encoded_name(client: NamingClient):
29
- await client.property.compatible_with_encoded_name(models.ClientNameAndJsonEncodedNameModel(client_name=True))
30
-
31
-
32
- @pytest.mark.asyncio
33
- async def test_operation(client: NamingClient):
34
- await client.client_name()
35
-
36
-
37
- @pytest.mark.asyncio
38
- async def test_parameter(client: NamingClient):
39
- await client.parameter(client_name="true")
40
-
41
-
42
- @pytest.mark.asyncio
43
- async def test_header_request(client: NamingClient):
44
- await client.header.request(client_name="true")
45
-
46
-
47
- @pytest.mark.asyncio
48
- async def test_header_response(client: NamingClient):
49
- assert (await client.header.response(cls=lambda x, y, z: z))["default-name"] == "true"
50
-
51
-
52
- @pytest.mark.asyncio
53
- async def test_model_client(client: NamingClient):
54
- await client.model_client.client(models.ClientModel(default_name=True))
55
-
56
-
57
- @pytest.mark.asyncio
58
- async def test_model_language(client: NamingClient):
59
- await client.model_client.language(models.PythonModel(default_name=True))
60
-
61
-
62
- @pytest.mark.asyncio
63
- async def test_union_enum_member_name(client: NamingClient):
64
- await client.union_enum.union_enum_member_name(models.ExtensibleEnum.CLIENT_ENUM_VALUE1)
65
-
66
-
67
- @pytest.mark.asyncio
68
- async def test_union_enum_name(client: NamingClient):
69
- await client.union_enum.union_enum_name(models.ClientExtensibleEnum.ENUM_VALUE1)
@@ -1,37 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from client.naming.enumconflict.aio import EnumConflictClient
8
- from client.naming.enumconflict.firstnamespace import models as first_models
9
- from client.naming.enumconflict.secondnamespace import models as second_models
10
-
11
-
12
- @pytest.fixture
13
- async def client():
14
- async with EnumConflictClient() as client:
15
- yield client
16
-
17
-
18
- @pytest.mark.asyncio
19
- async def test_first_operations_first_async(client: EnumConflictClient):
20
- """Test enum with same name in different namespace - first namespace (async)."""
21
- body = first_models.FirstModel(status=first_models.Status.ACTIVE, name="test")
22
-
23
- response = await client.first_operations.first(body=body)
24
-
25
- assert response.status == "active"
26
- assert response.name == "test"
27
-
28
-
29
- @pytest.mark.asyncio
30
- async def test_second_operations_second_async(client: EnumConflictClient):
31
- """Test enum with same name in different namespace - second namespace (async)."""
32
- body = second_models.SecondModel(status=second_models.SecondStatus.RUNNING, description="test description")
33
-
34
- response = await client.second_operations.second(body=body)
35
-
36
- assert response.status == "running"
37
- assert response.description == "test description"
@@ -1,27 +0,0 @@
1
- import pytest
2
- from client.overload.aio import OverloadClient
3
-
4
-
5
- class TestClientOverloadAsync:
6
- @pytest.fixture
7
- def client(self):
8
- return OverloadClient(endpoint="http://localhost:3000")
9
-
10
- @pytest.mark.asyncio
11
- async def test_list(self, client: OverloadClient):
12
- result = await client.list()
13
- assert len(result) == 2
14
- assert result[0]["id"] == "1"
15
- assert result[0]["name"] == "foo"
16
- assert result[0]["scope"] == "car"
17
- assert result[1]["id"] == "2"
18
- assert result[1]["name"] == "bar"
19
- assert result[1]["scope"] == "bike"
20
-
21
- @pytest.mark.asyncio
22
- async def test_list_by_scope(self, client: OverloadClient):
23
- result = await client.list_by_scope("car")
24
- assert len(result) == 1
25
- assert result[0]["id"] == "1"
26
- assert result[0]["name"] == "foo"
27
- assert result[0]["scope"] == "car"
@@ -1,64 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from client.structure.service.models import ClientType
8
- from client.structure.service.aio import ServiceClient
9
- from client.structure.multiclient.aio import ClientAClient, ClientBClient
10
- from client.structure.renamedoperation.aio import RenamedOperationClient
11
- from client.structure.twooperationgroup.aio import TwoOperationGroupClient
12
-
13
-
14
- @pytest.mark.asyncio
15
- async def test_structure_default():
16
- client = ServiceClient(endpoint="http://localhost:3000", client=ClientType.DEFAULT)
17
- await client.one()
18
- await client.two()
19
- await client.foo.three()
20
- await client.foo.four()
21
- await client.bar.five()
22
- await client.bar.six()
23
- await client.baz.foo.seven()
24
- await client.qux.eight()
25
- await client.qux.bar.nine()
26
-
27
-
28
- @pytest.mark.asyncio
29
- async def test_structure_multiclient():
30
- client_a = ClientAClient(endpoint="http://localhost:3000", client=ClientType.MULTI_CLIENT)
31
- await client_a.renamed_one()
32
- await client_a.renamed_three()
33
- await client_a.renamed_five()
34
-
35
- client_b = ClientBClient(endpoint="http://localhost:3000", client=ClientType.MULTI_CLIENT)
36
- await client_b.renamed_two()
37
- await client_b.renamed_four()
38
- await client_b.renamed_six()
39
-
40
-
41
- @pytest.mark.skip(reason="will reopen the cases after upgrade `@azure-tools/typespec-client-generator-core` to 0.67.0")
42
- @pytest.mark.asyncio
43
- async def test_structure_renamed_operation():
44
- client = RenamedOperationClient(endpoint="http://localhost:3000", client=ClientType.RENAMED_OPERATION)
45
- await client.renamed_one()
46
- await client.renamed_three()
47
- await client.renamed_five()
48
-
49
- await client.renamed_two()
50
- await client.renamed_four()
51
- await client.renamed_six()
52
-
53
-
54
- @pytest.mark.skip(reason="will reopen the cases after upgrade `@azure-tools/typespec-client-generator-core` to 0.67.0")
55
- @pytest.mark.asyncio
56
- async def test_structure_two_operation_group():
57
- client = TwoOperationGroupClient(endpoint="http://localhost:3000", client=ClientType.TWO_OPERATION_GROUP)
58
- await client.one()
59
- await client.three()
60
- await client.four()
61
-
62
- await client.two()
63
- await client.five()
64
- await client.six()
@@ -1,31 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from client.structure.clientoperationgroup.models import ClientType
8
- from client.structure.clientoperationgroup.aio import FirstClient, SecondClient
9
-
10
-
11
- @pytest.mark.skip(reason="will reopen the cases after upgrade `@azure-tools/typespec-client-generator-core` to 0.67.0")
12
- @pytest.mark.asyncio
13
- async def test_first_client_operations():
14
- client = FirstClient(endpoint="http://localhost:3000", client=ClientType.CLIENT_OPERATION_GROUP)
15
-
16
- await client.one()
17
-
18
- await client.two()
19
- await client.three()
20
-
21
- await client.four()
22
-
23
-
24
- @pytest.mark.skip(reason="will reopen the cases after upgrade `@azure-tools/typespec-client-generator-core` to 0.67.0")
25
- @pytest.mark.asyncio
26
- async def test_second_client_operations():
27
- client = SecondClient(endpoint="http://localhost:3000", client=ClientType.CLIENT_OPERATION_GROUP)
28
-
29
- await client.five()
30
-
31
- await client.six()
@@ -1,63 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import datetime
7
-
8
- import pytest
9
- from encode.duration.aio import DurationClient
10
- from encode.duration.models import (
11
- Int32SecondsDurationProperty,
12
- ISO8601DurationProperty,
13
- FloatSecondsDurationProperty,
14
- DefaultDurationProperty,
15
- FloatSecondsDurationArrayProperty,
16
- )
17
-
18
-
19
- @pytest.fixture
20
- async def client():
21
- async with DurationClient() as client:
22
- yield client
23
-
24
-
25
- @pytest.mark.asyncio
26
- async def test_query(client: DurationClient):
27
- await client.query.default(input=datetime.timedelta(days=40))
28
- await client.query.iso8601(input=datetime.timedelta(days=40))
29
- await client.query.int32_seconds(input=36)
30
- await client.query.int32_seconds_array(input=[36, 47])
31
- await client.query.float_seconds(input=35.625)
32
- await client.query.float64_seconds(input=35.625)
33
-
34
-
35
- @pytest.mark.asyncio
36
- async def test_property(client: DurationClient):
37
- result = await client.property.default(DefaultDurationProperty(value=datetime.timedelta(days=40)))
38
- assert result.value == datetime.timedelta(days=40)
39
- result = await client.property.default(DefaultDurationProperty(value="P40D"))
40
- assert result.value == datetime.timedelta(days=40)
41
- result = await client.property.iso8601(ISO8601DurationProperty(value=datetime.timedelta(days=40)))
42
- assert result.value == datetime.timedelta(days=40)
43
- result = await client.property.iso8601(ISO8601DurationProperty(value="P40D"))
44
- assert result.value == datetime.timedelta(days=40)
45
- result = await client.property.int32_seconds(Int32SecondsDurationProperty(value=36))
46
- assert result.value == 36
47
- result = await client.property.float_seconds(FloatSecondsDurationProperty(value=35.625))
48
- assert abs(result.value - 35.625) < 0.0001
49
- result = await client.property.float64_seconds(FloatSecondsDurationProperty(value=35.625))
50
- assert abs(result.value - 35.625) < 0.0001
51
- result = await client.property.float_seconds_array(FloatSecondsDurationArrayProperty(value=[35.625, 46.75]))
52
- assert abs(result.value[0] - 35.625) < 0.0001
53
- assert abs(result.value[1] - 46.75) < 0.0001
54
-
55
-
56
- @pytest.mark.asyncio
57
- async def test_header(client: DurationClient):
58
- await client.header.default(duration=datetime.timedelta(days=40))
59
- await client.header.iso8601(duration=datetime.timedelta(days=40))
60
- await client.header.iso8601_array(duration=[datetime.timedelta(days=40), datetime.timedelta(days=50)])
61
- await client.header.int32_seconds(duration=36)
62
- await client.header.float_seconds(duration=35.625)
63
- await client.header.float64_seconds(duration=35.625)
@@ -1,35 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from encode.numeric.aio import NumericClient
8
- from encode.numeric import models
9
-
10
-
11
- @pytest.fixture
12
- async def client():
13
- async with NumericClient() as client:
14
- yield client
15
-
16
-
17
- @pytest.mark.asyncio
18
- async def test_safeint_as_string(client: NumericClient):
19
- result = await client.property.safeint_as_string(models.SafeintAsStringProperty(value=10000000000))
20
- assert result.value == 10000000000
21
- assert result["value"] == "10000000000"
22
-
23
-
24
- @pytest.mark.asyncio
25
- async def test_uint32_as_string_optional(client: NumericClient):
26
- result = await client.property.uint32_as_string_optional(models.Uint32AsStringProperty(value=1))
27
- assert result.value == 1
28
- assert result["value"] == "1"
29
-
30
-
31
- @pytest.mark.asyncio
32
- async def test_uint8_as_string_optional(client: NumericClient):
33
- result = await client.property.uint8_as_string(models.Uint32AsStringProperty(value=255))
34
- assert result.value == 255
35
- assert result["value"] == "255"
@@ -1,24 +0,0 @@
1
- # -------------------------------------------------------------------------
2
- # Copyright (c) Microsoft Corporation. All rights reserved.
3
- # Licensed under the MIT License. See License.txt in the project root for
4
- # license information.
5
- # --------------------------------------------------------------------------
6
- import pytest
7
- from parameters.basic.aio import BasicClient
8
- from parameters.basic.models import User
9
-
10
-
11
- @pytest.fixture
12
- async def client():
13
- async with BasicClient() as client:
14
- yield client
15
-
16
-
17
- @pytest.mark.asyncio
18
- async def test_explicit_simple(client: BasicClient):
19
- await client.explicit_body.simple(User(name="foo"))
20
-
21
-
22
- @pytest.mark.asyncio
23
- async def test_implicit_simple(client: BasicClient):
24
- await client.implicit_body.simple(name="foo")