@typespec/http-client-python 0.28.1 → 0.28.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 (311) hide show
  1. package/dist/emitter/code-model.d.ts.map +1 -1
  2. package/dist/emitter/code-model.js +6 -6
  3. package/dist/emitter/code-model.js.map +1 -1
  4. package/dist/emitter/emitter.d.ts.map +1 -1
  5. package/dist/emitter/emitter.js +27 -28
  6. package/dist/emitter/emitter.js.map +1 -1
  7. package/dist/emitter/lib.d.ts +4 -1
  8. package/dist/emitter/lib.d.ts.map +1 -1
  9. package/dist/emitter/lib.js.map +1 -1
  10. package/dist/emitter/system-requirements.js +6 -4
  11. package/dist/emitter/system-requirements.js.map +1 -1
  12. package/dist/emitter/types.d.ts +2 -5
  13. package/dist/emitter/types.d.ts.map +1 -1
  14. package/dist/emitter/types.js +55 -58
  15. package/dist/emitter/types.js.map +1 -1
  16. package/dist/emitter/utils.d.ts.map +1 -1
  17. package/dist/emitter/utils.js +16 -17
  18. package/dist/emitter/utils.js.map +1 -1
  19. package/emitter/src/code-model.ts +6 -13
  20. package/emitter/src/emitter.ts +29 -31
  21. package/emitter/src/lib.ts +4 -0
  22. package/emitter/src/system-requirements.ts +4 -4
  23. package/emitter/src/types.ts +67 -57
  24. package/emitter/src/utils.ts +16 -18
  25. package/emitter/temp/tsconfig.tsbuildinfo +1 -1
  26. package/eng/scripts/Build-Packages.ps1 +62 -37
  27. package/eng/scripts/Check-GitChanges.ps1 +30 -3
  28. package/eng/scripts/Functions.ps1 +54 -15
  29. package/eng/scripts/Generate.ps1 +42 -8
  30. package/eng/scripts/Generation.psm1 +44 -15
  31. package/eng/scripts/Initialize-Repository.ps1 +29 -11
  32. package/eng/scripts/Test-Packages.ps1 +47 -31
  33. package/eng/scripts/ci/config/eslint-ci.config.mjs +54 -0
  34. package/eng/scripts/ci/dev_requirements.txt +1 -0
  35. package/eng/scripts/ci/format.ts +232 -2
  36. package/eng/scripts/ci/lint.ts +216 -20
  37. package/eng/scripts/ci/regenerate-common.ts +18 -14
  38. package/eng/scripts/ci/regenerate.ts +305 -68
  39. package/eng/scripts/ci/run-tests.ts +402 -0
  40. package/eng/scripts/ci/run_mypy.py +4 -3
  41. package/eng/scripts/ci/run_pylint.py +4 -3
  42. package/eng/scripts/ci/run_pyright.py +4 -3
  43. package/eng/scripts/ci/typecheck.ts +225 -0
  44. package/eng/scripts/ci/util.py +1 -1
  45. package/eng/scripts/ci/utils.ts +5 -5
  46. package/eng/scripts/setup/__pycache__/package_manager.cpython-311.pyc +0 -0
  47. package/eng/scripts/setup/__pycache__/venvtools.cpython-311.pyc +0 -0
  48. package/eng/scripts/setup/build.ts +1 -1
  49. package/eng/scripts/setup/build_pygen_wheel.py +1 -0
  50. package/eng/scripts/setup/install.py +1 -0
  51. package/eng/scripts/setup/prepare.py +1 -0
  52. package/eng/scripts/setup/prepare.ts +1 -1
  53. package/eng/scripts/setup/run_tsp.py +3 -3
  54. package/eng/scripts/setup/system-requirements.ts +8 -4
  55. package/eng/scripts/setup/venvtools.py +1 -0
  56. package/generator/build/lib/pygen/codegen/models/operation.py +9 -8
  57. package/generator/build/lib/pygen/codegen/templates/model_base.py.jinja2 +157 -64
  58. package/generator/dist/pygen-0.1.0-py3-none-any.whl +0 -0
  59. package/generator/pygen/codegen/models/operation.py +9 -8
  60. package/generator/pygen/codegen/templates/model_base.py.jinja2 +157 -64
  61. package/package.json +48 -42
  62. package/eng/scripts/ci/run-ci.ts +0 -89
  63. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_commonproperties_async.py +0 -94
  64. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_largeheader_async.py +0 -30
  65. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_nonresource_async.py +0 -36
  66. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_operationtemplates_async.py +0 -205
  67. package/generator/test/azure/mock_api_tests/asynctests/test_azure_arm_resource_async.py +0 -478
  68. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_access_async.py +0 -101
  69. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_api_version_header_async.py +0 -18
  70. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_api_version_path_async.py +0 -18
  71. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_api_version_query_async.py +0 -18
  72. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_client_default_value_async.py +0 -46
  73. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_client_initialization_async.py +0 -58
  74. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_client_location_async.py +0 -82
  75. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_deserialize_empty_string_as_null_async.py +0 -20
  76. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_flatten_async.py +0 -115
  77. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_hierrarchy_building_async.py +0 -53
  78. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_next_link_verb_async.py +0 -28
  79. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_override_async.py +0 -106
  80. package/generator/test/azure/mock_api_tests/asynctests/test_azure_client_generator_core_usage_async.py +0 -38
  81. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_basic_async.py +0 -76
  82. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_lro_rpc_async.py +0 -22
  83. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_lro_standard_async.py +0 -39
  84. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_model_async.py +0 -33
  85. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_page_async.py +0 -80
  86. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_scalar_async.py +0 -41
  87. package/generator/test/azure/mock_api_tests/asynctests/test_azure_core_traits_async.py +0 -87
  88. package/generator/test/azure/mock_api_tests/asynctests/test_azure_encode_duration_async.py +0 -19
  89. package/generator/test/azure/mock_api_tests/asynctests/test_azure_example_basic_async.py +0 -30
  90. package/generator/test/azure/mock_api_tests/asynctests/test_azure_payload_pageable_async.py +0 -19
  91. package/generator/test/azure/mock_api_tests/asynctests/test_azure_resource_manager_method_subscription_id_async.py +0 -248
  92. package/generator/test/azure/mock_api_tests/asynctests/test_azure_resource_manager_multi_service_async.py +0 -110
  93. package/generator/test/azure/mock_api_tests/asynctests/test_azure_resource_manager_multi_service_shared_models_async.py +0 -132
  94. package/generator/test/azure/mock_api_tests/asynctests/test_azure_special_headers_client_request_id_async.py +0 -30
  95. package/generator/test/azure/mock_api_tests/asynctests/test_azure_versioning_previewversion_async.py +0 -53
  96. package/generator/test/azure/mock_api_tests/asynctests/test_client_namespace_async.py +0 -34
  97. package/generator/test/azure/mock_api_tests/asynctests/test_client_naming_async.py +0 -69
  98. package/generator/test/azure/mock_api_tests/asynctests/test_client_naming_enum_conflict_async.py +0 -37
  99. package/generator/test/azure/mock_api_tests/asynctests/test_client_overload_async.py +0 -27
  100. package/generator/test/azure/mock_api_tests/asynctests/test_client_structure_async.py +0 -64
  101. package/generator/test/azure/mock_api_tests/asynctests/test_client_structure_clientoperationgroup_async.py +0 -31
  102. package/generator/test/azure/mock_api_tests/asynctests/test_encode_duration_async.py +0 -63
  103. package/generator/test/azure/mock_api_tests/asynctests/test_encode_numeric_async.py +0 -35
  104. package/generator/test/azure/mock_api_tests/asynctests/test_parameters_basic_async.py +0 -24
  105. package/generator/test/azure/mock_api_tests/asynctests/test_parameters_spread_async.py +0 -76
  106. package/generator/test/azure/mock_api_tests/asynctests/test_payload_content_negotiation_async.py +0 -37
  107. package/generator/test/azure/mock_api_tests/asynctests/test_payload_multipart_async.py +0 -216
  108. package/generator/test/azure/mock_api_tests/asynctests/test_resiliency_srv_driven_async.py +0 -130
  109. package/generator/test/azure/mock_api_tests/asynctests/test_serialization_encoded_name_json_async.py +0 -24
  110. package/generator/test/azure/mock_api_tests/asynctests/test_service_multi_service_async.py +0 -31
  111. package/generator/test/azure/mock_api_tests/asynctests/test_special_words_async.py +0 -71
  112. package/generator/test/azure/mock_api_tests/conftest.py +0 -207
  113. package/generator/test/azure/mock_api_tests/data/image.jpg +0 -0
  114. package/generator/test/azure/mock_api_tests/data/image.png +0 -0
  115. package/generator/test/azure/mock_api_tests/test_azure_arm_commonproperties.py +0 -89
  116. package/generator/test/azure/mock_api_tests/test_azure_arm_largeheader.py +0 -27
  117. package/generator/test/azure/mock_api_tests/test_azure_arm_nonresource.py +0 -34
  118. package/generator/test/azure/mock_api_tests/test_azure_arm_operationtemplates.py +0 -180
  119. package/generator/test/azure/mock_api_tests/test_azure_arm_resource.py +0 -436
  120. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_access.py +0 -92
  121. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_api_version_header.py +0 -17
  122. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_api_version_path.py +0 -17
  123. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_api_version_query.py +0 -17
  124. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_client_default_value.py +0 -42
  125. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_client_initialization.py +0 -51
  126. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_client_location.py +0 -70
  127. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_deserialize_empty_string_as_null.py +0 -19
  128. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_flatten.py +0 -104
  129. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_hierrarchy_building.py +0 -45
  130. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_next_link_verb.py +0 -27
  131. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_override.py +0 -102
  132. package/generator/test/azure/mock_api_tests/test_azure_client_generator_core_usage.py +0 -32
  133. package/generator/test/azure/mock_api_tests/test_azure_core_basic.py +0 -70
  134. package/generator/test/azure/mock_api_tests/test_azure_core_lro_rpc.py +0 -20
  135. package/generator/test/azure/mock_api_tests/test_azure_core_lro_standard.py +0 -32
  136. package/generator/test/azure/mock_api_tests/test_azure_core_model.py +0 -30
  137. package/generator/test/azure/mock_api_tests/test_azure_core_page.py +0 -71
  138. package/generator/test/azure/mock_api_tests/test_azure_core_scalar.py +0 -35
  139. package/generator/test/azure/mock_api_tests/test_azure_core_traits.py +0 -85
  140. package/generator/test/azure/mock_api_tests/test_azure_encode_duration.py +0 -18
  141. package/generator/test/azure/mock_api_tests/test_azure_example_basic.py +0 -29
  142. package/generator/test/azure/mock_api_tests/test_azure_payload_pageable.py +0 -18
  143. package/generator/test/azure/mock_api_tests/test_azure_resource_manager_method_subscription_id.py +0 -235
  144. package/generator/test/azure/mock_api_tests/test_azure_resource_manager_multi_service.py +0 -104
  145. package/generator/test/azure/mock_api_tests/test_azure_resource_manager_multi_service_shared_models.py +0 -128
  146. package/generator/test/azure/mock_api_tests/test_azure_special_headers_client_request_id.py +0 -29
  147. package/generator/test/azure/mock_api_tests/test_azure_versioning_previewversion.py +0 -50
  148. package/generator/test/azure/mock_api_tests/test_clear_output_folder.py +0 -23
  149. package/generator/test/azure/mock_api_tests/test_client_namespace.py +0 -32
  150. package/generator/test/azure/mock_api_tests/test_client_naming.py +0 -57
  151. package/generator/test/azure/mock_api_tests/test_client_naming_enum_conflict.py +0 -35
  152. package/generator/test/azure/mock_api_tests/test_client_overload.py +0 -25
  153. package/generator/test/azure/mock_api_tests/test_client_structure.py +0 -60
  154. package/generator/test/azure/mock_api_tests/test_client_structure_clientoperationgroup.py +0 -29
  155. package/generator/test/azure/mock_api_tests/test_encode_duration.py +0 -60
  156. package/generator/test/azure/mock_api_tests/test_encode_numeric.py +0 -31
  157. package/generator/test/azure/mock_api_tests/test_model_base_flatten_compatibility.py +0 -251
  158. package/generator/test/azure/mock_api_tests/test_parameters_basic.py +0 -22
  159. package/generator/test/azure/mock_api_tests/test_parameters_spread.py +0 -66
  160. package/generator/test/azure/mock_api_tests/test_payload_content_negotiation.py +0 -33
  161. package/generator/test/azure/mock_api_tests/test_payload_multipart.py +0 -198
  162. package/generator/test/azure/mock_api_tests/test_resiliency_srv_driven.py +0 -124
  163. package/generator/test/azure/mock_api_tests/test_serialization_encoded_name_json.py +0 -21
  164. package/generator/test/azure/mock_api_tests/test_service_multi_service.py +0 -29
  165. package/generator/test/azure/mock_api_tests/test_special_words.py +0 -63
  166. package/generator/test/azure/requirements.txt +0 -125
  167. package/generator/test/azure/tox.ini +0 -64
  168. package/generator/test/data/image.jpg +0 -0
  169. package/generator/test/data/image.png +0 -0
  170. package/generator/test/dev_requirements.txt +0 -8
  171. package/generator/test/generic_mock_api_tests/asynctests/test_authentication_async.py +0 -140
  172. package/generator/test/generic_mock_api_tests/asynctests/test_encode_array_async.py +0 -139
  173. package/generator/test/generic_mock_api_tests/asynctests/test_encode_bytes_async.py +0 -132
  174. package/generator/test/generic_mock_api_tests/asynctests/test_encode_datetime_async.py +0 -127
  175. package/generator/test/generic_mock_api_tests/asynctests/test_headasboolean_async.py +0 -35
  176. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_body_optionality_async.py +0 -30
  177. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_collection_format_async.py +0 -38
  178. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_path_async.py +0 -24
  179. package/generator/test/generic_mock_api_tests/asynctests/test_parameters_query_async.py +0 -18
  180. package/generator/test/generic_mock_api_tests/asynctests/test_payload_json_merge_patch_async.py +0 -98
  181. package/generator/test/generic_mock_api_tests/asynctests/test_payload_media_type_async.py +0 -27
  182. package/generator/test/generic_mock_api_tests/asynctests/test_payload_pageable_async.py +0 -134
  183. package/generator/test/generic_mock_api_tests/asynctests/test_payload_xml_async.py +0 -150
  184. package/generator/test/generic_mock_api_tests/asynctests/test_response_status_code_range_async.py +0 -38
  185. package/generator/test/generic_mock_api_tests/asynctests/test_routes_async.py +0 -331
  186. package/generator/test/generic_mock_api_tests/asynctests/test_server_endpoint_not_defined_async.py +0 -18
  187. package/generator/test/generic_mock_api_tests/asynctests/test_server_path_multiple_async.py +0 -25
  188. package/generator/test/generic_mock_api_tests/asynctests/test_server_path_single_async.py +0 -18
  189. package/generator/test/generic_mock_api_tests/asynctests/test_server_versions_not_versioned_async.py +0 -28
  190. package/generator/test/generic_mock_api_tests/asynctests/test_server_versions_versioned_async.py +0 -34
  191. package/generator/test/generic_mock_api_tests/asynctests/test_special_headers_conditional_request_async.py +0 -38
  192. package/generator/test/generic_mock_api_tests/asynctests/test_special_headers_repeatability_async.py +0 -19
  193. package/generator/test/generic_mock_api_tests/asynctests/test_specs_documentation_async.py +0 -59
  194. package/generator/test/generic_mock_api_tests/asynctests/test_streaming_jsonl_async.py +0 -27
  195. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_array_async.py +0 -127
  196. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_dictionary_async.py +0 -98
  197. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_enum_extensible_async.py +0 -25
  198. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_enum_fixed_async.py +0 -27
  199. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_file_async.py +0 -59
  200. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_empty_async.py +0 -32
  201. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_enum_discriminator_async.py +0 -70
  202. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_nested_discriminator_async.py +0 -85
  203. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_not_discriminated_async.py +0 -34
  204. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_recursive_async.py +0 -34
  205. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_inheritance_single_discriminator_async.py +0 -67
  206. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_usage_async.py +0 -32
  207. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_model_visibility_async.py +0 -47
  208. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_additionalproperties_async.py +0 -353
  209. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_nullable_async.py +0 -110
  210. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_optional_async.py +0 -197
  211. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_property_valuetypes_async.py +0 -315
  212. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_scalar_async.py +0 -60
  213. package/generator/test/generic_mock_api_tests/asynctests/test_typetest_union_async.py +0 -90
  214. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_added_async.py +0 -36
  215. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_made_optional_async.py +0 -21
  216. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_removed_async.py +0 -39
  217. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_renamed_from_async.py +0 -29
  218. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_return_type_changed_from_async.py +0 -18
  219. package/generator/test/generic_mock_api_tests/asynctests/test_versioning_type_changed_from_async.py +0 -22
  220. package/generator/test/generic_mock_api_tests/conftest.py +0 -75
  221. package/generator/test/generic_mock_api_tests/data/image.jpg +0 -0
  222. package/generator/test/generic_mock_api_tests/data/image.png +0 -0
  223. package/generator/test/generic_mock_api_tests/test_authentication.py +0 -130
  224. package/generator/test/generic_mock_api_tests/test_encode_array.py +0 -126
  225. package/generator/test/generic_mock_api_tests/test_encode_bytes.py +0 -128
  226. package/generator/test/generic_mock_api_tests/test_encode_datetime.py +0 -123
  227. package/generator/test/generic_mock_api_tests/test_headasboolean.py +0 -33
  228. package/generator/test/generic_mock_api_tests/test_parameters_body_optionality.py +0 -27
  229. package/generator/test/generic_mock_api_tests/test_parameters_collection_format.py +0 -33
  230. package/generator/test/generic_mock_api_tests/test_parameters_path.py +0 -22
  231. package/generator/test/generic_mock_api_tests/test_parameters_query.py +0 -17
  232. package/generator/test/generic_mock_api_tests/test_payload_json_merge_patch.py +0 -93
  233. package/generator/test/generic_mock_api_tests/test_payload_media_type.py +0 -25
  234. package/generator/test/generic_mock_api_tests/test_payload_pageable.py +0 -99
  235. package/generator/test/generic_mock_api_tests/test_payload_xml.py +0 -135
  236. package/generator/test/generic_mock_api_tests/test_response_status_code_range.py +0 -36
  237. package/generator/test/generic_mock_api_tests/test_routes.py +0 -285
  238. package/generator/test/generic_mock_api_tests/test_server_endpoint_not_defined.py +0 -17
  239. package/generator/test/generic_mock_api_tests/test_server_path_multiple.py +0 -21
  240. package/generator/test/generic_mock_api_tests/test_server_path_single.py +0 -17
  241. package/generator/test/generic_mock_api_tests/test_server_versions_not_versioned.py +0 -25
  242. package/generator/test/generic_mock_api_tests/test_server_versions_versioned.py +0 -30
  243. package/generator/test/generic_mock_api_tests/test_special_headers_conditional_request.py +0 -34
  244. package/generator/test/generic_mock_api_tests/test_special_headers_repeatability.py +0 -18
  245. package/generator/test/generic_mock_api_tests/test_specs_documentation.py +0 -51
  246. package/generator/test/generic_mock_api_tests/test_streaming_jsonl.py +0 -25
  247. package/generator/test/generic_mock_api_tests/test_typetest_array.py +0 -111
  248. package/generator/test/generic_mock_api_tests/test_typetest_dictionary.py +0 -86
  249. package/generator/test/generic_mock_api_tests/test_typetest_enum_extensible.py +0 -23
  250. package/generator/test/generic_mock_api_tests/test_typetest_enum_fixed.py +0 -25
  251. package/generator/test/generic_mock_api_tests/test_typetest_file.py +0 -52
  252. package/generator/test/generic_mock_api_tests/test_typetest_model_empty.py +0 -29
  253. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_enum_discriminator.py +0 -58
  254. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_nested_discriminator.py +0 -79
  255. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_not_discriminated.py +0 -31
  256. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_recursive.py +0 -32
  257. package/generator/test/generic_mock_api_tests/test_typetest_model_inheritance_single_discriminator.py +0 -60
  258. package/generator/test/generic_mock_api_tests/test_typetest_model_usage.py +0 -28
  259. package/generator/test/generic_mock_api_tests/test_typetest_model_visibility.py +0 -40
  260. package/generator/test/generic_mock_api_tests/test_typetest_property_additionalproperties.py +0 -314
  261. package/generator/test/generic_mock_api_tests/test_typetest_property_nullable.py +0 -102
  262. package/generator/test/generic_mock_api_tests/test_typetest_property_optional.py +0 -174
  263. package/generator/test/generic_mock_api_tests/test_typetest_property_valuetypes.py +0 -286
  264. package/generator/test/generic_mock_api_tests/test_typetest_scalar.py +0 -53
  265. package/generator/test/generic_mock_api_tests/test_typetest_union.py +0 -80
  266. package/generator/test/generic_mock_api_tests/test_typetest_union_discriminated.py +0 -290
  267. package/generator/test/generic_mock_api_tests/test_versioning_added.py +0 -33
  268. package/generator/test/generic_mock_api_tests/test_versioning_made_optional.py +0 -20
  269. package/generator/test/generic_mock_api_tests/test_versioning_removed.py +0 -37
  270. package/generator/test/generic_mock_api_tests/test_versioning_renamed_from.py +0 -27
  271. package/generator/test/generic_mock_api_tests/test_versioning_return_type_changed_from.py +0 -17
  272. package/generator/test/generic_mock_api_tests/test_versioning_type_changed_from.py +0 -21
  273. package/generator/test/unbranded/mock_api_tests/asynctests/test_auth_flow_async.py +0 -19
  274. package/generator/test/unbranded/mock_api_tests/asynctests/test_encode_duration_async.py +0 -63
  275. package/generator/test/unbranded/mock_api_tests/asynctests/test_encode_numeric_async.py +0 -35
  276. package/generator/test/unbranded/mock_api_tests/asynctests/test_parameters_basic_async.py +0 -24
  277. package/generator/test/unbranded/mock_api_tests/asynctests/test_parameters_spread_async.py +0 -76
  278. package/generator/test/unbranded/mock_api_tests/asynctests/test_payload_content_negotiation_async.py +0 -37
  279. package/generator/test/unbranded/mock_api_tests/asynctests/test_payload_multipart_async.py +0 -218
  280. package/generator/test/unbranded/mock_api_tests/asynctests/test_serialization_encoded_name_json_async.py +0 -24
  281. package/generator/test/unbranded/mock_api_tests/asynctests/test_special_words_async.py +0 -73
  282. package/generator/test/unbranded/mock_api_tests/asynctests/test_unbranded_async.py +0 -24
  283. package/generator/test/unbranded/mock_api_tests/conftest.py +0 -91
  284. package/generator/test/unbranded/mock_api_tests/data/image.jpg +0 -0
  285. package/generator/test/unbranded/mock_api_tests/data/image.png +0 -0
  286. package/generator/test/unbranded/mock_api_tests/test_auth_flow.py +0 -17
  287. package/generator/test/unbranded/mock_api_tests/test_encode_duration.py +0 -60
  288. package/generator/test/unbranded/mock_api_tests/test_encode_numeric.py +0 -32
  289. package/generator/test/unbranded/mock_api_tests/test_parameters_basic.py +0 -22
  290. package/generator/test/unbranded/mock_api_tests/test_parameters_spread.py +0 -66
  291. package/generator/test/unbranded/mock_api_tests/test_payload_content_negotiation.py +0 -33
  292. package/generator/test/unbranded/mock_api_tests/test_payload_multipart.py +0 -200
  293. package/generator/test/unbranded/mock_api_tests/test_serialization_encoded_name_json.py +0 -22
  294. package/generator/test/unbranded/mock_api_tests/test_special_words.py +0 -66
  295. package/generator/test/unbranded/mock_api_tests/test_unbranded.py +0 -65
  296. package/generator/test/unbranded/requirements.txt +0 -69
  297. package/generator/test/unbranded/tox.ini +0 -64
  298. package/generator/test/unittests/conftest.py +0 -15
  299. package/generator/test/unittests/requirements.txt +0 -3
  300. package/generator/test/unittests/test_enums.py +0 -89
  301. package/generator/test/unittests/test_model_base_serialization.py +0 -4906
  302. package/generator/test/unittests/test_model_base_xml_serialization.py +0 -1239
  303. package/generator/test/unittests/test_name_converter.py +0 -35
  304. package/generator/test/unittests/test_optional_return_type.py +0 -268
  305. package/generator/test/unittests/test_parameter_ordering.py +0 -104
  306. package/generator/test/unittests/test_sort_schema.py +0 -93
  307. package/generator/test/unittests/tox.ini +0 -5
  308. /package/eng/scripts/ci/{mypy.ini → config/mypy.ini} +0 -0
  309. /package/eng/scripts/ci/{pylintrc → config/pylintrc} +0 -0
  310. /package/eng/scripts/ci/{pyproject.toml → config/pyproject.toml} +0 -0
  311. /package/eng/scripts/ci/{pyrightconfig.json → config/pyrightconfig.json} +0 -0
