astraapi 0.1.0__tar.gz

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 (1308) hide show
  1. astraapi-0.1.0/.github/workflows/publish.yml +121 -0
  2. astraapi-0.1.0/.gitignore +39 -0
  3. astraapi-0.1.0/.python-version +1 -0
  4. astraapi-0.1.0/CONTRIBUTING.md +113 -0
  5. astraapi-0.1.0/LICENSE +22 -0
  6. astraapi-0.1.0/PKG-INFO +483 -0
  7. astraapi-0.1.0/README.md +422 -0
  8. astraapi-0.1.0/astraapi/__init__.py +46 -0
  9. astraapi-0.1.0/astraapi/_app_base.py +173 -0
  10. astraapi-0.1.0/astraapi/_background.py +56 -0
  11. astraapi-0.1.0/astraapi/_compat/__init__.py +39 -0
  12. astraapi-0.1.0/astraapi/_compat/shared.py +205 -0
  13. astraapi-0.1.0/astraapi/_compat/v2.py +440 -0
  14. astraapi-0.1.0/astraapi/_concurrency.py +69 -0
  15. astraapi-0.1.0/astraapi/_core_bridge.py +37 -0
  16. astraapi-0.1.0/astraapi/_cpp_server.py +3186 -0
  17. astraapi-0.1.0/astraapi/_datastructures_impl.py +604 -0
  18. astraapi-0.1.0/astraapi/_exception_handler.py +106 -0
  19. astraapi-0.1.0/astraapi/_json_utils.py +43 -0
  20. astraapi-0.1.0/astraapi/_middleware_impl.py +670 -0
  21. astraapi-0.1.0/astraapi/_multiworker.py +666 -0
  22. astraapi-0.1.0/astraapi/_reloader.py +208 -0
  23. astraapi-0.1.0/astraapi/_request.py +696 -0
  24. astraapi-0.1.0/astraapi/_response.py +546 -0
  25. astraapi-0.1.0/astraapi/_routing_base.py +1061 -0
  26. astraapi-0.1.0/astraapi/_staticfiles.py +98 -0
  27. astraapi-0.1.0/astraapi/_status.py +103 -0
  28. astraapi-0.1.0/astraapi/_templating.py +60 -0
  29. astraapi-0.1.0/astraapi/_testclient.py +506 -0
  30. astraapi-0.1.0/astraapi/_types.py +10 -0
  31. astraapi-0.1.0/astraapi/_websocket.py +260 -0
  32. astraapi-0.1.0/astraapi/_ws_groups.py +125 -0
  33. astraapi-0.1.0/astraapi/applications.py +5994 -0
  34. astraapi-0.1.0/astraapi/background.py +60 -0
  35. astraapi-0.1.0/astraapi/concurrency.py +32 -0
  36. astraapi-0.1.0/astraapi/datastructures.py +184 -0
  37. astraapi-0.1.0/astraapi/dependencies/__init__.py +0 -0
  38. astraapi-0.1.0/astraapi/dependencies/models.py +193 -0
  39. astraapi-0.1.0/astraapi/dependencies/utils.py +1553 -0
  40. astraapi-0.1.0/astraapi/encoders.py +361 -0
  41. astraapi-0.1.0/astraapi/exception_handlers.py +53 -0
  42. astraapi-0.1.0/astraapi/exceptions.py +262 -0
  43. astraapi-0.1.0/astraapi/logger.py +3 -0
  44. astraapi-0.1.0/astraapi/middleware/__init__.py +1 -0
  45. astraapi-0.1.0/astraapi/middleware/asyncexitstack.py +18 -0
  46. astraapi-0.1.0/astraapi/middleware/cors.py +1 -0
  47. astraapi-0.1.0/astraapi/middleware/gzip.py +1 -0
  48. astraapi-0.1.0/astraapi/middleware/httpsredirect.py +1 -0
  49. astraapi-0.1.0/astraapi/middleware/trustedhost.py +1 -0
  50. astraapi-0.1.0/astraapi/middleware/wsgi.py +1 -0
  51. astraapi-0.1.0/astraapi/openapi/__init__.py +0 -0
  52. astraapi-0.1.0/astraapi/openapi/constants.py +3 -0
  53. astraapi-0.1.0/astraapi/openapi/docs.py +385 -0
  54. astraapi-0.1.0/astraapi/openapi/models.py +438 -0
  55. astraapi-0.1.0/astraapi/openapi/utils.py +563 -0
  56. astraapi-0.1.0/astraapi/param_functions.py +2461 -0
  57. astraapi-0.1.0/astraapi/params.py +754 -0
  58. astraapi-0.1.0/astraapi/requests.py +2 -0
  59. astraapi-0.1.0/astraapi/responses.py +48 -0
  60. astraapi-0.1.0/astraapi/routing.py +6283 -0
  61. astraapi-0.1.0/astraapi/security/__init__.py +15 -0
  62. astraapi-0.1.0/astraapi/security/api_key.py +318 -0
  63. astraapi-0.1.0/astraapi/security/base.py +6 -0
  64. astraapi-0.1.0/astraapi/security/http.py +450 -0
  65. astraapi-0.1.0/astraapi/security/oauth2.py +693 -0
  66. astraapi-0.1.0/astraapi/security/open_id_connect_url.py +94 -0
  67. astraapi-0.1.0/astraapi/security/utils.py +10 -0
  68. astraapi-0.1.0/astraapi/staticfiles.py +1 -0
  69. astraapi-0.1.0/astraapi/templating.py +1 -0
  70. astraapi-0.1.0/astraapi/testclient.py +1 -0
  71. astraapi-0.1.0/astraapi/types.py +18 -0
  72. astraapi-0.1.0/astraapi/utils.py +137 -0
  73. astraapi-0.1.0/astraapi/websockets.py +3 -0
  74. astraapi-0.1.0/cpp_core/CMakeLists.txt +143 -0
  75. astraapi-0.1.0/cpp_core/include/app.hpp +323 -0
  76. astraapi-0.1.0/cpp_core/include/asgi_constants.hpp +87 -0
  77. astraapi-0.1.0/cpp_core/include/buffer_pool.hpp +13 -0
  78. astraapi-0.1.0/cpp_core/include/compat.hpp +10 -0
  79. astraapi-0.1.0/cpp_core/include/http_parser.hpp +115 -0
  80. astraapi-0.1.0/cpp_core/include/json_parser.hpp +32 -0
  81. astraapi-0.1.0/cpp_core/include/json_writer.hpp +24 -0
  82. astraapi-0.1.0/cpp_core/include/percent_decode.hpp +73 -0
  83. astraapi-0.1.0/cpp_core/include/platform.hpp +140 -0
  84. astraapi-0.1.0/cpp_core/include/pyref.hpp +40 -0
  85. astraapi-0.1.0/cpp_core/include/router.hpp +93 -0
  86. astraapi-0.1.0/cpp_core/include/ws_frame_parser.hpp +174 -0
  87. astraapi-0.1.0/cpp_core/include/ws_ring_buffer.hpp +204 -0
  88. astraapi-0.1.0/cpp_core/src/app.cpp +6826 -0
  89. astraapi-0.1.0/cpp_core/src/asgi_constants.cpp +234 -0
  90. astraapi-0.1.0/cpp_core/src/body_parser.cpp +71 -0
  91. astraapi-0.1.0/cpp_core/src/buffer_pool.cpp +48 -0
  92. astraapi-0.1.0/cpp_core/src/dependency_resolver.cpp +109 -0
  93. astraapi-0.1.0/cpp_core/src/error_response.cpp +43 -0
  94. astraapi-0.1.0/cpp_core/src/form_parser.cpp +222 -0
  95. astraapi-0.1.0/cpp_core/src/http_parser.cpp +287 -0
  96. astraapi-0.1.0/cpp_core/src/json_encoder.cpp +222 -0
  97. astraapi-0.1.0/cpp_core/src/json_parser.cpp +203 -0
  98. astraapi-0.1.0/cpp_core/src/json_writer.cpp +514 -0
  99. astraapi-0.1.0/cpp_core/src/middleware_engine.cpp +381 -0
  100. astraapi-0.1.0/cpp_core/src/module.cpp +282 -0
  101. astraapi-0.1.0/cpp_core/src/openapi_gen.cpp +326 -0
  102. astraapi-0.1.0/cpp_core/src/param_extractor.cpp +202 -0
  103. astraapi-0.1.0/cpp_core/src/request_pipeline.cpp +137 -0
  104. astraapi-0.1.0/cpp_core/src/response_pipeline.cpp +75 -0
  105. astraapi-0.1.0/cpp_core/src/router.cpp +249 -0
  106. astraapi-0.1.0/cpp_core/src/security.cpp +153 -0
  107. astraapi-0.1.0/cpp_core/src/utils.cpp +415 -0
  108. astraapi-0.1.0/cpp_core/src/websocket_handler.cpp +219 -0
  109. astraapi-0.1.0/cpp_core/src/ws_frame_parser.cpp +1249 -0
  110. astraapi-0.1.0/cpp_core/src/ws_ring_buffer.cpp +1428 -0
  111. astraapi-0.1.0/cpp_core/third_party/llhttp/LICENSE +22 -0
  112. astraapi-0.1.0/cpp_core/third_party/llhttp/api.c +509 -0
  113. astraapi-0.1.0/cpp_core/third_party/llhttp/http.c +170 -0
  114. astraapi-0.1.0/cpp_core/third_party/llhttp/llhttp.c +10099 -0
  115. astraapi-0.1.0/cpp_core/third_party/llhttp/llhttp.h +907 -0
  116. astraapi-0.1.0/cpp_core/third_party/ryu/common.h +114 -0
  117. astraapi-0.1.0/cpp_core/third_party/ryu/d2s.c +509 -0
  118. astraapi-0.1.0/cpp_core/third_party/ryu/d2s_full_table.h +367 -0
  119. astraapi-0.1.0/cpp_core/third_party/ryu/d2s_intrinsics.h +357 -0
  120. astraapi-0.1.0/cpp_core/third_party/ryu/d2s_small_table.h +186 -0
  121. astraapi-0.1.0/cpp_core/third_party/ryu/digit_table.h +35 -0
  122. astraapi-0.1.0/cpp_core/third_party/ryu/ryu.h +46 -0
  123. astraapi-0.1.0/cpp_core/third_party/yyjson/yyjson.c +11224 -0
  124. astraapi-0.1.0/cpp_core/third_party/yyjson/yyjson.h +8332 -0
  125. astraapi-0.1.0/docs_src/additional_responses/__init__.py +0 -0
  126. astraapi-0.1.0/docs_src/additional_responses/tutorial001_py39.py +22 -0
  127. astraapi-0.1.0/docs_src/additional_responses/tutorial002_py310.py +28 -0
  128. astraapi-0.1.0/docs_src/additional_responses/tutorial002_py39.py +30 -0
  129. astraapi-0.1.0/docs_src/additional_responses/tutorial003_py39.py +37 -0
  130. astraapi-0.1.0/docs_src/additional_responses/tutorial004_py310.py +30 -0
  131. astraapi-0.1.0/docs_src/additional_responses/tutorial004_py39.py +32 -0
  132. astraapi-0.1.0/docs_src/additional_status_codes/__init__.py +0 -0
  133. astraapi-0.1.0/docs_src/additional_status_codes/tutorial001_an_py310.py +25 -0
  134. astraapi-0.1.0/docs_src/additional_status_codes/tutorial001_an_py39.py +25 -0
  135. astraapi-0.1.0/docs_src/additional_status_codes/tutorial001_py310.py +23 -0
  136. astraapi-0.1.0/docs_src/additional_status_codes/tutorial001_py39.py +25 -0
  137. astraapi-0.1.0/docs_src/advanced_middleware/__init__.py +0 -0
  138. astraapi-0.1.0/docs_src/advanced_middleware/tutorial001_py39.py +11 -0
  139. astraapi-0.1.0/docs_src/advanced_middleware/tutorial002_py39.py +13 -0
  140. astraapi-0.1.0/docs_src/advanced_middleware/tutorial003_py39.py +11 -0
  141. astraapi-0.1.0/docs_src/app_testing/__init__.py +0 -0
  142. astraapi-0.1.0/docs_src/app_testing/app_a_py39/__init__.py +0 -0
  143. astraapi-0.1.0/docs_src/app_testing/app_a_py39/main.py +8 -0
  144. astraapi-0.1.0/docs_src/app_testing/app_a_py39/test_main.py +11 -0
  145. astraapi-0.1.0/docs_src/app_testing/app_b_an_py310/__init__.py +0 -0
  146. astraapi-0.1.0/docs_src/app_testing/app_b_an_py310/main.py +38 -0
  147. astraapi-0.1.0/docs_src/app_testing/app_b_an_py310/test_main.py +65 -0
  148. astraapi-0.1.0/docs_src/app_testing/app_b_an_py39/__init__.py +0 -0
  149. astraapi-0.1.0/docs_src/app_testing/app_b_an_py39/main.py +38 -0
  150. astraapi-0.1.0/docs_src/app_testing/app_b_an_py39/test_main.py +65 -0
  151. astraapi-0.1.0/docs_src/app_testing/app_b_py310/__init__.py +0 -0
  152. astraapi-0.1.0/docs_src/app_testing/app_b_py310/main.py +36 -0
  153. astraapi-0.1.0/docs_src/app_testing/app_b_py310/test_main.py +65 -0
  154. astraapi-0.1.0/docs_src/app_testing/app_b_py39/__init__.py +0 -0
  155. astraapi-0.1.0/docs_src/app_testing/app_b_py39/main.py +38 -0
  156. astraapi-0.1.0/docs_src/app_testing/app_b_py39/test_main.py +65 -0
  157. astraapi-0.1.0/docs_src/app_testing/tutorial001_py39.py +18 -0
  158. astraapi-0.1.0/docs_src/app_testing/tutorial002_py39.py +31 -0
  159. astraapi-0.1.0/docs_src/app_testing/tutorial003_py39.py +24 -0
  160. astraapi-0.1.0/docs_src/app_testing/tutorial004_py39.py +43 -0
  161. astraapi-0.1.0/docs_src/async_tests/__init__.py +0 -0
  162. astraapi-0.1.0/docs_src/async_tests/app_a_py39/__init__.py +0 -0
  163. astraapi-0.1.0/docs_src/async_tests/app_a_py39/main.py +8 -0
  164. astraapi-0.1.0/docs_src/async_tests/app_a_py39/test_main.py +14 -0
  165. astraapi-0.1.0/docs_src/authentication_error_status_code/__init__.py +0 -0
  166. astraapi-0.1.0/docs_src/authentication_error_status_code/tutorial001_an_py39.py +21 -0
  167. astraapi-0.1.0/docs_src/background_tasks/__init__.py +0 -0
  168. astraapi-0.1.0/docs_src/background_tasks/tutorial001_py39.py +15 -0
  169. astraapi-0.1.0/docs_src/background_tasks/tutorial002_an_py310.py +26 -0
  170. astraapi-0.1.0/docs_src/background_tasks/tutorial002_an_py39.py +26 -0
  171. astraapi-0.1.0/docs_src/background_tasks/tutorial002_py310.py +24 -0
  172. astraapi-0.1.0/docs_src/background_tasks/tutorial002_py39.py +26 -0
  173. astraapi-0.1.0/docs_src/behind_a_proxy/__init__.py +0 -0
  174. astraapi-0.1.0/docs_src/behind_a_proxy/tutorial001_01_py39.py +8 -0
  175. astraapi-0.1.0/docs_src/behind_a_proxy/tutorial001_py39.py +8 -0
  176. astraapi-0.1.0/docs_src/behind_a_proxy/tutorial002_py39.py +8 -0
  177. astraapi-0.1.0/docs_src/behind_a_proxy/tutorial003_py39.py +14 -0
  178. astraapi-0.1.0/docs_src/behind_a_proxy/tutorial004_py39.py +15 -0
  179. astraapi-0.1.0/docs_src/bigger_applications/__init__.py +0 -0
  180. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/__init__.py +0 -0
  181. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/dependencies.py +13 -0
  182. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/internal/__init__.py +0 -0
  183. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/internal/admin.py +8 -0
  184. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/main.py +23 -0
  185. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/routers/__init__.py +0 -0
  186. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/routers/items.py +38 -0
  187. astraapi-0.1.0/docs_src/bigger_applications/app_an_py39/routers/users.py +18 -0
  188. astraapi-0.1.0/docs_src/bigger_applications/app_py39/__init__.py +0 -0
  189. astraapi-0.1.0/docs_src/bigger_applications/app_py39/dependencies.py +11 -0
  190. astraapi-0.1.0/docs_src/bigger_applications/app_py39/internal/__init__.py +0 -0
  191. astraapi-0.1.0/docs_src/bigger_applications/app_py39/internal/admin.py +8 -0
  192. astraapi-0.1.0/docs_src/bigger_applications/app_py39/main.py +23 -0
  193. astraapi-0.1.0/docs_src/bigger_applications/app_py39/routers/__init__.py +0 -0
  194. astraapi-0.1.0/docs_src/bigger_applications/app_py39/routers/items.py +38 -0
  195. astraapi-0.1.0/docs_src/bigger_applications/app_py39/routers/users.py +18 -0
  196. astraapi-0.1.0/docs_src/body/__init__.py +0 -0
  197. astraapi-0.1.0/docs_src/body/tutorial001_py310.py +17 -0
  198. astraapi-0.1.0/docs_src/body/tutorial001_py39.py +19 -0
  199. astraapi-0.1.0/docs_src/body/tutorial002_py310.py +21 -0
  200. astraapi-0.1.0/docs_src/body/tutorial002_py39.py +23 -0
  201. astraapi-0.1.0/docs_src/body/tutorial003_py310.py +17 -0
  202. astraapi-0.1.0/docs_src/body/tutorial003_py39.py +19 -0
  203. astraapi-0.1.0/docs_src/body/tutorial004_py310.py +20 -0
  204. astraapi-0.1.0/docs_src/body/tutorial004_py39.py +22 -0
  205. astraapi-0.1.0/docs_src/body_fields/__init__.py +0 -0
  206. astraapi-0.1.0/docs_src/body_fields/tutorial001_an_py310.py +21 -0
  207. astraapi-0.1.0/docs_src/body_fields/tutorial001_an_py39.py +21 -0
  208. astraapi-0.1.0/docs_src/body_fields/tutorial001_py310.py +19 -0
  209. astraapi-0.1.0/docs_src/body_fields/tutorial001_py39.py +21 -0
  210. astraapi-0.1.0/docs_src/body_multiple_params/__init__.py +0 -0
  211. astraapi-0.1.0/docs_src/body_multiple_params/tutorial001_an_py310.py +27 -0
  212. astraapi-0.1.0/docs_src/body_multiple_params/tutorial001_an_py39.py +27 -0
  213. astraapi-0.1.0/docs_src/body_multiple_params/tutorial001_py310.py +26 -0
  214. astraapi-0.1.0/docs_src/body_multiple_params/tutorial001_py39.py +28 -0
  215. astraapi-0.1.0/docs_src/body_multiple_params/tutorial002_py310.py +22 -0
  216. astraapi-0.1.0/docs_src/body_multiple_params/tutorial002_py39.py +24 -0
  217. astraapi-0.1.0/docs_src/body_multiple_params/tutorial003_an_py310.py +26 -0
  218. astraapi-0.1.0/docs_src/body_multiple_params/tutorial003_an_py39.py +26 -0
  219. astraapi-0.1.0/docs_src/body_multiple_params/tutorial003_py310.py +22 -0
  220. astraapi-0.1.0/docs_src/body_multiple_params/tutorial003_py39.py +24 -0
  221. astraapi-0.1.0/docs_src/body_multiple_params/tutorial004_an_py310.py +33 -0
  222. astraapi-0.1.0/docs_src/body_multiple_params/tutorial004_an_py39.py +33 -0
  223. astraapi-0.1.0/docs_src/body_multiple_params/tutorial004_py310.py +31 -0
  224. astraapi-0.1.0/docs_src/body_multiple_params/tutorial004_py39.py +33 -0
  225. astraapi-0.1.0/docs_src/body_multiple_params/tutorial005_an_py310.py +19 -0
  226. astraapi-0.1.0/docs_src/body_multiple_params/tutorial005_an_py39.py +19 -0
  227. astraapi-0.1.0/docs_src/body_multiple_params/tutorial005_py310.py +17 -0
  228. astraapi-0.1.0/docs_src/body_multiple_params/tutorial005_py39.py +19 -0
  229. astraapi-0.1.0/docs_src/body_nested_models/__init__.py +0 -0
  230. astraapi-0.1.0/docs_src/body_nested_models/tutorial001_py310.py +18 -0
  231. astraapi-0.1.0/docs_src/body_nested_models/tutorial001_py39.py +20 -0
  232. astraapi-0.1.0/docs_src/body_nested_models/tutorial002_py310.py +18 -0
  233. astraapi-0.1.0/docs_src/body_nested_models/tutorial002_py39.py +20 -0
  234. astraapi-0.1.0/docs_src/body_nested_models/tutorial003_py310.py +18 -0
  235. astraapi-0.1.0/docs_src/body_nested_models/tutorial003_py39.py +20 -0
  236. astraapi-0.1.0/docs_src/body_nested_models/tutorial004_py310.py +24 -0
  237. astraapi-0.1.0/docs_src/body_nested_models/tutorial004_py39.py +26 -0
  238. astraapi-0.1.0/docs_src/body_nested_models/tutorial005_py310.py +24 -0
  239. astraapi-0.1.0/docs_src/body_nested_models/tutorial005_py39.py +26 -0
  240. astraapi-0.1.0/docs_src/body_nested_models/tutorial006_py310.py +24 -0
  241. astraapi-0.1.0/docs_src/body_nested_models/tutorial006_py39.py +26 -0
  242. astraapi-0.1.0/docs_src/body_nested_models/tutorial007_py310.py +30 -0
  243. astraapi-0.1.0/docs_src/body_nested_models/tutorial007_py39.py +32 -0
  244. astraapi-0.1.0/docs_src/body_nested_models/tutorial008_py39.py +14 -0
  245. astraapi-0.1.0/docs_src/body_nested_models/tutorial009_py39.py +8 -0
  246. astraapi-0.1.0/docs_src/body_updates/__init__.py +0 -0
  247. astraapi-0.1.0/docs_src/body_updates/tutorial001_py310.py +32 -0
  248. astraapi-0.1.0/docs_src/body_updates/tutorial001_py39.py +34 -0
  249. astraapi-0.1.0/docs_src/body_updates/tutorial002_py310.py +35 -0
  250. astraapi-0.1.0/docs_src/body_updates/tutorial002_py39.py +37 -0
  251. astraapi-0.1.0/docs_src/conditional_openapi/__init__.py +0 -0
  252. astraapi-0.1.0/docs_src/conditional_openapi/tutorial001_py39.py +16 -0
  253. astraapi-0.1.0/docs_src/configure_swagger_ui/__init__.py +0 -0
  254. astraapi-0.1.0/docs_src/configure_swagger_ui/tutorial001_py39.py +8 -0
  255. astraapi-0.1.0/docs_src/configure_swagger_ui/tutorial002_py39.py +8 -0
  256. astraapi-0.1.0/docs_src/configure_swagger_ui/tutorial003_py39.py +8 -0
  257. astraapi-0.1.0/docs_src/cookie_param_models/__init__.py +0 -0
  258. astraapi-0.1.0/docs_src/cookie_param_models/tutorial001_an_py310.py +17 -0
  259. astraapi-0.1.0/docs_src/cookie_param_models/tutorial001_an_py39.py +17 -0
  260. astraapi-0.1.0/docs_src/cookie_param_models/tutorial001_py310.py +15 -0
  261. astraapi-0.1.0/docs_src/cookie_param_models/tutorial001_py39.py +17 -0
  262. astraapi-0.1.0/docs_src/cookie_param_models/tutorial002_an_py310.py +19 -0
  263. astraapi-0.1.0/docs_src/cookie_param_models/tutorial002_an_py39.py +19 -0
  264. astraapi-0.1.0/docs_src/cookie_param_models/tutorial002_py310.py +17 -0
  265. astraapi-0.1.0/docs_src/cookie_param_models/tutorial002_py39.py +19 -0
  266. astraapi-0.1.0/docs_src/cookie_params/__init__.py +0 -0
  267. astraapi-0.1.0/docs_src/cookie_params/tutorial001_an_py310.py +10 -0
  268. astraapi-0.1.0/docs_src/cookie_params/tutorial001_an_py39.py +10 -0
  269. astraapi-0.1.0/docs_src/cookie_params/tutorial001_py310.py +8 -0
  270. astraapi-0.1.0/docs_src/cookie_params/tutorial001_py39.py +10 -0
  271. astraapi-0.1.0/docs_src/cors/__init__.py +0 -0
  272. astraapi-0.1.0/docs_src/cors/tutorial001_py39.py +24 -0
  273. astraapi-0.1.0/docs_src/custom_docs_ui/__init__.py +0 -0
  274. astraapi-0.1.0/docs_src/custom_docs_ui/tutorial001_py39.py +38 -0
  275. astraapi-0.1.0/docs_src/custom_docs_ui/tutorial002_py39.py +41 -0
  276. astraapi-0.1.0/docs_src/custom_request_and_route/__init__.py +0 -0
  277. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial001_an_py310.py +36 -0
  278. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial001_an_py39.py +35 -0
  279. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial001_py310.py +35 -0
  280. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial001_py39.py +35 -0
  281. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial002_an_py310.py +30 -0
  282. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial002_an_py39.py +29 -0
  283. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial002_py310.py +29 -0
  284. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial002_py39.py +29 -0
  285. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial003_py310.py +39 -0
  286. astraapi-0.1.0/docs_src/custom_request_and_route/tutorial003_py39.py +39 -0
  287. astraapi-0.1.0/docs_src/custom_response/__init__.py +0 -0
  288. astraapi-0.1.0/docs_src/custom_response/tutorial001_py39.py +9 -0
  289. astraapi-0.1.0/docs_src/custom_response/tutorial001b_py39.py +9 -0
  290. astraapi-0.1.0/docs_src/custom_response/tutorial002_py39.py +18 -0
  291. astraapi-0.1.0/docs_src/custom_response/tutorial003_py39.py +19 -0
  292. astraapi-0.1.0/docs_src/custom_response/tutorial004_py39.py +23 -0
  293. astraapi-0.1.0/docs_src/custom_response/tutorial005_py39.py +9 -0
  294. astraapi-0.1.0/docs_src/custom_response/tutorial006_py39.py +9 -0
  295. astraapi-0.1.0/docs_src/custom_response/tutorial006b_py39.py +9 -0
  296. astraapi-0.1.0/docs_src/custom_response/tutorial006c_py39.py +9 -0
  297. astraapi-0.1.0/docs_src/custom_response/tutorial007_py39.py +14 -0
  298. astraapi-0.1.0/docs_src/custom_response/tutorial008_py39.py +14 -0
  299. astraapi-0.1.0/docs_src/custom_response/tutorial009_py39.py +10 -0
  300. astraapi-0.1.0/docs_src/custom_response/tutorial009b_py39.py +10 -0
  301. astraapi-0.1.0/docs_src/custom_response/tutorial009c_py39.py +19 -0
  302. astraapi-0.1.0/docs_src/custom_response/tutorial010_py39.py +9 -0
  303. astraapi-0.1.0/docs_src/dataclasses_/__init__.py +0 -0
  304. astraapi-0.1.0/docs_src/dataclasses_/tutorial001_py310.py +19 -0
  305. astraapi-0.1.0/docs_src/dataclasses_/tutorial001_py39.py +20 -0
  306. astraapi-0.1.0/docs_src/dataclasses_/tutorial002_py310.py +25 -0
  307. astraapi-0.1.0/docs_src/dataclasses_/tutorial002_py39.py +26 -0
  308. astraapi-0.1.0/docs_src/dataclasses_/tutorial003_py310.py +54 -0
  309. astraapi-0.1.0/docs_src/dataclasses_/tutorial003_py39.py +55 -0
  310. astraapi-0.1.0/docs_src/debugging/__init__.py +0 -0
  311. astraapi-0.1.0/docs_src/debugging/tutorial001_py39.py +15 -0
  312. astraapi-0.1.0/docs_src/dependencies/__init__.py +0 -0
  313. astraapi-0.1.0/docs_src/dependencies/tutorial001_02_an_py310.py +22 -0
  314. astraapi-0.1.0/docs_src/dependencies/tutorial001_02_an_py39.py +24 -0
  315. astraapi-0.1.0/docs_src/dependencies/tutorial001_an_py310.py +19 -0
  316. astraapi-0.1.0/docs_src/dependencies/tutorial001_an_py39.py +21 -0
  317. astraapi-0.1.0/docs_src/dependencies/tutorial001_py310.py +17 -0
  318. astraapi-0.1.0/docs_src/dependencies/tutorial001_py39.py +21 -0
  319. astraapi-0.1.0/docs_src/dependencies/tutorial002_an_py310.py +25 -0
  320. astraapi-0.1.0/docs_src/dependencies/tutorial002_an_py39.py +25 -0
  321. astraapi-0.1.0/docs_src/dependencies/tutorial002_py310.py +23 -0
  322. astraapi-0.1.0/docs_src/dependencies/tutorial002_py39.py +25 -0
  323. astraapi-0.1.0/docs_src/dependencies/tutorial003_an_py310.py +25 -0
  324. astraapi-0.1.0/docs_src/dependencies/tutorial003_an_py39.py +25 -0
  325. astraapi-0.1.0/docs_src/dependencies/tutorial003_py310.py +23 -0
  326. astraapi-0.1.0/docs_src/dependencies/tutorial003_py39.py +25 -0
  327. astraapi-0.1.0/docs_src/dependencies/tutorial004_an_py310.py +25 -0
  328. astraapi-0.1.0/docs_src/dependencies/tutorial004_an_py39.py +25 -0
  329. astraapi-0.1.0/docs_src/dependencies/tutorial004_py310.py +23 -0
  330. astraapi-0.1.0/docs_src/dependencies/tutorial004_py39.py +25 -0
  331. astraapi-0.1.0/docs_src/dependencies/tutorial005_an_py310.py +25 -0
  332. astraapi-0.1.0/docs_src/dependencies/tutorial005_an_py39.py +25 -0
  333. astraapi-0.1.0/docs_src/dependencies/tutorial005_py310.py +20 -0
  334. astraapi-0.1.0/docs_src/dependencies/tutorial005_py39.py +23 -0
  335. astraapi-0.1.0/docs_src/dependencies/tutorial006_an_py39.py +21 -0
  336. astraapi-0.1.0/docs_src/dependencies/tutorial006_py39.py +19 -0
  337. astraapi-0.1.0/docs_src/dependencies/tutorial007_py39.py +6 -0
  338. astraapi-0.1.0/docs_src/dependencies/tutorial008_an_py39.py +27 -0
  339. astraapi-0.1.0/docs_src/dependencies/tutorial008_py39.py +25 -0
  340. astraapi-0.1.0/docs_src/dependencies/tutorial008b_an_py39.py +32 -0
  341. astraapi-0.1.0/docs_src/dependencies/tutorial008b_py39.py +30 -0
  342. astraapi-0.1.0/docs_src/dependencies/tutorial008c_an_py39.py +29 -0
  343. astraapi-0.1.0/docs_src/dependencies/tutorial008c_py39.py +27 -0
  344. astraapi-0.1.0/docs_src/dependencies/tutorial008d_an_py39.py +30 -0
  345. astraapi-0.1.0/docs_src/dependencies/tutorial008d_py39.py +28 -0
  346. astraapi-0.1.0/docs_src/dependencies/tutorial008e_an_py39.py +17 -0
  347. astraapi-0.1.0/docs_src/dependencies/tutorial008e_py39.py +15 -0
  348. astraapi-0.1.0/docs_src/dependencies/tutorial010_py39.py +14 -0
  349. astraapi-0.1.0/docs_src/dependencies/tutorial011_an_py39.py +23 -0
  350. astraapi-0.1.0/docs_src/dependencies/tutorial011_py39.py +21 -0
  351. astraapi-0.1.0/docs_src/dependencies/tutorial012_an_py39.py +27 -0
  352. astraapi-0.1.0/docs_src/dependencies/tutorial012_py39.py +25 -0
  353. astraapi-0.1.0/docs_src/dependencies/tutorial013_an_py310.py +38 -0
  354. astraapi-0.1.0/docs_src/dependencies/tutorial014_an_py310.py +39 -0
  355. astraapi-0.1.0/docs_src/dependency_testing/__init__.py +0 -0
  356. astraapi-0.1.0/docs_src/dependency_testing/tutorial001_an_py310.py +57 -0
  357. astraapi-0.1.0/docs_src/dependency_testing/tutorial001_an_py39.py +59 -0
  358. astraapi-0.1.0/docs_src/dependency_testing/tutorial001_py310.py +55 -0
  359. astraapi-0.1.0/docs_src/dependency_testing/tutorial001_py39.py +59 -0
  360. astraapi-0.1.0/docs_src/encoder/__init__.py +0 -0
  361. astraapi-0.1.0/docs_src/encoder/tutorial001_py310.py +22 -0
  362. astraapi-0.1.0/docs_src/encoder/tutorial001_py39.py +23 -0
  363. astraapi-0.1.0/docs_src/events/__init__.py +0 -0
  364. astraapi-0.1.0/docs_src/events/tutorial001_py39.py +16 -0
  365. astraapi-0.1.0/docs_src/events/tutorial002_py39.py +14 -0
  366. astraapi-0.1.0/docs_src/events/tutorial003_py39.py +28 -0
  367. astraapi-0.1.0/docs_src/extending_openapi/__init__.py +0 -0
  368. astraapi-0.1.0/docs_src/extending_openapi/tutorial001_py39.py +29 -0
  369. astraapi-0.1.0/docs_src/extra_data_types/__init__.py +0 -0
  370. astraapi-0.1.0/docs_src/extra_data_types/tutorial001_an_py310.py +28 -0
  371. astraapi-0.1.0/docs_src/extra_data_types/tutorial001_an_py39.py +28 -0
  372. astraapi-0.1.0/docs_src/extra_data_types/tutorial001_py310.py +27 -0
  373. astraapi-0.1.0/docs_src/extra_data_types/tutorial001_py39.py +28 -0
  374. astraapi-0.1.0/docs_src/extra_models/__init__.py +0 -0
  375. astraapi-0.1.0/docs_src/extra_models/tutorial001_py310.py +41 -0
  376. astraapi-0.1.0/docs_src/extra_models/tutorial001_py39.py +43 -0
  377. astraapi-0.1.0/docs_src/extra_models/tutorial002_py310.py +39 -0
  378. astraapi-0.1.0/docs_src/extra_models/tutorial002_py39.py +41 -0
  379. astraapi-0.1.0/docs_src/extra_models/tutorial003_py310.py +35 -0
  380. astraapi-0.1.0/docs_src/extra_models/tutorial003_py39.py +35 -0
  381. astraapi-0.1.0/docs_src/extra_models/tutorial004_py39.py +20 -0
  382. astraapi-0.1.0/docs_src/extra_models/tutorial005_py39.py +8 -0
  383. astraapi-0.1.0/docs_src/first_steps/__init__.py +0 -0
  384. astraapi-0.1.0/docs_src/first_steps/tutorial001_py39.py +8 -0
  385. astraapi-0.1.0/docs_src/first_steps/tutorial003_py39.py +8 -0
  386. astraapi-0.1.0/docs_src/generate_clients/__init__.py +0 -0
  387. astraapi-0.1.0/docs_src/generate_clients/tutorial001_py39.py +26 -0
  388. astraapi-0.1.0/docs_src/generate_clients/tutorial002_py39.py +36 -0
  389. astraapi-0.1.0/docs_src/generate_clients/tutorial003_py39.py +42 -0
  390. astraapi-0.1.0/docs_src/generate_clients/tutorial004.js +36 -0
  391. astraapi-0.1.0/docs_src/generate_clients/tutorial004_py39.py +15 -0
  392. astraapi-0.1.0/docs_src/graphql_/__init__.py +0 -0
  393. astraapi-0.1.0/docs_src/graphql_/tutorial001_py39.py +25 -0
  394. astraapi-0.1.0/docs_src/handling_errors/__init__.py +0 -0
  395. astraapi-0.1.0/docs_src/handling_errors/tutorial001_py39.py +12 -0
  396. astraapi-0.1.0/docs_src/handling_errors/tutorial002_py39.py +16 -0
  397. astraapi-0.1.0/docs_src/handling_errors/tutorial003_py39.py +25 -0
  398. astraapi-0.1.0/docs_src/handling_errors/tutorial004_py39.py +26 -0
  399. astraapi-0.1.0/docs_src/handling_errors/tutorial005_py39.py +25 -0
  400. astraapi-0.1.0/docs_src/handling_errors/tutorial006_py39.py +28 -0
  401. astraapi-0.1.0/docs_src/header_param_models/__init__.py +0 -0
  402. astraapi-0.1.0/docs_src/header_param_models/tutorial001_an_py310.py +19 -0
  403. astraapi-0.1.0/docs_src/header_param_models/tutorial001_an_py39.py +19 -0
  404. astraapi-0.1.0/docs_src/header_param_models/tutorial001_py310.py +17 -0
  405. astraapi-0.1.0/docs_src/header_param_models/tutorial001_py39.py +19 -0
  406. astraapi-0.1.0/docs_src/header_param_models/tutorial002_an_py310.py +21 -0
  407. astraapi-0.1.0/docs_src/header_param_models/tutorial002_an_py39.py +21 -0
  408. astraapi-0.1.0/docs_src/header_param_models/tutorial002_py310.py +19 -0
  409. astraapi-0.1.0/docs_src/header_param_models/tutorial002_py39.py +21 -0
  410. astraapi-0.1.0/docs_src/header_param_models/tutorial003_an_py310.py +21 -0
  411. astraapi-0.1.0/docs_src/header_param_models/tutorial003_an_py39.py +21 -0
  412. astraapi-0.1.0/docs_src/header_param_models/tutorial003_py310.py +17 -0
  413. astraapi-0.1.0/docs_src/header_param_models/tutorial003_py39.py +19 -0
  414. astraapi-0.1.0/docs_src/header_params/__init__.py +0 -0
  415. astraapi-0.1.0/docs_src/header_params/tutorial001_an_py310.py +10 -0
  416. astraapi-0.1.0/docs_src/header_params/tutorial001_an_py39.py +10 -0
  417. astraapi-0.1.0/docs_src/header_params/tutorial001_py310.py +8 -0
  418. astraapi-0.1.0/docs_src/header_params/tutorial001_py39.py +10 -0
  419. astraapi-0.1.0/docs_src/header_params/tutorial002_an_py310.py +12 -0
  420. astraapi-0.1.0/docs_src/header_params/tutorial002_an_py39.py +14 -0
  421. astraapi-0.1.0/docs_src/header_params/tutorial002_py310.py +10 -0
  422. astraapi-0.1.0/docs_src/header_params/tutorial002_py39.py +12 -0
  423. astraapi-0.1.0/docs_src/header_params/tutorial003_an_py310.py +10 -0
  424. astraapi-0.1.0/docs_src/header_params/tutorial003_an_py39.py +10 -0
  425. astraapi-0.1.0/docs_src/header_params/tutorial003_py310.py +8 -0
  426. astraapi-0.1.0/docs_src/header_params/tutorial003_py39.py +10 -0
  427. astraapi-0.1.0/docs_src/metadata/__init__.py +0 -0
  428. astraapi-0.1.0/docs_src/metadata/tutorial001_1_py39.py +38 -0
  429. astraapi-0.1.0/docs_src/metadata/tutorial001_py39.py +38 -0
  430. astraapi-0.1.0/docs_src/metadata/tutorial002_py39.py +8 -0
  431. astraapi-0.1.0/docs_src/metadata/tutorial003_py39.py +8 -0
  432. astraapi-0.1.0/docs_src/metadata/tutorial004_py39.py +28 -0
  433. astraapi-0.1.0/docs_src/middleware/__init__.py +0 -0
  434. astraapi-0.1.0/docs_src/middleware/tutorial001_py39.py +14 -0
  435. astraapi-0.1.0/docs_src/openapi_callbacks/__init__.py +0 -0
  436. astraapi-0.1.0/docs_src/openapi_callbacks/tutorial001_py310.py +51 -0
  437. astraapi-0.1.0/docs_src/openapi_callbacks/tutorial001_py39.py +53 -0
  438. astraapi-0.1.0/docs_src/openapi_webhooks/__init__.py +0 -0
  439. astraapi-0.1.0/docs_src/openapi_webhooks/tutorial001_py39.py +25 -0
  440. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/__init__.py +0 -0
  441. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial001_py39.py +8 -0
  442. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial002_py39.py +24 -0
  443. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial003_py39.py +8 -0
  444. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial004_py310.py +28 -0
  445. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial004_py39.py +30 -0
  446. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial005_py39.py +8 -0
  447. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial006_py39.py +41 -0
  448. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial007_pv1_py39.py +32 -0
  449. astraapi-0.1.0/docs_src/path_operation_advanced_configuration/tutorial007_py39.py +32 -0
  450. astraapi-0.1.0/docs_src/path_operation_configuration/__init__.py +0 -0
  451. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial001_py310.py +17 -0
  452. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial001_py39.py +19 -0
  453. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial002_py310.py +27 -0
  454. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial002_py39.py +29 -0
  455. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial002b_py39.py +20 -0
  456. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial003_py310.py +21 -0
  457. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial003_py39.py +23 -0
  458. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial004_py310.py +26 -0
  459. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial004_py39.py +28 -0
  460. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial005_py310.py +30 -0
  461. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial005_py39.py +32 -0
  462. astraapi-0.1.0/docs_src/path_operation_configuration/tutorial006_py39.py +18 -0
  463. astraapi-0.1.0/docs_src/path_params/__init__.py +0 -0
  464. astraapi-0.1.0/docs_src/path_params/tutorial001_py39.py +8 -0
  465. astraapi-0.1.0/docs_src/path_params/tutorial002_py39.py +8 -0
  466. astraapi-0.1.0/docs_src/path_params/tutorial003_py39.py +13 -0
  467. astraapi-0.1.0/docs_src/path_params/tutorial003b_py39.py +13 -0
  468. astraapi-0.1.0/docs_src/path_params/tutorial004_py39.py +8 -0
  469. astraapi-0.1.0/docs_src/path_params/tutorial005_py39.py +23 -0
  470. astraapi-0.1.0/docs_src/path_params_numeric_validations/__init__.py +0 -0
  471. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial001_an_py310.py +16 -0
  472. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial001_an_py39.py +16 -0
  473. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial001_py310.py +14 -0
  474. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial001_py39.py +16 -0
  475. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial002_an_py39.py +15 -0
  476. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial002_py39.py +11 -0
  477. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial003_an_py39.py +15 -0
  478. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial003_py39.py +11 -0
  479. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial004_an_py39.py +15 -0
  480. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial004_py39.py +13 -0
  481. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial005_an_py39.py +16 -0
  482. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial005_py39.py +15 -0
  483. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial006_an_py39.py +20 -0
  484. astraapi-0.1.0/docs_src/path_params_numeric_validations/tutorial006_py39.py +18 -0
  485. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/__init__.py +0 -0
  486. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial001_an_py310.py +7 -0
  487. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial001_an_py39.py +9 -0
  488. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial002_an_py310.py +16 -0
  489. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial002_an_py39.py +18 -0
  490. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial003_an_py310.py +23 -0
  491. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial003_an_py39.py +25 -0
  492. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial004_an_py310.py +19 -0
  493. astraapi-0.1.0/docs_src/pydantic_v1_in_v2/tutorial004_an_py39.py +19 -0
  494. astraapi-0.1.0/docs_src/python_types/__init__.py +0 -0
  495. astraapi-0.1.0/docs_src/python_types/tutorial001_py39.py +6 -0
  496. astraapi-0.1.0/docs_src/python_types/tutorial002_py39.py +6 -0
  497. astraapi-0.1.0/docs_src/python_types/tutorial003_py39.py +3 -0
  498. astraapi-0.1.0/docs_src/python_types/tutorial004_py39.py +3 -0
  499. astraapi-0.1.0/docs_src/python_types/tutorial005_py39.py +2 -0
  500. astraapi-0.1.0/docs_src/python_types/tutorial006_py39.py +3 -0
  501. astraapi-0.1.0/docs_src/python_types/tutorial007_py39.py +2 -0
  502. astraapi-0.1.0/docs_src/python_types/tutorial008_py39.py +4 -0
  503. astraapi-0.1.0/docs_src/python_types/tutorial008b_py310.py +2 -0
  504. astraapi-0.1.0/docs_src/python_types/tutorial008b_py39.py +5 -0
  505. astraapi-0.1.0/docs_src/python_types/tutorial009_py310.py +5 -0
  506. astraapi-0.1.0/docs_src/python_types/tutorial009_py39.py +8 -0
  507. astraapi-0.1.0/docs_src/python_types/tutorial009b_py39.py +8 -0
  508. astraapi-0.1.0/docs_src/python_types/tutorial009c_py310.py +2 -0
  509. astraapi-0.1.0/docs_src/python_types/tutorial009c_py39.py +5 -0
  510. astraapi-0.1.0/docs_src/python_types/tutorial010_py39.py +7 -0
  511. astraapi-0.1.0/docs_src/python_types/tutorial011_py310.py +22 -0
  512. astraapi-0.1.0/docs_src/python_types/tutorial011_py39.py +23 -0
  513. astraapi-0.1.0/docs_src/python_types/tutorial012_py39.py +8 -0
  514. astraapi-0.1.0/docs_src/python_types/tutorial013_py39.py +5 -0
  515. astraapi-0.1.0/docs_src/query_param_models/__init__.py +0 -0
  516. astraapi-0.1.0/docs_src/query_param_models/tutorial001_an_py310.py +18 -0
  517. astraapi-0.1.0/docs_src/query_param_models/tutorial001_an_py39.py +18 -0
  518. astraapi-0.1.0/docs_src/query_param_models/tutorial001_py310.py +18 -0
  519. astraapi-0.1.0/docs_src/query_param_models/tutorial001_py39.py +18 -0
  520. astraapi-0.1.0/docs_src/query_param_models/tutorial002_an_py310.py +20 -0
  521. astraapi-0.1.0/docs_src/query_param_models/tutorial002_an_py39.py +20 -0
  522. astraapi-0.1.0/docs_src/query_param_models/tutorial002_py310.py +20 -0
  523. astraapi-0.1.0/docs_src/query_param_models/tutorial002_py39.py +20 -0
  524. astraapi-0.1.0/docs_src/query_params/__init__.py +0 -0
  525. astraapi-0.1.0/docs_src/query_params/tutorial001_py39.py +10 -0
  526. astraapi-0.1.0/docs_src/query_params/tutorial002_py310.py +10 -0
  527. astraapi-0.1.0/docs_src/query_params/tutorial002_py39.py +12 -0
  528. astraapi-0.1.0/docs_src/query_params/tutorial003_py310.py +15 -0
  529. astraapi-0.1.0/docs_src/query_params/tutorial003_py39.py +17 -0
  530. astraapi-0.1.0/docs_src/query_params/tutorial004_py310.py +17 -0
  531. astraapi-0.1.0/docs_src/query_params/tutorial004_py39.py +19 -0
  532. astraapi-0.1.0/docs_src/query_params/tutorial005_py39.py +9 -0
  533. astraapi-0.1.0/docs_src/query_params/tutorial006_py310.py +11 -0
  534. astraapi-0.1.0/docs_src/query_params/tutorial006_py39.py +13 -0
  535. astraapi-0.1.0/docs_src/query_params_str_validations/__init__.py +0 -0
  536. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial001_py310.py +11 -0
  537. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial001_py39.py +13 -0
  538. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial002_an_py310.py +13 -0
  539. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial002_an_py39.py +13 -0
  540. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial002_py310.py +11 -0
  541. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial002_py39.py +13 -0
  542. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial003_an_py310.py +15 -0
  543. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial003_an_py39.py +15 -0
  544. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial003_py310.py +11 -0
  545. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial003_py39.py +15 -0
  546. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial004_an_py310.py +17 -0
  547. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial004_an_py39.py +17 -0
  548. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial004_py310.py +15 -0
  549. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial004_py39.py +17 -0
  550. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial004_regex_an_py310.py +17 -0
  551. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial005_an_py39.py +13 -0
  552. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial005_py39.py +11 -0
  553. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial006_an_py39.py +13 -0
  554. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial006_py39.py +11 -0
  555. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial006c_an_py310.py +13 -0
  556. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial006c_an_py39.py +13 -0
  557. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial006c_py310.py +11 -0
  558. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial006c_py39.py +13 -0
  559. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial007_an_py310.py +15 -0
  560. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial007_an_py39.py +15 -0
  561. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial007_py310.py +13 -0
  562. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial007_py39.py +15 -0
  563. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial008_an_py310.py +22 -0
  564. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial008_an_py39.py +22 -0
  565. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial008_py310.py +18 -0
  566. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial008_py39.py +20 -0
  567. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial009_an_py310.py +13 -0
  568. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial009_an_py39.py +13 -0
  569. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial009_py310.py +11 -0
  570. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial009_py39.py +13 -0
  571. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial010_an_py310.py +26 -0
  572. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial010_an_py39.py +26 -0
  573. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial010_py310.py +22 -0
  574. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial010_py39.py +24 -0
  575. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial011_an_py310.py +11 -0
  576. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial011_an_py39.py +11 -0
  577. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial011_py310.py +9 -0
  578. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial011_py39.py +11 -0
  579. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial012_an_py39.py +11 -0
  580. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial012_py39.py +9 -0
  581. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial013_an_py39.py +11 -0
  582. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial013_py39.py +9 -0
  583. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial014_an_py310.py +15 -0
  584. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial014_an_py39.py +15 -0
  585. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial014_py310.py +13 -0
  586. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial014_py39.py +15 -0
  587. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial015_an_py310.py +30 -0
  588. astraapi-0.1.0/docs_src/query_params_str_validations/tutorial015_an_py39.py +30 -0
  589. astraapi-0.1.0/docs_src/request_files/__init__.py +0 -0
  590. astraapi-0.1.0/docs_src/request_files/tutorial001_02_an_py310.py +21 -0
  591. astraapi-0.1.0/docs_src/request_files/tutorial001_02_an_py39.py +21 -0
  592. astraapi-0.1.0/docs_src/request_files/tutorial001_02_py310.py +19 -0
  593. astraapi-0.1.0/docs_src/request_files/tutorial001_02_py39.py +21 -0
  594. astraapi-0.1.0/docs_src/request_files/tutorial001_03_an_py39.py +17 -0
  595. astraapi-0.1.0/docs_src/request_files/tutorial001_03_py39.py +15 -0
  596. astraapi-0.1.0/docs_src/request_files/tutorial001_an_py39.py +15 -0
  597. astraapi-0.1.0/docs_src/request_files/tutorial001_py39.py +13 -0
  598. astraapi-0.1.0/docs_src/request_files/tutorial002_an_py39.py +33 -0
  599. astraapi-0.1.0/docs_src/request_files/tutorial002_py39.py +31 -0
  600. astraapi-0.1.0/docs_src/request_files/tutorial003_an_py39.py +39 -0
  601. astraapi-0.1.0/docs_src/request_files/tutorial003_py39.py +35 -0
  602. astraapi-0.1.0/docs_src/request_form_models/__init__.py +0 -0
  603. astraapi-0.1.0/docs_src/request_form_models/tutorial001_an_py39.py +16 -0
  604. astraapi-0.1.0/docs_src/request_form_models/tutorial001_py39.py +14 -0
  605. astraapi-0.1.0/docs_src/request_form_models/tutorial002_an_py39.py +17 -0
  606. astraapi-0.1.0/docs_src/request_form_models/tutorial002_py39.py +15 -0
  607. astraapi-0.1.0/docs_src/request_forms/__init__.py +0 -0
  608. astraapi-0.1.0/docs_src/request_forms/tutorial001_an_py39.py +10 -0
  609. astraapi-0.1.0/docs_src/request_forms/tutorial001_py39.py +8 -0
  610. astraapi-0.1.0/docs_src/request_forms_and_files/__init__.py +0 -0
  611. astraapi-0.1.0/docs_src/request_forms_and_files/tutorial001_an_py39.py +18 -0
  612. astraapi-0.1.0/docs_src/request_forms_and_files/tutorial001_py39.py +14 -0
  613. astraapi-0.1.0/docs_src/response_change_status_code/__init__.py +0 -0
  614. astraapi-0.1.0/docs_src/response_change_status_code/tutorial001_py39.py +13 -0
  615. astraapi-0.1.0/docs_src/response_cookies/__init__.py +0 -0
  616. astraapi-0.1.0/docs_src/response_cookies/tutorial001_py39.py +12 -0
  617. astraapi-0.1.0/docs_src/response_cookies/tutorial002_py39.py +9 -0
  618. astraapi-0.1.0/docs_src/response_directly/__init__.py +0 -0
  619. astraapi-0.1.0/docs_src/response_directly/tutorial001_py310.py +21 -0
  620. astraapi-0.1.0/docs_src/response_directly/tutorial001_py39.py +22 -0
  621. astraapi-0.1.0/docs_src/response_directly/tutorial002_py39.py +18 -0
  622. astraapi-0.1.0/docs_src/response_headers/__init__.py +0 -0
  623. astraapi-0.1.0/docs_src/response_headers/tutorial001_py39.py +11 -0
  624. astraapi-0.1.0/docs_src/response_headers/tutorial002_py39.py +9 -0
  625. astraapi-0.1.0/docs_src/response_model/__init__.py +0 -0
  626. astraapi-0.1.0/docs_src/response_model/tutorial001_01_py310.py +25 -0
  627. astraapi-0.1.0/docs_src/response_model/tutorial001_01_py39.py +27 -0
  628. astraapi-0.1.0/docs_src/response_model/tutorial001_py310.py +27 -0
  629. astraapi-0.1.0/docs_src/response_model/tutorial001_py39.py +27 -0
  630. astraapi-0.1.0/docs_src/response_model/tutorial002_py310.py +17 -0
  631. astraapi-0.1.0/docs_src/response_model/tutorial002_py39.py +19 -0
  632. astraapi-0.1.0/docs_src/response_model/tutorial003_01_py310.py +19 -0
  633. astraapi-0.1.0/docs_src/response_model/tutorial003_01_py39.py +21 -0
  634. astraapi-0.1.0/docs_src/response_model/tutorial003_02_py39.py +11 -0
  635. astraapi-0.1.0/docs_src/response_model/tutorial003_03_py39.py +9 -0
  636. astraapi-0.1.0/docs_src/response_model/tutorial003_04_py310.py +11 -0
  637. astraapi-0.1.0/docs_src/response_model/tutorial003_04_py39.py +13 -0
  638. astraapi-0.1.0/docs_src/response_model/tutorial003_05_py310.py +11 -0
  639. astraapi-0.1.0/docs_src/response_model/tutorial003_05_py39.py +13 -0
  640. astraapi-0.1.0/docs_src/response_model/tutorial003_py310.py +24 -0
  641. astraapi-0.1.0/docs_src/response_model/tutorial003_py39.py +24 -0
  642. astraapi-0.1.0/docs_src/response_model/tutorial004_py310.py +24 -0
  643. astraapi-0.1.0/docs_src/response_model/tutorial004_py39.py +26 -0
  644. astraapi-0.1.0/docs_src/response_model/tutorial005_py310.py +37 -0
  645. astraapi-0.1.0/docs_src/response_model/tutorial005_py39.py +39 -0
  646. astraapi-0.1.0/docs_src/response_model/tutorial006_py310.py +37 -0
  647. astraapi-0.1.0/docs_src/response_model/tutorial006_py39.py +39 -0
  648. astraapi-0.1.0/docs_src/response_status_code/__init__.py +0 -0
  649. astraapi-0.1.0/docs_src/response_status_code/tutorial001_py39.py +8 -0
  650. astraapi-0.1.0/docs_src/response_status_code/tutorial002_py39.py +8 -0
  651. astraapi-0.1.0/docs_src/schema_extra_example/__init__.py +0 -0
  652. astraapi-0.1.0/docs_src/schema_extra_example/tutorial001_pv1_py310.py +29 -0
  653. astraapi-0.1.0/docs_src/schema_extra_example/tutorial001_pv1_py39.py +31 -0
  654. astraapi-0.1.0/docs_src/schema_extra_example/tutorial001_py310.py +30 -0
  655. astraapi-0.1.0/docs_src/schema_extra_example/tutorial001_py39.py +32 -0
  656. astraapi-0.1.0/docs_src/schema_extra_example/tutorial002_py310.py +17 -0
  657. astraapi-0.1.0/docs_src/schema_extra_example/tutorial002_py39.py +19 -0
  658. astraapi-0.1.0/docs_src/schema_extra_example/tutorial003_an_py310.py +34 -0
  659. astraapi-0.1.0/docs_src/schema_extra_example/tutorial003_an_py39.py +34 -0
  660. astraapi-0.1.0/docs_src/schema_extra_example/tutorial003_py310.py +29 -0
  661. astraapi-0.1.0/docs_src/schema_extra_example/tutorial003_py39.py +31 -0
  662. astraapi-0.1.0/docs_src/schema_extra_example/tutorial004_an_py310.py +43 -0
  663. astraapi-0.1.0/docs_src/schema_extra_example/tutorial004_an_py39.py +43 -0
  664. astraapi-0.1.0/docs_src/schema_extra_example/tutorial004_py310.py +38 -0
  665. astraapi-0.1.0/docs_src/schema_extra_example/tutorial004_py39.py +40 -0
  666. astraapi-0.1.0/docs_src/schema_extra_example/tutorial005_an_py310.py +54 -0
  667. astraapi-0.1.0/docs_src/schema_extra_example/tutorial005_an_py39.py +54 -0
  668. astraapi-0.1.0/docs_src/schema_extra_example/tutorial005_py310.py +49 -0
  669. astraapi-0.1.0/docs_src/schema_extra_example/tutorial005_py39.py +51 -0
  670. astraapi-0.1.0/docs_src/security/__init__.py +0 -0
  671. astraapi-0.1.0/docs_src/security/tutorial001_an_py39.py +13 -0
  672. astraapi-0.1.0/docs_src/security/tutorial001_py39.py +11 -0
  673. astraapi-0.1.0/docs_src/security/tutorial002_an_py310.py +32 -0
  674. astraapi-0.1.0/docs_src/security/tutorial002_an_py39.py +32 -0
  675. astraapi-0.1.0/docs_src/security/tutorial002_py310.py +30 -0
  676. astraapi-0.1.0/docs_src/security/tutorial002_py39.py +32 -0
  677. astraapi-0.1.0/docs_src/security/tutorial003_an_py310.py +94 -0
  678. astraapi-0.1.0/docs_src/security/tutorial003_an_py39.py +94 -0
  679. astraapi-0.1.0/docs_src/security/tutorial003_py310.py +88 -0
  680. astraapi-0.1.0/docs_src/security/tutorial003_py39.py +90 -0
  681. astraapi-0.1.0/docs_src/security/tutorial004_an_py310.py +147 -0
  682. astraapi-0.1.0/docs_src/security/tutorial004_an_py39.py +147 -0
  683. astraapi-0.1.0/docs_src/security/tutorial004_py310.py +140 -0
  684. astraapi-0.1.0/docs_src/security/tutorial004_py39.py +141 -0
  685. astraapi-0.1.0/docs_src/security/tutorial005_an_py310.py +179 -0
  686. astraapi-0.1.0/docs_src/security/tutorial005_an_py39.py +179 -0
  687. astraapi-0.1.0/docs_src/security/tutorial005_py310.py +176 -0
  688. astraapi-0.1.0/docs_src/security/tutorial005_py39.py +177 -0
  689. astraapi-0.1.0/docs_src/security/tutorial006_an_py39.py +13 -0
  690. astraapi-0.1.0/docs_src/security/tutorial006_py39.py +11 -0
  691. astraapi-0.1.0/docs_src/security/tutorial007_an_py39.py +36 -0
  692. astraapi-0.1.0/docs_src/security/tutorial007_py39.py +33 -0
  693. astraapi-0.1.0/docs_src/separate_openapi_schemas/__init__.py +0 -0
  694. astraapi-0.1.0/docs_src/separate_openapi_schemas/tutorial001_py310.py +26 -0
  695. astraapi-0.1.0/docs_src/separate_openapi_schemas/tutorial001_py39.py +28 -0
  696. astraapi-0.1.0/docs_src/separate_openapi_schemas/tutorial002_py310.py +26 -0
  697. astraapi-0.1.0/docs_src/separate_openapi_schemas/tutorial002_py39.py +28 -0
  698. astraapi-0.1.0/docs_src/settings/__init__.py +0 -0
  699. astraapi-0.1.0/docs_src/settings/app01_py39/__init__.py +0 -0
  700. astraapi-0.1.0/docs_src/settings/app01_py39/config.py +10 -0
  701. astraapi-0.1.0/docs_src/settings/app01_py39/main.py +14 -0
  702. astraapi-0.1.0/docs_src/settings/app02_an_py39/__init__.py +0 -0
  703. astraapi-0.1.0/docs_src/settings/app02_an_py39/config.py +7 -0
  704. astraapi-0.1.0/docs_src/settings/app02_an_py39/main.py +22 -0
  705. astraapi-0.1.0/docs_src/settings/app02_an_py39/test_main.py +23 -0
  706. astraapi-0.1.0/docs_src/settings/app02_py39/__init__.py +0 -0
  707. astraapi-0.1.0/docs_src/settings/app02_py39/config.py +7 -0
  708. astraapi-0.1.0/docs_src/settings/app02_py39/main.py +21 -0
  709. astraapi-0.1.0/docs_src/settings/app02_py39/test_main.py +23 -0
  710. astraapi-0.1.0/docs_src/settings/app03_an_py39/__init__.py +0 -0
  711. astraapi-0.1.0/docs_src/settings/app03_an_py39/config.py +9 -0
  712. astraapi-0.1.0/docs_src/settings/app03_an_py39/config_pv1.py +10 -0
  713. astraapi-0.1.0/docs_src/settings/app03_an_py39/main.py +22 -0
  714. astraapi-0.1.0/docs_src/settings/app03_py39/__init__.py +0 -0
  715. astraapi-0.1.0/docs_src/settings/app03_py39/config.py +9 -0
  716. astraapi-0.1.0/docs_src/settings/app03_py39/config_pv1.py +10 -0
  717. astraapi-0.1.0/docs_src/settings/app03_py39/main.py +21 -0
  718. astraapi-0.1.0/docs_src/settings/tutorial001_pv1_py39.py +21 -0
  719. astraapi-0.1.0/docs_src/settings/tutorial001_py39.py +21 -0
  720. astraapi-0.1.0/docs_src/sql_databases/__init__.py +0 -0
  721. astraapi-0.1.0/docs_src/sql_databases/tutorial001_an_py310.py +73 -0
  722. astraapi-0.1.0/docs_src/sql_databases/tutorial001_an_py39.py +73 -0
  723. astraapi-0.1.0/docs_src/sql_databases/tutorial001_py310.py +69 -0
  724. astraapi-0.1.0/docs_src/sql_databases/tutorial001_py39.py +71 -0
  725. astraapi-0.1.0/docs_src/sql_databases/tutorial002_an_py310.py +103 -0
  726. astraapi-0.1.0/docs_src/sql_databases/tutorial002_an_py39.py +103 -0
  727. astraapi-0.1.0/docs_src/sql_databases/tutorial002_py310.py +102 -0
  728. astraapi-0.1.0/docs_src/sql_databases/tutorial002_py39.py +104 -0
  729. astraapi-0.1.0/docs_src/static_files/__init__.py +0 -0
  730. astraapi-0.1.0/docs_src/static_files/tutorial001_py39.py +6 -0
  731. astraapi-0.1.0/docs_src/sub_applications/__init__.py +0 -0
  732. astraapi-0.1.0/docs_src/sub_applications/tutorial001_py39.py +19 -0
  733. astraapi-0.1.0/docs_src/templates/__init__.py +0 -0
  734. astraapi-0.1.0/docs_src/templates/static/__init__.py +0 -0
  735. astraapi-0.1.0/docs_src/templates/static/styles.css +3 -0
  736. astraapi-0.1.0/docs_src/templates/templates/__init__.py +0 -0
  737. astraapi-0.1.0/docs_src/templates/templates/item.html +9 -0
  738. astraapi-0.1.0/docs_src/templates/tutorial001_py39.py +18 -0
  739. astraapi-0.1.0/docs_src/using_request_directly/__init__.py +0 -0
  740. astraapi-0.1.0/docs_src/using_request_directly/tutorial001_py39.py +9 -0
  741. astraapi-0.1.0/docs_src/websockets/__init__.py +0 -0
  742. astraapi-0.1.0/docs_src/websockets/tutorial001_py39.py +51 -0
  743. astraapi-0.1.0/docs_src/websockets/tutorial002_an_py310.py +92 -0
  744. astraapi-0.1.0/docs_src/websockets/tutorial002_an_py39.py +92 -0
  745. astraapi-0.1.0/docs_src/websockets/tutorial002_py310.py +89 -0
  746. astraapi-0.1.0/docs_src/websockets/tutorial002_py39.py +91 -0
  747. astraapi-0.1.0/docs_src/websockets/tutorial003_py39.py +81 -0
  748. astraapi-0.1.0/docs_src/wsgi/__init__.py +0 -0
  749. astraapi-0.1.0/docs_src/wsgi/tutorial001_py39.py +23 -0
  750. astraapi-0.1.0/hi.json +78647 -0
  751. astraapi-0.1.0/ns_ws.py +23 -0
  752. astraapi-0.1.0/pyproject.toml +331 -0
  753. astraapi-0.1.0/release_notes.md +23 -0
  754. astraapi-0.1.0/tests/__init__.py +0 -0
  755. astraapi-0.1.0/tests/benchmarks/__init__.py +0 -0
  756. astraapi-0.1.0/tests/benchmarks/test_general_performance.py +399 -0
  757. astraapi-0.1.0/tests/conftest.py +53 -0
  758. astraapi-0.1.0/tests/forward_reference_type.py +9 -0
  759. astraapi-0.1.0/tests/main.py +209 -0
  760. astraapi-0.1.0/tests/test_additional_properties.py +109 -0
  761. astraapi-0.1.0/tests/test_additional_properties_bool.py +122 -0
  762. astraapi-0.1.0/tests/test_additional_response_extra.py +49 -0
  763. astraapi-0.1.0/tests/test_additional_responses_bad.py +40 -0
  764. astraapi-0.1.0/tests/test_additional_responses_custom_model_in_callback.py +149 -0
  765. astraapi-0.1.0/tests/test_additional_responses_custom_validationerror.py +97 -0
  766. astraapi-0.1.0/tests/test_additional_responses_default_validationerror.py +86 -0
  767. astraapi-0.1.0/tests/test_additional_responses_response_class.py +114 -0
  768. astraapi-0.1.0/tests/test_additional_responses_router.py +177 -0
  769. astraapi-0.1.0/tests/test_additional_responses_union_duplicate_anyof.py +123 -0
  770. astraapi-0.1.0/tests/test_allow_inf_nan_in_enforcing.py +84 -0
  771. astraapi-0.1.0/tests/test_ambiguous_params.py +74 -0
  772. astraapi-0.1.0/tests/test_annotated.py +293 -0
  773. astraapi-0.1.0/tests/test_application.py +1280 -0
  774. astraapi-0.1.0/tests/test_arbitrary_types.py +135 -0
  775. astraapi-0.1.0/tests/test_callable_endpoint.py +25 -0
  776. astraapi-0.1.0/tests/test_compat.py +134 -0
  777. astraapi-0.1.0/tests/test_computed_fields.py +97 -0
  778. astraapi-0.1.0/tests/test_custom_middleware_exception.py +101 -0
  779. astraapi-0.1.0/tests/test_custom_route_class.py +118 -0
  780. astraapi-0.1.0/tests/test_custom_schema_fields.py +62 -0
  781. astraapi-0.1.0/tests/test_custom_swagger_ui_redirect.py +38 -0
  782. astraapi-0.1.0/tests/test_datastructures.py +65 -0
  783. astraapi-0.1.0/tests/test_datetime_custom_encoder.py +28 -0
  784. astraapi-0.1.0/tests/test_default_response_class.py +216 -0
  785. astraapi-0.1.0/tests/test_default_response_class_router.py +206 -0
  786. astraapi-0.1.0/tests/test_dependency_after_yield_raise.py +68 -0
  787. astraapi-0.1.0/tests/test_dependency_after_yield_streaming.py +130 -0
  788. astraapi-0.1.0/tests/test_dependency_after_yield_websockets.py +79 -0
  789. astraapi-0.1.0/tests/test_dependency_cache.py +91 -0
  790. astraapi-0.1.0/tests/test_dependency_class.py +154 -0
  791. astraapi-0.1.0/tests/test_dependency_contextmanager.py +399 -0
  792. astraapi-0.1.0/tests/test_dependency_contextvars.py +52 -0
  793. astraapi-0.1.0/tests/test_dependency_duplicates.py +232 -0
  794. astraapi-0.1.0/tests/test_dependency_overrides.py +391 -0
  795. astraapi-0.1.0/tests/test_dependency_paramless.py +77 -0
  796. astraapi-0.1.0/tests/test_dependency_partial.py +251 -0
  797. astraapi-0.1.0/tests/test_dependency_pep695.py +27 -0
  798. astraapi-0.1.0/tests/test_dependency_security_overrides.py +63 -0
  799. astraapi-0.1.0/tests/test_dependency_wrapped.py +449 -0
  800. astraapi-0.1.0/tests/test_dependency_yield_except_httpexception.py +72 -0
  801. astraapi-0.1.0/tests/test_dependency_yield_scope.py +245 -0
  802. astraapi-0.1.0/tests/test_dependency_yield_scope_websockets.py +200 -0
  803. astraapi-0.1.0/tests/test_depends_hashable.py +25 -0
  804. astraapi-0.1.0/tests/test_deprecated_openapi_prefix.py +42 -0
  805. astraapi-0.1.0/tests/test_duplicate_models_openapi.py +79 -0
  806. astraapi-0.1.0/tests/test_empty_router.py +36 -0
  807. astraapi-0.1.0/tests/test_enforce_once_required_parameter.py +113 -0
  808. astraapi-0.1.0/tests/test_exception_handlers.py +88 -0
  809. astraapi-0.1.0/tests/test_extra_routes.py +367 -0
  810. astraapi-0.1.0/tests/test_file_and_form_order_issue_9116.py +89 -0
  811. astraapi-0.1.0/tests/test_filter_pydantic_sub_model_pv2.py +184 -0
  812. astraapi-0.1.0/tests/test_form_default.py +34 -0
  813. astraapi-0.1.0/tests/test_forms_from_non_typing_sequences.py +46 -0
  814. astraapi-0.1.0/tests/test_forms_single_model.py +141 -0
  815. astraapi-0.1.0/tests/test_forms_single_param.py +102 -0
  816. astraapi-0.1.0/tests/test_generate_unique_id_function.py +1647 -0
  817. astraapi-0.1.0/tests/test_generic_parameterless_depends.py +76 -0
  818. astraapi-0.1.0/tests/test_get_model_definitions_formfeed_escape.py +160 -0
  819. astraapi-0.1.0/tests/test_get_request_body.py +109 -0
  820. astraapi-0.1.0/tests/test_http_connection_injection.py +39 -0
  821. astraapi-0.1.0/tests/test_include_route.py +22 -0
  822. astraapi-0.1.0/tests/test_include_router_defaults_overrides.py +7299 -0
  823. astraapi-0.1.0/tests/test_infer_param_optionality.py +334 -0
  824. astraapi-0.1.0/tests/test_inherited_custom_class.py +67 -0
  825. astraapi-0.1.0/tests/test_invalid_path_param.py +75 -0
  826. astraapi-0.1.0/tests/test_invalid_sequence_param.py +65 -0
  827. astraapi-0.1.0/tests/test_json_type.py +63 -0
  828. astraapi-0.1.0/tests/test_jsonable_encoder.py +313 -0
  829. astraapi-0.1.0/tests/test_local_docs.py +67 -0
  830. astraapi-0.1.0/tests/test_modules_same_name_body/__init__.py +0 -0
  831. astraapi-0.1.0/tests/test_modules_same_name_body/app/__init__.py +0 -0
  832. astraapi-0.1.0/tests/test_modules_same_name_body/app/a.py +8 -0
  833. astraapi-0.1.0/tests/test_modules_same_name_body/app/b.py +8 -0
  834. astraapi-0.1.0/tests/test_modules_same_name_body/app/main.py +8 -0
  835. astraapi-0.1.0/tests/test_modules_same_name_body/test_main.py +151 -0
  836. astraapi-0.1.0/tests/test_multi_body_errors.py +187 -0
  837. astraapi-0.1.0/tests/test_multi_query_errors.py +117 -0
  838. astraapi-0.1.0/tests/test_multipart_installation.py +149 -0
  839. astraapi-0.1.0/tests/test_no_schema_split.py +176 -0
  840. astraapi-0.1.0/tests/test_no_swagger_ui_redirect.py +31 -0
  841. astraapi-0.1.0/tests/test_openapi_examples.py +419 -0
  842. astraapi-0.1.0/tests/test_openapi_model_description_trim_on_formfeed.py +31 -0
  843. astraapi-0.1.0/tests/test_openapi_query_parameter_extension.py +128 -0
  844. astraapi-0.1.0/tests/test_openapi_route_extensions.py +42 -0
  845. astraapi-0.1.0/tests/test_openapi_schema_type.py +26 -0
  846. astraapi-0.1.0/tests/test_openapi_separate_input_output_schemas.py +672 -0
  847. astraapi-0.1.0/tests/test_openapi_servers.py +60 -0
  848. astraapi-0.1.0/tests/test_operations_signatures.py +22 -0
  849. astraapi-0.1.0/tests/test_optional_file_list.py +30 -0
  850. astraapi-0.1.0/tests/test_orjson_response_class.py +21 -0
  851. astraapi-0.1.0/tests/test_param_class.py +27 -0
  852. astraapi-0.1.0/tests/test_param_in_path_and_dependency.py +95 -0
  853. astraapi-0.1.0/tests/test_param_include_in_schema.py +244 -0
  854. astraapi-0.1.0/tests/test_params_repr.py +114 -0
  855. astraapi-0.1.0/tests/test_path.py +780 -0
  856. astraapi-0.1.0/tests/test_put_no_body.py +98 -0
  857. astraapi-0.1.0/tests/test_pydantic_v1_error.py +97 -0
  858. astraapi-0.1.0/tests/test_pydanticv2_dataclasses_uuid_stringified_annotations.py +52 -0
  859. astraapi-0.1.0/tests/test_query.py +277 -0
  860. astraapi-0.1.0/tests/test_query_cookie_header_model_extra_params.py +105 -0
  861. astraapi-0.1.0/tests/test_read_with_orm_mode.py +43 -0
  862. astraapi-0.1.0/tests/test_regex_deprecated_body.py +154 -0
  863. astraapi-0.1.0/tests/test_regex_deprecated_params.py +142 -0
  864. astraapi-0.1.0/tests/test_repeated_cookie_headers.py +34 -0
  865. astraapi-0.1.0/tests/test_repeated_dependency_schema.py +104 -0
  866. astraapi-0.1.0/tests/test_repeated_parameter_alias.py +102 -0
  867. astraapi-0.1.0/tests/test_reponse_set_reponse_code_empty.py +99 -0
  868. astraapi-0.1.0/tests/test_request_body_parameters_media_type.py +177 -0
  869. astraapi-0.1.0/tests/test_request_param_model_by_alias.py +72 -0
  870. astraapi-0.1.0/tests/test_request_params/__init__.py +0 -0
  871. astraapi-0.1.0/tests/test_request_params/test_body/__init__.py +0 -0
  872. astraapi-0.1.0/tests/test_request_params/test_body/test_list.py +433 -0
  873. astraapi-0.1.0/tests/test_request_params/test_body/test_optional_list.py +456 -0
  874. astraapi-0.1.0/tests/test_request_params/test_body/test_optional_str.py +431 -0
  875. astraapi-0.1.0/tests/test_request_params/test_body/test_required_str.py +421 -0
  876. astraapi-0.1.0/tests/test_request_params/test_body/utils.py +7 -0
  877. astraapi-0.1.0/tests/test_request_params/test_cookie/__init__.py +0 -0
  878. astraapi-0.1.0/tests/test_request_params/test_cookie/test_list.py +3 -0
  879. astraapi-0.1.0/tests/test_request_params/test_cookie/test_optional_list.py +3 -0
  880. astraapi-0.1.0/tests/test_request_params/test_cookie/test_optional_str.py +327 -0
  881. astraapi-0.1.0/tests/test_request_params/test_cookie/test_required_str.py +413 -0
  882. astraapi-0.1.0/tests/test_request_params/test_file/__init__.py +0 -0
  883. astraapi-0.1.0/tests/test_request_params/test_file/test_list.py +441 -0
  884. astraapi-0.1.0/tests/test_request_params/test_file/test_optional.py +363 -0
  885. astraapi-0.1.0/tests/test_request_params/test_file/test_optional_list.py +373 -0
  886. astraapi-0.1.0/tests/test_request_params/test_file/test_required.py +429 -0
  887. astraapi-0.1.0/tests/test_request_params/test_file/utils.py +7 -0
  888. astraapi-0.1.0/tests/test_request_params/test_form/__init__.py +0 -0
  889. astraapi-0.1.0/tests/test_request_params/test_form/test_list.py +436 -0
  890. astraapi-0.1.0/tests/test_request_params/test_form/test_optional_list.py +360 -0
  891. astraapi-0.1.0/tests/test_request_params/test_form/test_optional_str.py +337 -0
  892. astraapi-0.1.0/tests/test_request_params/test_form/test_required_str.py +415 -0
  893. astraapi-0.1.0/tests/test_request_params/test_form/utils.py +7 -0
  894. astraapi-0.1.0/tests/test_request_params/test_header/__init__.py +0 -0
  895. astraapi-0.1.0/tests/test_request_params/test_header/test_list.py +418 -0
  896. astraapi-0.1.0/tests/test_request_params/test_header/test_optional_list.py +345 -0
  897. astraapi-0.1.0/tests/test_request_params/test_header/test_optional_str.py +319 -0
  898. astraapi-0.1.0/tests/test_request_params/test_header/test_required_str.py +402 -0
  899. astraapi-0.1.0/tests/test_request_params/test_path/__init__.py +0 -0
  900. astraapi-0.1.0/tests/test_request_params/test_path/test_list.py +1 -0
  901. astraapi-0.1.0/tests/test_request_params/test_path/test_optional_list.py +1 -0
  902. astraapi-0.1.0/tests/test_request_params/test_path/test_optional_str.py +1 -0
  903. astraapi-0.1.0/tests/test_request_params/test_path/test_required_str.py +85 -0
  904. astraapi-0.1.0/tests/test_request_params/test_query/__init__.py +0 -0
  905. astraapi-0.1.0/tests/test_request_params/test_query/test_list.py +419 -0
  906. astraapi-0.1.0/tests/test_request_params/test_query/test_optional_list.py +341 -0
  907. astraapi-0.1.0/tests/test_request_params/test_query/test_optional_str.py +319 -0
  908. astraapi-0.1.0/tests/test_request_params/test_query/test_required_str.py +405 -0
  909. astraapi-0.1.0/tests/test_required_noneable.py +62 -0
  910. astraapi-0.1.0/tests/test_response_by_alias.py +323 -0
  911. astraapi-0.1.0/tests/test_response_change_status_code.py +26 -0
  912. astraapi-0.1.0/tests/test_response_class_no_mediatype.py +111 -0
  913. astraapi-0.1.0/tests/test_response_code_no_body.py +112 -0
  914. astraapi-0.1.0/tests/test_response_dependency.py +173 -0
  915. astraapi-0.1.0/tests/test_response_model_as_return_annotation.py +1114 -0
  916. astraapi-0.1.0/tests/test_response_model_data_filter.py +79 -0
  917. astraapi-0.1.0/tests/test_response_model_data_filter_no_inheritance.py +81 -0
  918. astraapi-0.1.0/tests/test_response_model_default_factory.py +47 -0
  919. astraapi-0.1.0/tests/test_response_model_include_exclude.py +175 -0
  920. astraapi-0.1.0/tests/test_response_model_invalid.py +43 -0
  921. astraapi-0.1.0/tests/test_response_model_sub_types.py +156 -0
  922. astraapi-0.1.0/tests/test_return_none_stringified_annotations.py +17 -0
  923. astraapi-0.1.0/tests/test_route_scope.py +50 -0
  924. astraapi-0.1.0/tests/test_router_events.py +319 -0
  925. astraapi-0.1.0/tests/test_router_prefix_with_template.py +23 -0
  926. astraapi-0.1.0/tests/test_router_redirect_slashes.py +40 -0
  927. astraapi-0.1.0/tests/test_schema_compat_pydantic_v2.py +90 -0
  928. astraapi-0.1.0/tests/test_schema_extra_examples.py +854 -0
  929. astraapi-0.1.0/tests/test_schema_ref_pydantic_v2.py +68 -0
  930. astraapi-0.1.0/tests/test_security_api_key_cookie.py +67 -0
  931. astraapi-0.1.0/tests/test_security_api_key_cookie_description.py +72 -0
  932. astraapi-0.1.0/tests/test_security_api_key_cookie_optional.py +73 -0
  933. astraapi-0.1.0/tests/test_security_api_key_header.py +67 -0
  934. astraapi-0.1.0/tests/test_security_api_key_header_description.py +72 -0
  935. astraapi-0.1.0/tests/test_security_api_key_header_optional.py +72 -0
  936. astraapi-0.1.0/tests/test_security_api_key_query.py +67 -0
  937. astraapi-0.1.0/tests/test_security_api_key_query_description.py +72 -0
  938. astraapi-0.1.0/tests/test_security_api_key_query_optional.py +72 -0
  939. astraapi-0.1.0/tests/test_security_http_base.py +61 -0
  940. astraapi-0.1.0/tests/test_security_http_base_description.py +61 -0
  941. astraapi-0.1.0/tests/test_security_http_base_optional.py +60 -0
  942. astraapi-0.1.0/tests/test_security_http_basic_optional.py +77 -0
  943. astraapi-0.1.0/tests/test_security_http_basic_realm.py +75 -0
  944. astraapi-0.1.0/tests/test_security_http_basic_realm_description.py +81 -0
  945. astraapi-0.1.0/tests/test_security_http_bearer.py +62 -0
  946. astraapi-0.1.0/tests/test_security_http_bearer_description.py +68 -0
  947. astraapi-0.1.0/tests/test_security_http_bearer_optional.py +66 -0
  948. astraapi-0.1.0/tests/test_security_http_digest.py +64 -0
  949. astraapi-0.1.0/tests/test_security_http_digest_description.py +70 -0
  950. astraapi-0.1.0/tests/test_security_http_digest_optional.py +68 -0
  951. astraapi-0.1.0/tests/test_security_oauth2.py +271 -0
  952. astraapi-0.1.0/tests/test_security_oauth2_authorization_code_bearer.py +81 -0
  953. astraapi-0.1.0/tests/test_security_oauth2_authorization_code_bearer_description.py +79 -0
  954. astraapi-0.1.0/tests/test_security_oauth2_authorization_code_bearer_scopes_openapi.py +197 -0
  955. astraapi-0.1.0/tests/test_security_oauth2_authorization_code_bearer_scopes_openapi_simple.py +80 -0
  956. astraapi-0.1.0/tests/test_security_oauth2_optional.py +274 -0
  957. astraapi-0.1.0/tests/test_security_oauth2_optional_description.py +276 -0
  958. astraapi-0.1.0/tests/test_security_oauth2_password_bearer_optional.py +69 -0
  959. astraapi-0.1.0/tests/test_security_oauth2_password_bearer_optional_description.py +74 -0
  960. astraapi-0.1.0/tests/test_security_openid_connect.py +76 -0
  961. astraapi-0.1.0/tests/test_security_openid_connect_description.py +79 -0
  962. astraapi-0.1.0/tests/test_security_openid_connect_optional.py +81 -0
  963. astraapi-0.1.0/tests/test_security_scopes.py +45 -0
  964. astraapi-0.1.0/tests/test_security_scopes_dont_propagate.py +44 -0
  965. astraapi-0.1.0/tests/test_security_scopes_sub_dependency.py +107 -0
  966. astraapi-0.1.0/tests/test_serialize_response.py +57 -0
  967. astraapi-0.1.0/tests/test_serialize_response_dataclass.py +194 -0
  968. astraapi-0.1.0/tests/test_serialize_response_model.py +154 -0
  969. astraapi-0.1.0/tests/test_skip_defaults.py +95 -0
  970. astraapi-0.1.0/tests/test_starlette_exception.py +204 -0
  971. astraapi-0.1.0/tests/test_starlette_urlconvertors.py +63 -0
  972. astraapi-0.1.0/tests/test_stringified_annotation_dependency.py +79 -0
  973. astraapi-0.1.0/tests/test_stringified_annotation_dependency_py314.py +30 -0
  974. astraapi-0.1.0/tests/test_stringified_annotations_simple.py +27 -0
  975. astraapi-0.1.0/tests/test_sub_callbacks.py +295 -0
  976. astraapi-0.1.0/tests/test_swagger_ui_init_oauth.py +28 -0
  977. astraapi-0.1.0/tests/test_top_level_security_scheme_in_openapi.py +60 -0
  978. astraapi-0.1.0/tests/test_tuples.py +271 -0
  979. astraapi-0.1.0/tests/test_tutorial/__init__.py +0 -0
  980. astraapi-0.1.0/tests/test_tutorial/test_additional_responses/__init__.py +0 -0
  981. astraapi-0.1.0/tests/test_tutorial/test_additional_responses/test_tutorial001.py +118 -0
  982. astraapi-0.1.0/tests/test_tutorial/test_additional_responses/test_tutorial002.py +135 -0
  983. astraapi-0.1.0/tests/test_tutorial/test_additional_responses/test_tutorial003.py +122 -0
  984. astraapi-0.1.0/tests/test_tutorial/test_additional_responses/test_tutorial004.py +138 -0
  985. astraapi-0.1.0/tests/test_tutorial/test_additional_status_codes/__init__.py +0 -0
  986. astraapi-0.1.0/tests/test_tutorial/test_additional_status_codes/test_tutorial001.py +34 -0
  987. astraapi-0.1.0/tests/test_tutorial/test_advanced_middleware/__init__.py +0 -0
  988. astraapi-0.1.0/tests/test_tutorial/test_advanced_middleware/test_tutorial001.py +14 -0
  989. astraapi-0.1.0/tests/test_tutorial/test_advanced_middleware/test_tutorial002.py +15 -0
  990. astraapi-0.1.0/tests/test_tutorial/test_advanced_middleware/test_tutorial003.py +22 -0
  991. astraapi-0.1.0/tests/test_tutorial/test_async_tests/__init__.py +0 -0
  992. astraapi-0.1.0/tests/test_tutorial/test_async_tests/test_main_a.py +8 -0
  993. astraapi-0.1.0/tests/test_tutorial/test_authentication_error_status_code/__init__.py +0 -0
  994. astraapi-0.1.0/tests/test_tutorial/test_authentication_error_status_code/test_tutorial001.py +66 -0
  995. astraapi-0.1.0/tests/test_tutorial/test_background_tasks/__init__.py +0 -0
  996. astraapi-0.1.0/tests/test_tutorial/test_background_tasks/test_tutorial001.py +19 -0
  997. astraapi-0.1.0/tests/test_tutorial/test_background_tasks/test_tutorial002.py +35 -0
  998. astraapi-0.1.0/tests/test_tutorial/test_behind_a_proxy/__init__.py +0 -0
  999. astraapi-0.1.0/tests/test_tutorial/test_behind_a_proxy/test_tutorial001.py +35 -0
  1000. astraapi-0.1.0/tests/test_tutorial/test_behind_a_proxy/test_tutorial001_01.py +21 -0
  1001. astraapi-0.1.0/tests/test_tutorial/test_behind_a_proxy/test_tutorial002.py +35 -0
  1002. astraapi-0.1.0/tests/test_tutorial/test_behind_a_proxy/test_tutorial003.py +47 -0
  1003. astraapi-0.1.0/tests/test_tutorial/test_behind_a_proxy/test_tutorial004.py +47 -0
  1004. astraapi-0.1.0/tests/test_tutorial/test_bigger_applications/__init__.py +0 -0
  1005. astraapi-0.1.0/tests/test_tutorial/test_bigger_applications/test_main.py +602 -0
  1006. astraapi-0.1.0/tests/test_tutorial/test_body/__init__.py +0 -0
  1007. astraapi-0.1.0/tests/test_tutorial/test_body/test_tutorial001.py +348 -0
  1008. astraapi-0.1.0/tests/test_tutorial/test_body/test_tutorial002.py +163 -0
  1009. astraapi-0.1.0/tests/test_tutorial/test_body/test_tutorial003.py +173 -0
  1010. astraapi-0.1.0/tests/test_tutorial/test_body/test_tutorial004.py +184 -0
  1011. astraapi-0.1.0/tests/test_tutorial/test_body_fields/__init__.py +0 -0
  1012. astraapi-0.1.0/tests/test_tutorial/test_body_fields/test_tutorial001.py +186 -0
  1013. astraapi-0.1.0/tests/test_tutorial/test_body_multiple_params/__init__.py +0 -0
  1014. astraapi-0.1.0/tests/test_tutorial/test_body_multiple_params/test_tutorial001.py +182 -0
  1015. astraapi-0.1.0/tests/test_tutorial/test_body_multiple_params/test_tutorial002.py +363 -0
  1016. astraapi-0.1.0/tests/test_tutorial/test_body_multiple_params/test_tutorial003.py +222 -0
  1017. astraapi-0.1.0/tests/test_tutorial/test_body_multiple_params/test_tutorial004.py +292 -0
  1018. astraapi-0.1.0/tests/test_tutorial/test_body_multiple_params/test_tutorial005.py +274 -0
  1019. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/__init__.py +0 -0
  1020. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/test_tutorial001_tutorial002_tutorial003.py +253 -0
  1021. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/test_tutorial004.py +277 -0
  1022. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/test_tutorial005.py +303 -0
  1023. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/test_tutorial006.py +271 -0
  1024. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/test_tutorial007.py +346 -0
  1025. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/test_tutorial008.py +159 -0
  1026. astraapi-0.1.0/tests/test_tutorial/test_body_nested_models/test_tutorial009.py +118 -0
  1027. astraapi-0.1.0/tests/test_tutorial/test_body_updates/__init__.py +0 -0
  1028. astraapi-0.1.0/tests/test_tutorial/test_body_updates/test_tutorial001.py +188 -0
  1029. astraapi-0.1.0/tests/test_tutorial/test_body_updates/test_tutorial002.py +209 -0
  1030. astraapi-0.1.0/tests/test_tutorial/test_conditional_openapi/__init__.py +0 -0
  1031. astraapi-0.1.0/tests/test_tutorial/test_conditional_openapi/test_tutorial001.py +58 -0
  1032. astraapi-0.1.0/tests/test_tutorial/test_configure_swagger_ui/__init__.py +0 -0
  1033. astraapi-0.1.0/tests/test_tutorial/test_configure_swagger_ui/test_tutorial001.py +41 -0
  1034. astraapi-0.1.0/tests/test_tutorial/test_configure_swagger_ui/test_tutorial002.py +44 -0
  1035. astraapi-0.1.0/tests/test_tutorial/test_configure_swagger_ui/test_tutorial003.py +44 -0
  1036. astraapi-0.1.0/tests/test_tutorial/test_cookie_param_models/__init__.py +0 -0
  1037. astraapi-0.1.0/tests/test_tutorial/test_cookie_param_models/test_tutorial001.py +173 -0
  1038. astraapi-0.1.0/tests/test_tutorial/test_cookie_param_models/test_tutorial002.py +183 -0
  1039. astraapi-0.1.0/tests/test_tutorial/test_cookie_params/__init__.py +0 -0
  1040. astraapi-0.1.0/tests/test_tutorial/test_cookie_params/test_tutorial001.py +121 -0
  1041. astraapi-0.1.0/tests/test_tutorial/test_cors/__init__.py +0 -0
  1042. astraapi-0.1.0/tests/test_tutorial/test_cors/test_tutorial001.py +37 -0
  1043. astraapi-0.1.0/tests/test_tutorial/test_custom_docs_ui/__init__.py +0 -0
  1044. astraapi-0.1.0/tests/test_tutorial/test_custom_docs_ui/test_tutorial001.py +42 -0
  1045. astraapi-0.1.0/tests/test_tutorial/test_custom_docs_ui/test_tutorial002.py +42 -0
  1046. astraapi-0.1.0/tests/test_tutorial/test_custom_request_and_route/__init__.py +0 -0
  1047. astraapi-0.1.0/tests/test_tutorial/test_custom_request_and_route/test_tutorial001.py +49 -0
  1048. astraapi-0.1.0/tests/test_tutorial/test_custom_request_and_route/test_tutorial002.py +46 -0
  1049. astraapi-0.1.0/tests/test_tutorial/test_custom_request_and_route/test_tutorial003.py +33 -0
  1050. astraapi-0.1.0/tests/test_tutorial/test_custom_response/__init__.py +0 -0
  1051. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial001.py +46 -0
  1052. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial001b.py +34 -0
  1053. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial002_tutorial003_tutorial004.py +68 -0
  1054. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial005.py +34 -0
  1055. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial006.py +34 -0
  1056. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial006b.py +29 -0
  1057. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial006c.py +29 -0
  1058. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial007.py +11 -0
  1059. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial008.py +17 -0
  1060. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial009.py +17 -0
  1061. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial009b.py +17 -0
  1062. astraapi-0.1.0/tests/test_tutorial/test_custom_response/test_tutorial009c.py +10 -0
  1063. astraapi-0.1.0/tests/test_tutorial/test_dataclasses/__init__.py +0 -0
  1064. astraapi-0.1.0/tests/test_tutorial/test_dataclasses/test_tutorial001.py +138 -0
  1065. astraapi-0.1.0/tests/test_tutorial/test_dataclasses/test_tutorial002.py +89 -0
  1066. astraapi-0.1.0/tests/test_tutorial/test_dataclasses/test_tutorial003.py +204 -0
  1067. astraapi-0.1.0/tests/test_tutorial/test_debugging/__init__.py +0 -0
  1068. astraapi-0.1.0/tests/test_tutorial/test_debugging/test_tutorial001.py +43 -0
  1069. astraapi-0.1.0/tests/test_tutorial/test_dependencies/__init__.py +0 -0
  1070. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial001_tutorial001_02.py +190 -0
  1071. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial002_tutorial003_tutorial004.py +181 -0
  1072. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial005.py +141 -0
  1073. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial006.py +145 -0
  1074. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial007.py +24 -0
  1075. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial008.py +64 -0
  1076. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial008b.py +36 -0
  1077. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial008c.py +47 -0
  1078. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial008d.py +48 -0
  1079. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial008e.py +24 -0
  1080. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial010.py +29 -0
  1081. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial011.py +122 -0
  1082. astraapi-0.1.0/tests/test_tutorial/test_dependencies/test_tutorial012.py +228 -0
  1083. astraapi-0.1.0/tests/test_tutorial/test_encoder/__init__.py +0 -0
  1084. astraapi-0.1.0/tests/test_tutorial/test_encoder/test_tutorial001.py +210 -0
  1085. astraapi-0.1.0/tests/test_tutorial/test_events/__init__.py +0 -0
  1086. astraapi-0.1.0/tests/test_tutorial/test_events/test_tutorial001.py +94 -0
  1087. astraapi-0.1.0/tests/test_tutorial/test_events/test_tutorial002.py +43 -0
  1088. astraapi-0.1.0/tests/test_tutorial/test_events/test_tutorial003.py +94 -0
  1089. astraapi-0.1.0/tests/test_tutorial/test_extending_openapi/__init__.py +0 -0
  1090. astraapi-0.1.0/tests/test_tutorial/test_extending_openapi/test_tutorial001.py +47 -0
  1091. astraapi-0.1.0/tests/test_tutorial/test_extra_data_types/__init__.py +0 -0
  1092. astraapi-0.1.0/tests/test_tutorial/test_extra_data_types/test_tutorial001.py +165 -0
  1093. astraapi-0.1.0/tests/test_tutorial/test_extra_models/__init__.py +0 -0
  1094. astraapi-0.1.0/tests/test_tutorial/test_extra_models/test_tutorial001_tutorial002.py +158 -0
  1095. astraapi-0.1.0/tests/test_tutorial/test_extra_models/test_tutorial003.py +159 -0
  1096. astraapi-0.1.0/tests/test_tutorial/test_extra_models/test_tutorial004.py +70 -0
  1097. astraapi-0.1.0/tests/test_tutorial/test_extra_models/test_tutorial005.py +54 -0
  1098. astraapi-0.1.0/tests/test_tutorial/test_first_steps/__init__.py +0 -0
  1099. astraapi-0.1.0/tests/test_tutorial/test_first_steps/test_tutorial001_tutorial002_tutorial003.py +53 -0
  1100. astraapi-0.1.0/tests/test_tutorial/test_generate_clients/__init__.py +0 -0
  1101. astraapi-0.1.0/tests/test_tutorial/test_generate_clients/test_tutorial001.py +144 -0
  1102. astraapi-0.1.0/tests/test_tutorial/test_generate_clients/test_tutorial002.py +189 -0
  1103. astraapi-0.1.0/tests/test_tutorial/test_generate_clients/test_tutorial003.py +189 -0
  1104. astraapi-0.1.0/tests/test_tutorial/test_generate_clients/test_tutorial004.py +232 -0
  1105. astraapi-0.1.0/tests/test_tutorial/test_graphql/__init__.py +0 -0
  1106. astraapi-0.1.0/tests/test_tutorial/test_graphql/test_tutorial001.py +75 -0
  1107. astraapi-0.1.0/tests/test_tutorial/test_handling_errors/__init__.py +0 -0
  1108. astraapi-0.1.0/tests/test_tutorial/test_handling_errors/test_tutorial001.py +92 -0
  1109. astraapi-0.1.0/tests/test_tutorial/test_handling_errors/test_tutorial002.py +92 -0
  1110. astraapi-0.1.0/tests/test_tutorial/test_handling_errors/test_tutorial003.py +93 -0
  1111. astraapi-0.1.0/tests/test_tutorial/test_handling_errors/test_tutorial004.py +98 -0
  1112. astraapi-0.1.0/tests/test_tutorial/test_handling_errors/test_tutorial005.py +111 -0
  1113. astraapi-0.1.0/tests/test_tutorial/test_handling_errors/test_tutorial006.py +106 -0
  1114. astraapi-0.1.0/tests/test_tutorial/test_header_param_models/__init__.py +0 -0
  1115. astraapi-0.1.0/tests/test_tutorial/test_header_param_models/test_tutorial001.py +197 -0
  1116. astraapi-0.1.0/tests/test_tutorial/test_header_param_models/test_tutorial002.py +201 -0
  1117. astraapi-0.1.0/tests/test_tutorial/test_header_param_models/test_tutorial003.py +223 -0
  1118. astraapi-0.1.0/tests/test_tutorial/test_header_params/__init__.py +0 -0
  1119. astraapi-0.1.0/tests/test_tutorial/test_header_params/test_tutorial001.py +113 -0
  1120. astraapi-0.1.0/tests/test_tutorial/test_header_params/test_tutorial002.py +124 -0
  1121. astraapi-0.1.0/tests/test_tutorial/test_header_params/test_tutorial003.py +121 -0
  1122. astraapi-0.1.0/tests/test_tutorial/test_metadata/__init__.py +0 -0
  1123. astraapi-0.1.0/tests/test_tutorial/test_metadata/test_tutorial001.py +49 -0
  1124. astraapi-0.1.0/tests/test_tutorial/test_metadata/test_tutorial001_1.py +49 -0
  1125. astraapi-0.1.0/tests/test_tutorial/test_metadata/test_tutorial002.py +42 -0
  1126. astraapi-0.1.0/tests/test_tutorial/test_metadata/test_tutorial003.py +53 -0
  1127. astraapi-0.1.0/tests/test_tutorial/test_metadata/test_tutorial004.py +63 -0
  1128. astraapi-0.1.0/tests/test_tutorial/test_middleware/__init__.py +0 -0
  1129. astraapi-0.1.0/tests/test_tutorial/test_middleware/test_tutorial001.py +24 -0
  1130. astraapi-0.1.0/tests/test_tutorial/test_openapi_callbacks/__init__.py +0 -0
  1131. astraapi-0.1.0/tests/test_tutorial/test_openapi_callbacks/test_tutorial001.py +204 -0
  1132. astraapi-0.1.0/tests/test_tutorial/test_openapi_webhooks/__init__.py +0 -0
  1133. astraapi-0.1.0/tests/test_tutorial/test_openapi_webhooks/test_tutorial001.py +119 -0
  1134. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/__init__.py +0 -0
  1135. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial001.py +34 -0
  1136. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial002.py +34 -0
  1137. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial003.py +21 -0
  1138. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial004.py +138 -0
  1139. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial005.py +34 -0
  1140. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial006.py +57 -0
  1141. astraapi-0.1.0/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial007.py +115 -0
  1142. astraapi-0.1.0/tests/test_tutorial/test_path_operation_configurations/__init__.py +0 -0
  1143. astraapi-0.1.0/tests/test_tutorial/test_path_operation_configurations/test_tutorial001.py +188 -0
  1144. astraapi-0.1.0/tests/test_tutorial/test_path_operation_configurations/test_tutorial002.py +225 -0
  1145. astraapi-0.1.0/tests/test_tutorial/test_path_operation_configurations/test_tutorial002b.py +54 -0
  1146. astraapi-0.1.0/tests/test_tutorial/test_path_operation_configurations/test_tutorial003_tutorial004.py +210 -0
  1147. astraapi-0.1.0/tests/test_tutorial/test_path_operation_configurations/test_tutorial005.py +137 -0
  1148. astraapi-0.1.0/tests/test_tutorial/test_path_operation_configurations/test_tutorial006.py +71 -0
  1149. astraapi-0.1.0/tests/test_tutorial/test_path_params/__init__.py +0 -0
  1150. astraapi-0.1.0/tests/test_tutorial/test_path_params/test_tutorial001.py +118 -0
  1151. astraapi-0.1.0/tests/test_tutorial/test_path_params/test_tutorial002.py +126 -0
  1152. astraapi-0.1.0/tests/test_tutorial/test_path_params/test_tutorial003.py +135 -0
  1153. astraapi-0.1.0/tests/test_tutorial/test_path_params/test_tutorial003b.py +44 -0
  1154. astraapi-0.1.0/tests/test_tutorial/test_path_params/test_tutorial004.py +93 -0
  1155. astraapi-0.1.0/tests/test_tutorial/test_path_params/test_tutorial005.py +119 -0
  1156. astraapi-0.1.0/tests/test_tutorial/test_path_params_numeric_validations/__init__.py +0 -0
  1157. astraapi-0.1.0/tests/test_tutorial/test_path_params_numeric_validations/test_tutorial001.py +166 -0
  1158. astraapi-0.1.0/tests/test_tutorial/test_path_params_numeric_validations/test_tutorial002_tutorial003.py +172 -0
  1159. astraapi-0.1.0/tests/test_tutorial/test_path_params_numeric_validations/test_tutorial004.py +187 -0
  1160. astraapi-0.1.0/tests/test_tutorial/test_path_params_numeric_validations/test_tutorial005.py +204 -0
  1161. astraapi-0.1.0/tests/test_tutorial/test_path_params_numeric_validations/test_tutorial006.py +223 -0
  1162. astraapi-0.1.0/tests/test_tutorial/test_python_types/__init__.py +0 -0
  1163. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial001_tutorial002.py +18 -0
  1164. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial003.py +12 -0
  1165. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial004.py +5 -0
  1166. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial005.py +12 -0
  1167. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial006.py +16 -0
  1168. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial007.py +8 -0
  1169. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial008.py +17 -0
  1170. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial008b.py +27 -0
  1171. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial009_tutorial009b.py +33 -0
  1172. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial009c.py +33 -0
  1173. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial010.py +5 -0
  1174. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial011.py +25 -0
  1175. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial012.py +7 -0
  1176. astraapi-0.1.0/tests/test_tutorial/test_python_types/test_tutorial013.py +5 -0
  1177. astraapi-0.1.0/tests/test_tutorial/test_query_param_models/__init__.py +0 -0
  1178. astraapi-0.1.0/tests/test_tutorial/test_query_param_models/test_tutorial001.py +229 -0
  1179. astraapi-0.1.0/tests/test_tutorial/test_query_param_models/test_tutorial002.py +235 -0
  1180. astraapi-0.1.0/tests/test_tutorial/test_query_params/__init__.py +0 -0
  1181. astraapi-0.1.0/tests/test_tutorial/test_query_params/test_tutorial001.py +128 -0
  1182. astraapi-0.1.0/tests/test_tutorial/test_query_params/test_tutorial002.py +129 -0
  1183. astraapi-0.1.0/tests/test_tutorial/test_query_params/test_tutorial003.py +150 -0
  1184. astraapi-0.1.0/tests/test_tutorial/test_query_params/test_tutorial004.py +158 -0
  1185. astraapi-0.1.0/tests/test_tutorial/test_query_params/test_tutorial005.py +106 -0
  1186. astraapi-0.1.0/tests/test_tutorial/test_query_params/test_tutorial006.py +157 -0
  1187. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/__init__.py +0 -0
  1188. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial001.py +123 -0
  1189. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial002.py +144 -0
  1190. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial003.py +155 -0
  1191. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial004.py +149 -0
  1192. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial005.py +133 -0
  1193. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial006.py +138 -0
  1194. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial006c.py +150 -0
  1195. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial007.py +138 -0
  1196. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial008.py +140 -0
  1197. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial009.py +125 -0
  1198. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial010.py +156 -0
  1199. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial011.py +118 -0
  1200. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial012.py +113 -0
  1201. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial013.py +113 -0
  1202. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial014.py +102 -0
  1203. astraapi-0.1.0/tests/test_tutorial/test_query_params_str_validations/test_tutorial015.py +146 -0
  1204. astraapi-0.1.0/tests/test_tutorial/test_request_files/__init__.py +0 -0
  1205. astraapi-0.1.0/tests/test_tutorial/test_request_files/test_tutorial001.py +203 -0
  1206. astraapi-0.1.0/tests/test_tutorial/test_request_files/test_tutorial001_02.py +192 -0
  1207. astraapi-0.1.0/tests/test_tutorial/test_request_files/test_tutorial001_03.py +172 -0
  1208. astraapi-0.1.0/tests/test_tutorial/test_request_files/test_tutorial002.py +243 -0
  1209. astraapi-0.1.0/tests/test_tutorial/test_request_files/test_tutorial003.py +215 -0
  1210. astraapi-0.1.0/tests/test_tutorial/test_request_form_models/__init__.py +0 -0
  1211. astraapi-0.1.0/tests/test_tutorial/test_request_form_models/test_tutorial001.py +179 -0
  1212. astraapi-0.1.0/tests/test_tutorial/test_request_form_models/test_tutorial002.py +197 -0
  1213. astraapi-0.1.0/tests/test_tutorial/test_request_forms/__init__.py +0 -0
  1214. astraapi-0.1.0/tests/test_tutorial/test_request_forms/test_tutorial001.py +181 -0
  1215. astraapi-0.1.0/tests/test_tutorial/test_request_forms_and_files/__init__.py +0 -0
  1216. astraapi-0.1.0/tests/test_tutorial/test_request_forms_and_files/test_tutorial001.py +236 -0
  1217. astraapi-0.1.0/tests/test_tutorial/test_response_change_status_code/__init__.py +0 -0
  1218. astraapi-0.1.0/tests/test_tutorial/test_response_change_status_code/test_tutorial001.py +15 -0
  1219. astraapi-0.1.0/tests/test_tutorial/test_response_cookies/__init__.py +0 -0
  1220. astraapi-0.1.0/tests/test_tutorial/test_response_cookies/test_tutorial001.py +12 -0
  1221. astraapi-0.1.0/tests/test_tutorial/test_response_cookies/test_tutorial002.py +12 -0
  1222. astraapi-0.1.0/tests/test_tutorial/test_response_directly/__init__.py +0 -0
  1223. astraapi-0.1.0/tests/test_tutorial/test_response_directly/test_tutorial001.py +154 -0
  1224. astraapi-0.1.0/tests/test_tutorial/test_response_directly/test_tutorial002.py +65 -0
  1225. astraapi-0.1.0/tests/test_tutorial/test_response_headers/__init__.py +0 -0
  1226. astraapi-0.1.0/tests/test_tutorial/test_response_headers/test_tutorial001.py +13 -0
  1227. astraapi-0.1.0/tests/test_tutorial/test_response_headers/test_tutorial002.py +12 -0
  1228. astraapi-0.1.0/tests/test_tutorial/test_response_model/__init__.py +0 -0
  1229. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial001_tutorial001_01.py +195 -0
  1230. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial002.py +131 -0
  1231. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial003.py +158 -0
  1232. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial003_01.py +158 -0
  1233. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial003_02.py +95 -0
  1234. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial003_03.py +34 -0
  1235. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial003_04.py +18 -0
  1236. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial003_05.py +110 -0
  1237. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial004.py +149 -0
  1238. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial005.py +167 -0
  1239. astraapi-0.1.0/tests/test_tutorial/test_response_model/test_tutorial006.py +167 -0
  1240. astraapi-0.1.0/tests/test_tutorial/test_response_status_code/__init__.py +0 -0
  1241. astraapi-0.1.0/tests/test_tutorial/test_response_status_code/test_tutorial001_tutorial002.py +98 -0
  1242. astraapi-0.1.0/tests/test_tutorial/test_schema_extra_example/__init__.py +0 -0
  1243. astraapi-0.1.0/tests/test_tutorial/test_schema_extra_example/test_tutorial001.py +141 -0
  1244. astraapi-0.1.0/tests/test_tutorial/test_schema_extra_example/test_tutorial002.py +143 -0
  1245. astraapi-0.1.0/tests/test_tutorial/test_schema_extra_example/test_tutorial003.py +145 -0
  1246. astraapi-0.1.0/tests/test_tutorial/test_schema_extra_example/test_tutorial004.py +149 -0
  1247. astraapi-0.1.0/tests/test_tutorial/test_schema_extra_example/test_tutorial005.py +158 -0
  1248. astraapi-0.1.0/tests/test_tutorial/test_security/__init__.py +0 -0
  1249. astraapi-0.1.0/tests/test_tutorial/test_security/test_tutorial001.py +70 -0
  1250. astraapi-0.1.0/tests/test_tutorial/test_security/test_tutorial002.py +71 -0
  1251. astraapi-0.1.0/tests/test_tutorial/test_security/test_tutorial003.py +208 -0
  1252. astraapi-0.1.0/tests/test_tutorial/test_security/test_tutorial004.py +365 -0
  1253. astraapi-0.1.0/tests/test_tutorial/test_security/test_tutorial005.py +416 -0
  1254. astraapi-0.1.0/tests/test_tutorial/test_security/test_tutorial006.py +77 -0
  1255. astraapi-0.1.0/tests/test_tutorial/test_security/test_tutorial007.py +89 -0
  1256. astraapi-0.1.0/tests/test_tutorial/test_separate_openapi_schemas/__init__.py +0 -0
  1257. astraapi-0.1.0/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001.py +142 -0
  1258. astraapi-0.1.0/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002.py +142 -0
  1259. astraapi-0.1.0/tests/test_tutorial/test_settings/__init__.py +0 -0
  1260. astraapi-0.1.0/tests/test_tutorial/test_settings/test_app01.py +78 -0
  1261. astraapi-0.1.0/tests/test_tutorial/test_settings/test_app02.py +40 -0
  1262. astraapi-0.1.0/tests/test_tutorial/test_settings/test_app03.py +44 -0
  1263. astraapi-0.1.0/tests/test_tutorial/test_settings/test_tutorial001.py +23 -0
  1264. astraapi-0.1.0/tests/test_tutorial/test_sql_databases/__init__.py +0 -0
  1265. astraapi-0.1.0/tests/test_tutorial/test_sql_databases/test_tutorial001.py +357 -0
  1266. astraapi-0.1.0/tests/test_tutorial/test_sql_databases/test_tutorial002.py +433 -0
  1267. astraapi-0.1.0/tests/test_tutorial/test_static_files/__init__.py +0 -0
  1268. astraapi-0.1.0/tests/test_tutorial/test_static_files/test_tutorial001.py +40 -0
  1269. astraapi-0.1.0/tests/test_tutorial/test_sub_applications/__init__.py +0 -0
  1270. astraapi-0.1.0/tests/test_tutorial/test_sub_applications/test_tutorial001.py +67 -0
  1271. astraapi-0.1.0/tests/test_tutorial/test_templates/__init__.py +0 -0
  1272. astraapi-0.1.0/tests/test_tutorial/test_templates/test_tutorial001.py +27 -0
  1273. astraapi-0.1.0/tests/test_tutorial/test_testing/__init__.py +0 -0
  1274. astraapi-0.1.0/tests/test_tutorial/test_testing/test_main_a.py +28 -0
  1275. astraapi-0.1.0/tests/test_tutorial/test_testing/test_main_b.py +30 -0
  1276. astraapi-0.1.0/tests/test_tutorial/test_testing/test_tutorial001.py +28 -0
  1277. astraapi-0.1.0/tests/test_tutorial/test_testing/test_tutorial002.py +9 -0
  1278. astraapi-0.1.0/tests/test_tutorial/test_testing/test_tutorial003.py +7 -0
  1279. astraapi-0.1.0/tests/test_tutorial/test_testing/test_tutorial004.py +5 -0
  1280. astraapi-0.1.0/tests/test_tutorial/test_testing_dependencies/__init__.py +0 -0
  1281. astraapi-0.1.0/tests/test_tutorial/test_testing_dependencies/test_tutorial001.py +82 -0
  1282. astraapi-0.1.0/tests/test_tutorial/test_using_request_directly/__init__.py +0 -0
  1283. astraapi-0.1.0/tests/test_tutorial/test_using_request_directly/test_tutorial001.py +114 -0
  1284. astraapi-0.1.0/tests/test_tutorial/test_websockets/__init__.py +0 -0
  1285. astraapi-0.1.0/tests/test_tutorial/test_websockets/test_tutorial001.py +26 -0
  1286. astraapi-0.1.0/tests/test_tutorial/test_websockets/test_tutorial002.py +106 -0
  1287. astraapi-0.1.0/tests/test_tutorial/test_websockets/test_tutorial003.py +52 -0
  1288. astraapi-0.1.0/tests/test_tutorial/test_wsgi/__init__.py +0 -0
  1289. astraapi-0.1.0/tests/test_tutorial/test_wsgi/test_tutorial001.py +17 -0
  1290. astraapi-0.1.0/tests/test_typing_python39.py +24 -0
  1291. astraapi-0.1.0/tests/test_union_body.py +131 -0
  1292. astraapi-0.1.0/tests/test_union_body_discriminator.py +176 -0
  1293. astraapi-0.1.0/tests/test_union_body_discriminator_annotated.py +203 -0
  1294. astraapi-0.1.0/tests/test_union_forms.py +157 -0
  1295. astraapi-0.1.0/tests/test_union_inherited_body.py +137 -0
  1296. astraapi-0.1.0/tests/test_validate_response.py +84 -0
  1297. astraapi-0.1.0/tests/test_validate_response_dataclass.py +53 -0
  1298. astraapi-0.1.0/tests/test_validate_response_recursive/__init__.py +0 -0
  1299. astraapi-0.1.0/tests/test_validate_response_recursive/app.py +47 -0
  1300. astraapi-0.1.0/tests/test_validate_response_recursive/test_validate_response_recursive.py +30 -0
  1301. astraapi-0.1.0/tests/test_validation_error_context.py +168 -0
  1302. astraapi-0.1.0/tests/test_webhooks_security.py +128 -0
  1303. astraapi-0.1.0/tests/test_wrapped_method_forward_reference.py +31 -0
  1304. astraapi-0.1.0/tests/test_ws_dependencies.py +72 -0
  1305. astraapi-0.1.0/tests/test_ws_router.py +271 -0
  1306. astraapi-0.1.0/tests/utils.py +17 -0
  1307. astraapi-0.1.0/uv.lock +7728 -0
  1308. astraapi-0.1.0/ws.js +46 -0