@@ -1,32 +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 typetest.model.usage import models
8
- from typetest.model.usage.aio import UsageClient
9
-
10
-
11
- @pytest.fixture
12
- async def client():
13
- async with UsageClient() as client:
14
- yield client
15
-
16
-
17
- @pytest.mark.asyncio
18
- async def test_input(client: UsageClient):
19
- input = models.InputRecord(required_prop="example-value")
20
- assert await client.input(input) is None
21
-
22
-
23
- @pytest.mark.asyncio
24
- async def test_output(client: UsageClient):
25
- output = models.OutputRecord(required_prop="example-value")
26
- assert output == await client.output()
27
-
28
-
29
- @pytest.mark.asyncio
30
- async def test_input_and_output(client: UsageClient):
31
- input_output = models.InputOutputRecord(required_prop="example-value")
32
- assert input_output == await client.input_and_output(input_output)
@@ -1,47 +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 typetest.model.visibility.aio import VisibilityClient
8
- from typetest.model.visibility import models
9
-
10
-
11
- @pytest.fixture
12
- async def client():
13
- async with VisibilityClient() as client:
14
- yield client
15
-
16
-
17
- @pytest.mark.asyncio
18
- async def test_get_model(client):
19
- result = await client.get_model(models.VisibilityModel(), query_prop=123)
20
- assert result == models.VisibilityModel(read_prop="abc")
21
-
22
-
23
- @pytest.mark.asyncio
24
- async def test_put_model(client):
25
- await client.put_model(models.VisibilityModel(create_prop=["foo", "bar"], update_prop=[1, 2]))
26
-
27
-
28
- @pytest.mark.asyncio
29
- async def test_patch_model(client):
30
- await client.patch_model(models.VisibilityModel(update_prop=[1, 2]))
31
-
32
-
33
- @pytest.mark.asyncio
34
- async def test_post_model(client):
35
- await client.post_model(models.VisibilityModel(create_prop=["foo", "bar"]))
36
-
37
-
38
- @pytest.mark.asyncio
39
- async def test_delete_model(client):
40
- await client.delete_model(models.VisibilityModel(delete_prop=True))
41
-
42
-
43
- @pytest.mark.asyncio
44
- async def test_put_read_only_model(client):
45
- await client.put_read_only_model(
46
- models.ReadOnlyModel(optional_nullable_int_list=[1, 2], optional_string_record={"foo", "bar"})
47
- )
@@ -1,353 +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 typetest.property.additionalproperties import models
8
- from typetest.property.additionalproperties.aio import AdditionalPropertiesClient
9
-
10
-
11
- @pytest.fixture
12
- async def client():
13
- async with AdditionalPropertiesClient() as client:
14
- yield client
15
-
16
-
17
- @pytest.mark.asyncio
18
- async def test_extends_different_spread_float(client: AdditionalPropertiesClient):
19
- body = models.DifferentSpreadFloatDerived({"name": "abc", "prop": 43.125, "derivedProp": 43.125})
20
- assert await client.extends_different_spread_float.get() == body
21
- await client.extends_different_spread_float.put(body)
22
-
23
-
24
- @pytest.mark.asyncio
25
- async def test_extends_different_spread_model(client: AdditionalPropertiesClient):
26
- body = models.DifferentSpreadModelDerived(
27
- {"knownProp": "abc", "prop": {"state": "ok"}, "derivedProp": {"state": "ok"}}
28
- )
29
- assert await client.extends_different_spread_model.get() == body
30
- await client.extends_different_spread_model.put(body)
31
-
32
-
33
- @pytest.mark.asyncio
34
- async def test_extends_different_spread_model_array(client: AdditionalPropertiesClient):
35
- body = models.DifferentSpreadModelArrayDerived(
36
- {
37
- "knownProp": "abc",
38
- "prop": [{"state": "ok"}, {"state": "ok"}],
39
- "derivedProp": [{"state": "ok"}, {"state": "ok"}],
40
- }
41
- )
42
- assert await client.extends_different_spread_model_array.get() == body
43
- await client.extends_different_spread_model_array.put(body)
44
-
45
-
46
- @pytest.mark.asyncio
47
- async def test_extends_different_spread_string(client: AdditionalPropertiesClient):
48
- body = models.DifferentSpreadStringDerived({"id": 43.125, "prop": "abc", "derivedProp": "abc"})
49
- assert await client.extends_different_spread_string.get() == body
50
- await client.extends_different_spread_string.put(body)
51
-
52
-
53
- @pytest.mark.asyncio
54
- async def test_extends_float(client: AdditionalPropertiesClient):
55
- body = models.ExtendsFloatAdditionalProperties({"id": 43.125, "prop": 43.125})
56
- assert await client.extends_float.get() == body
57
- await client.extends_float.put(body)
58
-
59
-
60
- @pytest.mark.asyncio
61
- async def test_extends_model(client: AdditionalPropertiesClient):
62
- body = models.ExtendsModelAdditionalProperties({"knownProp": {"state": "ok"}, "prop": {"state": "ok"}})
63
- assert await client.extends_model.get() == body
64
- await client.extends_model.put(body)
65
-
66
-
67
- @pytest.mark.asyncio
68
- async def test_extends_model_array(client: AdditionalPropertiesClient):
69
- body = models.ExtendsModelArrayAdditionalProperties(
70
- {
71
- "knownProp": [{"state": "ok"}, {"state": "ok"}],
72
- "prop": [{"state": "ok"}, {"state": "ok"}],
73
- }
74
- )
75
- assert await client.extends_model_array.get() == body
76
- await client.extends_model_array.put(body)
77
-
78
-
79
- @pytest.mark.asyncio
80
- async def test_extends_string(client: AdditionalPropertiesClient):
81
- body = models.ExtendsStringAdditionalProperties({"name": "ExtendsStringAdditionalProperties", "prop": "abc"})
82
- assert await client.extends_string.get() == body
83
- await client.extends_string.put(body)
84
-
85
-
86
- @pytest.mark.asyncio
87
- async def test_extends_unknown(client: AdditionalPropertiesClient):
88
- body = models.ExtendsUnknownAdditionalProperties(
89
- {
90
- "name": "ExtendsUnknownAdditionalProperties",
91
- "prop1": 32,
92
- "prop2": True,
93
- "prop3": "abc",
94
- }
95
- )
96
- assert await client.extends_unknown.get() == body
97
- await client.extends_unknown.put(body)
98
-
99
-
100
- @pytest.mark.asyncio
101
- async def test_extends_unknown_derived(client: AdditionalPropertiesClient):
102
- body = models.ExtendsUnknownAdditionalPropertiesDerived(
103
- {
104
- "name": "ExtendsUnknownAdditionalProperties",
105
- "index": 314,
106
- "age": 2.71875,
107
- "prop1": 32,
108
- "prop2": True,
109
- "prop3": "abc",
110
- }
111
- )
112
- assert await client.extends_unknown_derived.get() == body
113
- await client.extends_unknown_derived.put(body)
114
-
115
-
116
- @pytest.mark.asyncio
117
- async def test_extends_unknown_discriminated(client: AdditionalPropertiesClient):
118
- body = models.ExtendsUnknownAdditionalPropertiesDiscriminatedDerived(
119
- {
120
- "kind": "derived",
121
- "name": "Derived",
122
- "index": 314,
123
- "age": 2.71875,
124
- "prop1": 32,
125
- "prop2": True,
126
- "prop3": "abc",
127
- }
128
- )
129
- assert await client.extends_unknown_discriminated.get() == body
130
- await client.extends_unknown_discriminated.put(body)
131
-
132
-
133
- @pytest.mark.asyncio
134
- async def test_is_float(client: AdditionalPropertiesClient):
135
- body = models.IsFloatAdditionalProperties({"id": 43.125, "prop": 43.125})
136
- assert await client.is_float.get() == body
137
- await client.is_float.put(body)
138
-
139
-
140
- @pytest.mark.asyncio
141
- async def test_is_model(client: AdditionalPropertiesClient):
142
- body = models.IsModelAdditionalProperties({"knownProp": {"state": "ok"}, "prop": {"state": "ok"}})
143
- assert await client.is_model.get() == body
144
- await client.is_model.put(body)
145
-
146
-
147
- @pytest.mark.asyncio
148
- async def test_is_model_array(client: AdditionalPropertiesClient):
149
- body = models.IsModelArrayAdditionalProperties(
150
- {
151
- "knownProp": [{"state": "ok"}, {"state": "ok"}],
152
- "prop": [{"state": "ok"}, {"state": "ok"}],
153
- }
154
- )
155
- assert await client.is_model_array.get() == body
156
- await client.is_model_array.put(body)
157
-
158
-
159
- @pytest.mark.asyncio
160
- async def test_is_string(client: AdditionalPropertiesClient):
161
- body = models.IsStringAdditionalProperties({"name": "IsStringAdditionalProperties", "prop": "abc"})
162
- assert await client.is_string.get() == body
163
- await client.is_string.put(body)
164
-
165
-
166
- @pytest.mark.asyncio
167
- async def test_is_unknown(client: AdditionalPropertiesClient):
168
- body = models.IsUnknownAdditionalProperties(
169
- {
170
- "name": "IsUnknownAdditionalProperties",
171
- "prop1": 32,
172
- "prop2": True,
173
- "prop3": "abc",
174
- }
175
- )
176
- assert await client.is_unknown.get() == body
177
- await client.is_unknown.put(body)
178
-
179
-
180
- @pytest.mark.asyncio
181
- async def test_is_unknown_derived(client: AdditionalPropertiesClient):
182
- body = models.IsUnknownAdditionalPropertiesDerived(
183
- {
184
- "name": "IsUnknownAdditionalProperties",
185
- "index": 314,
186
- "age": 2.71875,
187
- "prop1": 32,
188
- "prop2": True,
189
- "prop3": "abc",
190
- }
191
- )
192
- assert await client.is_unknown_derived.get() == body
193
- await client.is_unknown_derived.put(body)
194
-
195
-
196
- @pytest.mark.asyncio
197
- async def test_is_unknown_discriminated(client: AdditionalPropertiesClient):
198
- body = models.IsUnknownAdditionalPropertiesDiscriminatedDerived(
199
- {
200
- "kind": "derived",
201
- "name": "Derived",
202
- "index": 314,
203
- "age": 2.71875,
204
- "prop1": 32,
205
- "prop2": True,
206
- "prop3": "abc",
207
- }
208
- )
209
- assert await client.is_unknown_discriminated.get() == body
210
- await client.is_unknown_discriminated.put(body)
211
-
212
-
213
- @pytest.mark.asyncio
214
- async def test_multiple_spread(client: AdditionalPropertiesClient):
215
- body = {"flag": True, "prop1": "abc", "prop2": 43.125}
216
- assert await client.multiple_spread.get() == body
217
- await client.multiple_spread.put(body)
218
-
219
-
220
- @pytest.mark.asyncio
221
- async def test_spread_different_float(client: AdditionalPropertiesClient):
222
- body = {"name": "abc", "prop": 43.125}
223
- assert await client.spread_different_float.get() == body
224
- await client.spread_different_float.put(body)
225
-
226
-
227
- @pytest.mark.asyncio
228
- async def test_spread_different_model(client: AdditionalPropertiesClient):
229
- body = {"knownProp": "abc", "prop": {"state": "ok"}}
230
- assert await client.spread_different_model.get() == body
231
- await client.spread_different_model.put(body)
232
-
233
-
234
- @pytest.mark.asyncio
235
- async def test_spread_different_model_array(client: AdditionalPropertiesClient):
236
- body = {"knownProp": "abc", "prop": [{"state": "ok"}, {"state": "ok"}]}
237
- assert await client.spread_different_model_array.get() == body
238
- await client.spread_different_model_array.put(body)
239
-
240
-
241
- @pytest.mark.asyncio
242
- async def test_spread_different_string(client: AdditionalPropertiesClient):
243
- body = {"id": 43.125, "prop": "abc"}
244
- assert await client.spread_different_string.get() == body
245
- await client.spread_different_string.put(body)
246
-
247
-
248
- @pytest.mark.asyncio
249
- async def test_spread_model(client: AdditionalPropertiesClient):
250
- body = {"knownProp": {"state": "ok"}, "prop": {"state": "ok"}}
251
- assert await client.spread_model.get() == body
252
- await client.spread_model.put(body)
253
-
254
-
255
- @pytest.mark.asyncio
256
- async def test_spread_model_array(client: AdditionalPropertiesClient):
257
- body = {
258
- "knownProp": [{"state": "ok"}, {"state": "ok"}],
259
- "prop": [{"state": "ok"}, {"state": "ok"}],
260
- }
261
- assert await client.spread_model_array.get() == body
262
- await client.spread_model_array.put(body)
263
-
264
-
265
- @pytest.mark.skip(reason="https://github.com/microsoft/typespec/pull/6425")
266
- @pytest.mark.asyncio
267
- async def test_spread_record_discriminated_union(client: AdditionalPropertiesClient):
268
- body = {
269
- "name": "abc",
270
- "prop1": {"fooProp": "abc", "kind": "kind0"},
271
- "prop2": {
272
- "end": "2021-01-02T00:00:00Z",
273
- "kind": "kind1",
274
- "start": "2021-01-01T00:00:00Z",
275
- },
276
- }
277
- assert await client.spread_record_discriminated_union.get() == body
278
- await client.spread_record_discriminated_union.put(body)
279
-
280
-
281
- @pytest.mark.asyncio
282
- async def test_spread_record_non_discriminated_union(
283
- client: AdditionalPropertiesClient,
284
- ):
285
- body = {
286
- "name": "abc",
287
- "prop1": {"kind": "kind0", "fooProp": "abc"},
288
- "prop2": {
289
- "kind": "kind1",
290
- "start": "2021-01-01T00:00:00Z",
291
- "end": "2021-01-02T00:00:00Z",
292
- },
293
- }
294
- assert await client.spread_record_non_discriminated_union.get() == body
295
- await client.spread_record_non_discriminated_union.put(body)
296
-
297
-
298
- @pytest.mark.asyncio
299
- async def test_spread_record_non_discriminated_union2(
300
- client: AdditionalPropertiesClient,
301
- ):
302
- body = {
303
- "name": "abc",
304
- "prop1": {"kind": "kind1", "start": "2021-01-01T00:00:00Z"},
305
- "prop2": {
306
- "kind": "kind1",
307
- "start": "2021-01-01T00:00:00Z",
308
- "end": "2021-01-02T00:00:00Z",
309
- },
310
- }
311
- assert await client.spread_record_non_discriminated_union2.get() == body
312
- await client.spread_record_non_discriminated_union2.put(body)
313
-
314
-
315
- @pytest.mark.asyncio
316
- async def test_spread_record_non_discriminated_union3(
317
- client: AdditionalPropertiesClient,
318
- ):
319
- body = {
320
- "name": "abc",
321
- "prop1": [
322
- {"kind": "kind1", "start": "2021-01-01T00:00:00Z"},
323
- {"kind": "kind1", "start": "2021-01-01T00:00:00Z"},
324
- ],
325
- "prop2": {
326
- "kind": "kind1",
327
- "start": "2021-01-01T00:00:00Z",
328
- "end": "2021-01-02T00:00:00Z",
329
- },
330
- }
331
- assert await client.spread_record_non_discriminated_union3.get() == body
332
- await client.spread_record_non_discriminated_union3.put(body)
333
-
334
-
335
- @pytest.mark.asyncio
336
- async def test_spread_record_union(client: AdditionalPropertiesClient):
337
- body = {"flag": True, "prop1": "abc", "prop2": 43.125}
338
- assert await client.spread_record_union.get() == body
339
- await client.spread_record_union.put(body)
340
-
341
-
342
- @pytest.mark.asyncio
343
- async def test_spread_string(client: AdditionalPropertiesClient):
344
- body = {"name": "SpreadSpringRecord", "prop": "abc"}
345
- assert await client.spread_string.get() == body
346
- await client.spread_string.put(body)
347
-
348
-
349
- @pytest.mark.asyncio
350
- async def test_spread_float(client: AdditionalPropertiesClient):
351
- body = {"id": 43.125, "prop": 43.125}
352
- assert await client.spread_float.get() == body
353
- await client.spread_float.put(body)
@@ -1,110 +0,0 @@
1
- # cspell: ignore Hdvcmxk
2
- # -------------------------------------------------------------------------
3
- # Copyright (c) Microsoft Corporation. All rights reserved.
4
- # Licensed under the MIT License. See License.txt in the project root for
5
- # license information.
6
- # --------------------------------------------------------------------------
7
- import json
8
- import pytest
9
- from typetest.property.nullable import models
10
- from typetest.property.nullable.aio import NullableClient
11
- from typetest.property.nullable._utils.model_base import ( # pylint: disable=protected-access
12
- SdkJSONEncoder,
13
- )
14
-
15
- try:
16
- from corehttp.serialization import NULL
17
- except ImportError:
18
- from azure.core.serialization import NULL
19
-
20
-
21
- @pytest.fixture
22
- async def client():
23
- async with NullableClient() as client:
24
- yield client
25
-
26
-
27
- @pytest.mark.asyncio
28
- async def test_bytes(client: NullableClient):
29
- non_null_model = models.BytesProperty(required_property="foo", nullable_property="aGVsbG8sIHdvcmxkIQ==")
30
- non_model = models.BytesProperty(required_property="foo", nullable_property=NULL)
31
- assert '{"requiredProperty": "foo", "nullableProperty": null}' == json.dumps(non_model, cls=SdkJSONEncoder)
32
- assert await client.bytes.get_non_null() == non_null_model
33
- assert (await client.bytes.get_null())["nullableProperty"] is None
34
- await client.bytes.patch_non_null(body=non_null_model)
35
- await client.bytes.patch_null(body=non_model)
36
-
37
-
38
- @pytest.mark.asyncio
39
- async def test_collections_byte(client: NullableClient):
40
- non_null_model = models.CollectionsByteProperty(
41
- required_property="foo",
42
- nullable_property=["aGVsbG8sIHdvcmxkIQ==", "aGVsbG8sIHdvcmxkIQ=="],
43
- )
44
- non_model = models.CollectionsByteProperty(required_property="foo", nullable_property=NULL)
45
- assert '{"requiredProperty": "foo", "nullableProperty": null}' == json.dumps(non_model, cls=SdkJSONEncoder)
46
- assert await client.collections_byte.get_non_null() == non_null_model
47
- assert (await client.collections_byte.get_null())["nullableProperty"] is None
48
- await client.collections_byte.patch_non_null(body=non_null_model)
49
- await client.collections_byte.patch_null(body=non_model)
50
-
51
-
52
- @pytest.mark.asyncio
53
- async def test_collections_model(client: NullableClient):
54
- non_null_model = models.CollectionsModelProperty(
55
- required_property="foo",
56
- nullable_property=[
57
- models.InnerModel(property="hello"),
58
- models.InnerModel(property="world"),
59
- ],
60
- )
61
- non_model = models.CollectionsModelProperty(required_property="foo", nullable_property=NULL)
62
- assert '{"requiredProperty": "foo", "nullableProperty": null}' == json.dumps(non_model, cls=SdkJSONEncoder)
63
- assert await client.collections_model.get_non_null() == non_null_model
64
- assert (await client.collections_model.get_null())["nullableProperty"] is None
65
- await client.collections_model.patch_non_null(body=non_null_model)
66
- await client.collections_model.patch_null(body=non_model)
67
-
68
-
69
- @pytest.mark.asyncio
70
- async def test_collections_string(client: NullableClient):
71
- non_null_model = models.CollectionsStringProperty(required_property="foo", nullable_property=["hello", "world"])
72
- non_model = models.CollectionsStringProperty(required_property="foo", nullable_property=NULL)
73
- assert '{"requiredProperty": "foo", "nullableProperty": null}' == json.dumps(non_model, cls=SdkJSONEncoder)
74
- assert await client.collections_string.get_non_null() == non_null_model
75
- assert (await client.collections_string.get_null())["nullableProperty"] is None
76
- await client.collections_string.patch_non_null(body=non_null_model)
77
- await client.collections_string.patch_null(body=non_model)
78
-
79
-
80
- @pytest.mark.asyncio
81
- async def test_datetime(client: NullableClient):
82
- non_null_model = models.DatetimeProperty(required_property="foo", nullable_property="2022-08-26T18:38:00Z")
83
- non_model = models.DatetimeProperty(required_property="foo", nullable_property=NULL)
84
- assert '{"requiredProperty": "foo", "nullableProperty": null}' == json.dumps(non_model, cls=SdkJSONEncoder)
85
- assert await client.datetime.get_non_null() == non_null_model
86
- assert (await client.datetime.get_null())["nullableProperty"] is None
87
- await client.datetime.patch_non_null(body=non_null_model)
88
- await client.datetime.patch_null(body=non_model)
89
-
90
-
91
- @pytest.mark.asyncio
92
- async def test_duration(client: NullableClient):
93
- non_null_model = models.DurationProperty(required_property="foo", nullable_property="P123DT22H14M12.011S")
94
- non_model = models.DurationProperty(required_property="foo", nullable_property=NULL)
95
- assert '{"requiredProperty": "foo", "nullableProperty": null}' == json.dumps(non_model, cls=SdkJSONEncoder)
96
- assert await client.duration.get_non_null() == non_null_model
97
- assert (await client.duration.get_null())["nullableProperty"] is None
98
- await client.duration.patch_non_null(body=non_null_model)
99
- await client.duration.patch_null(body=non_model)
100
-
101
-
102
- @pytest.mark.asyncio
103
- async def test_string(client: NullableClient):
104
- non_null_model = models.StringProperty(required_property="foo", nullable_property="hello")
105
- non_model = models.StringProperty(required_property="foo", nullable_property=NULL)
106
- assert '{"requiredProperty": "foo", "nullableProperty": null}' == json.dumps(non_model, cls=SdkJSONEncoder)
107
- assert await client.string.get_non_null() == non_null_model
108
- assert (await client.string.get_null())["nullableProperty"] is None
109
- await client.string.patch_non_null(body=non_null_model)
110
- await client.string.patch_null(body=non_model)