@@ -0,0 +1,121 @@
1
+ name: Build and Publish
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+
8
+ jobs:
9
+ build_wheels:
10
+ name: Build wheels (${{ matrix.os }}, ${{ matrix.arch }})
11
+ runs-on: ${{ matrix.runner }}
12
+ strategy:
13
+ fail-fast: false
14
+ matrix:
15
+ include:
16
+ # Linux x86_64 — manylinux_2_28 container (GCC 14)
17
+ - os: linux
18
+ arch: x86_64
19
+ runner: ubuntu-latest
20
+ cibw_archs: x86_64
21
+
22
+ # Linux aarch64 — native ARM runner (no Docker/QEMU)
23
+ - os: linux
24
+ arch: aarch64
25
+ runner: ubuntu-24.04-arm
26
+ cibw_archs: aarch64
27
+
28
+ # macOS Apple Silicon (native)
29
+ - os: macos
30
+ arch: arm64
31
+ runner: macos-14
32
+ cibw_archs: arm64
33
+
34
+ # Windows x64
35
+ - os: windows
36
+ arch: AMD64
37
+ runner: windows-latest
38
+ cibw_archs: AMD64
39
+
40
+ steps:
41
+ - uses: actions/checkout@v4
42
+
43
+ - name: Install deps (macOS)
44
+ if: matrix.os == 'macos'
45
+ run: brew install libdeflate brotli || true
46
+
47
+ - name: Install zlib (Windows)
48
+ if: matrix.os == 'windows'
49
+ run: vcpkg install zlib:x64-windows
50
+
51
+ - name: Install cibuildwheel
52
+ run: pip install cibuildwheel==2.22.0
53
+
54
+ - name: Build wheels
55
+ run: python -m cibuildwheel --output-dir wheelhouse
56
+ env:
57
+ CIBW_BUILD: "cp312-* cp313-* cp314-*"
58
+ CIBW_SKIP: "*-musllinux* *-win32 *-manylinux_i686"
59
+ CIBW_ARCHS: ${{ matrix.cibw_archs }}
60
+
61
+ # Linux: use manylinux_2_28 (GCC 14, glibc 2.28) — required for C++20 features
62
+ CIBW_MANYLINUX_X86_64_IMAGE: quay.io/pypa/manylinux_2_28_x86_64
63
+ CIBW_MANYLINUX_AARCH64_IMAGE: quay.io/pypa/manylinux_2_28_aarch64
64
+
65
+ # Linux: install compression libs inside manylinux container
66
+ CIBW_BEFORE_BUILD_LINUX: dnf install -y libdeflate-devel brotli-devel || true
67
+
68
+ # macOS: brew libs on macos-14 runner require deployment target 14.0
69
+ CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=14.0
70
+
71
+ # Windows: pass vcpkg toolchain
72
+ CIBW_CONFIG_SETTINGS_WINDOWS: >
73
+ cmake.define.CMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake
74
+ cmake.define.VCPKG_TARGET_TRIPLET=x64-windows
75
+
76
+ CIBW_BUILD_VERBOSITY: 1
77
+
78
+ - uses: actions/upload-artifact@v4
79
+ with:
80
+ name: wheels-${{ matrix.os }}-${{ matrix.arch }}
81
+ path: wheelhouse/*.whl
82
+
83
+ build_sdist:
84
+ name: Build sdist
85
+ runs-on: ubuntu-latest
86
+ steps:
87
+ - uses: actions/checkout@v4
88
+ - run: pipx run build --sdist
89
+ - uses: actions/upload-artifact@v4
90
+ with:
91
+ name: sdist
92
+ path: dist/*.tar.gz
93
+
94
+ publish:
95
+ name: Publish to PyPI
96
+ needs: [build_wheels, build_sdist]
97
+ runs-on: ubuntu-latest
98
+ permissions:
99
+ contents: write
100
+
101
+ steps:
102
+ - uses: actions/checkout@v4
103
+
104
+ - uses: actions/download-artifact@v4
105
+ with:
106
+ path: dist
107
+ merge-multiple: true
108
+
109
+ - name: Install twine
110
+ run: pip install --upgrade twine
111
+
112
+ - name: Publish to PyPI
113
+ env:
114
+ TWINE_USERNAME: __token__
115
+ TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }}
116
+ run: twine upload --verbose dist/*
117
+
118
+ - name: Attach release notes to GitHub release
119
+ uses: softprops/action-gh-release@v2
120
+ with:
121
+ body_path: release_notes.md
@@ -0,0 +1,39 @@
1
+ .idea
2
+ .ipynb_checkpoints
3
+ .mypy_cache
4
+ .vscode
5
+ __pycache__
6
+ .pytest_cache
7
+ htmlcov
8
+ dist
9
+ site
10
+ .coverage*
11
+ coverage.xml
12
+ .netlify
13
+ test.db
14
+ log.txt
15
+ Pipfile.lock
16
+ env3.*
17
+ env
18
+ docs_build
19
+ site_build
20
+ venv
21
+ docs.zip
22
+ archive.zip
23
+
24
+ # vim temporary files
25
+ *~
26
+ .*.sw?
27
+ .cache
28
+
29
+
30
+ # macOS
31
+ .DS_Store
32
+
33
+ .codspeed
34
+ *.so
35
+ **/build/
36
+ .claude
37
+ target/
38
+
39
+ tmps/
@@ -0,0 +1 @@
1
+ 3.14
@@ -0,0 +1,113 @@
1
+ # Contributing to AstraAPI
2
+
3
+ Thanks for helping improve AstraAPI.
4
+
5
+ This project combines Python framework ergonomics with a C++ runtime core, so good contributions usually include both correctness and performance awareness.
6
+
7
+ ## Ways to Contribute
8
+
9
+ - Report bugs and edge cases with a minimal reproduction.
10
+ - Improve docs, examples, and developer guides.
11
+ - Add tests for regressions and behavior coverage.
12
+ - Improve runtime performance in Python or C++ hot paths.
13
+ - Propose API improvements that keep compatibility and clarity.
14
+
15
+ ## Development Setup
16
+
17
+ 1. Fork and clone the repository.
18
+ 2. Create a feature branch from `main`.
19
+ 3. Install in editable mode:
20
+
21
+ ```bash
22
+ pip install -e .
23
+ pip install -e .[standard]
24
+ ```
25
+
26
+ 4. If your change touches native runtime internals, configure and build the C++ core under `cpp_core/`.
27
+
28
+ ## Architecture Areas
29
+
30
+ When opening PRs, mention which layer you changed:
31
+
32
+ - Python app/runtime layer:
33
+ - `astraapi/applications.py`
34
+ - `astraapi/routing.py`
35
+ - `astraapi/dependencies/`
36
+ - Native bridge/runtime layer:
37
+ - `astraapi/_cpp_server.py`
38
+ - `astraapi/_core_bridge.py`
39
+ - `astraapi/_multiworker.py`
40
+ - C++ core:
41
+ - `cpp_core/src/`
42
+ - `cpp_core/include/`
43
+
44
+ ## Request Lifecycle Awareness
45
+
46
+ For request-path changes, validate impact across:
47
+
48
+ 1. Parse and route matching behavior.
49
+ 2. Middleware ordering and exception handling.
50
+ 3. Dependency injection and validation behavior.
51
+ 4. Response serialization and transport writes.
52
+ 5. Keep-alive and protocol state transitions.
53
+
54
+ For WebSocket changes, include handshake, frame handling, and close path testing.
55
+
56
+ ## Multi-Worker Awareness
57
+
58
+ For worker/supervisor changes, test both:
59
+
60
+ - Linux/Unix dispatch patterns (`SCM_RIGHTS`/fork or reuse-port mode).
61
+ - Windows `socket.share()` and subprocess worker behavior.
62
+
63
+ Document any platform-specific caveats in the PR description.
64
+
65
+ ## Testing
66
+
67
+ Run relevant tests before submitting:
68
+
69
+ ```bash
70
+ pytest
71
+ ```
72
+
73
+ Targeted test runs for touched modules are encouraged when the full suite is expensive.
74
+
75
+ For performance-sensitive contributions, include before/after metrics and methodology.
76
+
77
+ ## Pull Request Guidelines
78
+
79
+ - Keep PR scope focused.
80
+ - Include tests for new behavior and bug fixes.
81
+ - Update docs when APIs or behavior change.
82
+ - Explain compatibility impact.
83
+ - Include benchmark evidence when claiming speedups.
84
+
85
+ ## Commit and Review Expectations
86
+
87
+ - Use clear commit messages describing intent.
88
+ - Respond to review comments with code changes or rationale.
89
+ - Keep history understandable; avoid unrelated refactors in the same PR.
90
+
91
+ ## Release Lifecycle
92
+
93
+ Publishing is tag-driven through GitHub Actions (`.github/workflows/publish.yml`):
94
+
95
+ 1. Tag push matching `v*`.
96
+ 2. Wheel builds across Linux, macOS, and Windows.
97
+ 3. Source distribution build.
98
+ 4. PyPI publish.
99
+ 5. GitHub release notes attachment.
100
+
101
+ If your contribution affects packaging or native builds, ensure it is compatible with the release matrix.
102
+
103
+ ## Code of Conduct
104
+
105
+ Please be respectful, constructive, and collaborative in all interactions.
106
+
107
+ ## License
108
+
109
+ By contributing, you agree that your contributions are licensed under the MIT License in `LICENSE`.
110
+
111
+ ## Attribution
112
+
113
+ This project is inspired by FastAPI and maintained by Lumos-Labs-HQ with community contributors.
astraapi-0.1.0/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2018 Sebastián Ramírez
4
+ Copyright (c) 2026 Lumos-Labs-HQ contributors
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in
14
+ all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
+ THE SOFTWARE.