quadkit-testing 0.0.41__tar.gz → 0.0.42__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 (275) hide show
  1. quadkit_testing-0.0.42/.gitignore +214 -0
  2. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/PKG-INFO +22 -6
  3. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/README.md +3 -3
  4. quadkit_testing-0.0.42/docs/ARCHITECTURE.md +571 -0
  5. quadkit_testing-0.0.42/docs/COMPLIANCE.md +123 -0
  6. quadkit_testing-0.0.42/docs/CONFIGURATION.md +52 -0
  7. quadkit_testing-0.0.42/docs/GUIDE.md +191 -0
  8. quadkit_testing-0.0.42/docs/HOWTOS.md +220 -0
  9. quadkit_testing-0.0.42/docs/QUICKSTART.md +66 -0
  10. quadkit_testing-0.0.42/docs/TROUBLESHOOTING.md +174 -0
  11. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/pyproject.toml +29 -3
  12. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/__init__.py +64 -0
  13. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/bed.py +115 -0
  14. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/client.py +22 -0
  15. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/fixtures/__init__.py +134 -0
  16. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/fixtures/_async.py +30 -0
  17. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/fixtures/beds.py +36 -0
  18. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/fixtures/mocks.py +82 -0
  19. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/fixtures/tokens.py +196 -0
  20. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/fixtures/users.py +239 -0
  21. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/test_client.py +157 -0
  22. quadkit_testing-0.0.42/src/quadkit/testing/clients/auth/types.py +141 -0
  23. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/__init__.py +101 -0
  24. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/bed.py +114 -0
  25. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/client.py +16 -0
  26. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/client_core.py +275 -0
  27. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/data.py +60 -0
  28. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/fixtures/__init__.py +143 -0
  29. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/fixtures/_async.py +30 -0
  30. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/fixtures/beds.py +57 -0
  31. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/fixtures/data.py +173 -0
  32. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/fixtures/lifecycle.py +219 -0
  33. quadkit_testing-0.0.42/src/quadkit/testing/clients/cache/fixtures/scenarios.py +65 -0
  34. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/__init__.py +111 -0
  35. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/client.py +26 -0
  36. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/components/__init__.py +17 -0
  37. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/components/command_client.py +159 -0
  38. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/components/event_client.py +227 -0
  39. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/components/query_client.py +159 -0
  40. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/components/test_bed.py +116 -0
  41. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/components/test_data.py +195 -0
  42. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/fixtures/__init__.py +262 -0
  43. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/fixtures/_async.py +34 -0
  44. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/fixtures/beds.py +121 -0
  45. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/fixtures/data.py +219 -0
  46. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/fixtures/handlers.py +169 -0
  47. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/fixtures/models.py +139 -0
  48. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/fixtures/scenarios.py +52 -0
  49. quadkit_testing-0.0.42/src/quadkit/testing/clients/events/py.typed +0 -0
  50. quadkit_testing-0.0.42/src/quadkit/testing/clients/search/__init__.py +40 -0
  51. quadkit_testing-0.0.42/src/quadkit/testing/clients/search/client.py +431 -0
  52. quadkit_testing-0.0.42/src/quadkit/testing/clients/search/fixtures.py +63 -0
  53. quadkit_testing-0.0.42/src/quadkit/testing/clients/search/py.typed +0 -0
  54. quadkit_testing-0.0.42/src/quadkit/testing/clients/storage/__init__.py +11 -0
  55. quadkit_testing-0.0.42/src/quadkit/testing/clients/storage/fixtures.py +81 -0
  56. quadkit_testing-0.0.42/src/quadkit/testing/clients/storage/mocks.py +41 -0
  57. quadkit_testing-0.0.42/src/quadkit/testing/clients/storage/py.typed +0 -0
  58. quadkit_testing-0.0.42/src/quadkit/testing/clients/tasks/__init__.py +23 -0
  59. quadkit_testing-0.0.42/src/quadkit/testing/clients/tasks/bed.py +122 -0
  60. quadkit_testing-0.0.42/src/quadkit/testing/clients/tasks/client.py +149 -0
  61. quadkit_testing-0.0.42/src/quadkit/testing/clients/tasks/data.py +88 -0
  62. quadkit_testing-0.0.42/src/quadkit/testing/clients/tasks/mocks.py +306 -0
  63. quadkit_testing-0.0.42/src/quadkit/testing/clients/tasks/py.typed +0 -0
  64. quadkit_testing-0.0.42/src/quadkit/testing/clients/ui/__init__.py +7 -0
  65. quadkit_testing-0.0.42/src/quadkit/testing/clients/ui/core.py +106 -0
  66. quadkit_testing-0.0.42/src/quadkit/testing/clients/web/py.typed +0 -0
  67. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/__init__.py +1 -1
  68. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/flags.py +1 -1
  69. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/__init__.py +1 -1
  70. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/redis.py +1 -1
  71. quadkit_testing-0.0.42/src/quadkit/testing/fakes/secrets.py +14 -0
  72. quadkit_testing-0.0.42/src/quadkit/testing/fixtures/ai.py +190 -0
  73. quadkit_testing-0.0.42/src/quadkit/testing/fixtures/db.py +279 -0
  74. quadkit_testing-0.0.42/src/quadkit/testing/fixtures/py.typed +0 -0
  75. quadkit_testing-0.0.42/src/quadkit/testing/fixtures/tasks.py +57 -0
  76. quadkit_testing-0.0.42/src/quadkit/testing/harness/environment.py +249 -0
  77. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/admin_helpers.py +2 -2
  78. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/cqrs.py +1 -1
  79. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/event_bus.py +21 -7
  80. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/outbox.py +1 -1
  81. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/repository.py +3 -3
  82. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/uow.py +1 -1
  83. quadkit_testing-0.0.42/src/quadkit/testing/py.typed +0 -0
  84. quadkit_testing-0.0.42/tests/integration/test_ai_client.py +290 -0
  85. quadkit_testing-0.0.42/tests/integration/test_bed.py +380 -0
  86. quadkit_testing-0.0.42/tests/unit/test_cache_client_fixtures.py +234 -0
  87. quadkit_testing-0.0.42/tests/unit/test_cache_clients.py +313 -0
  88. quadkit_testing-0.0.42/tests/unit/test_command_query_test_clients.py +215 -0
  89. quadkit_testing-0.0.42/tests/unit/test_compliance_suites.py +354 -0
  90. quadkit_testing-0.0.42/tests/unit/test_db_transaction_fixture.py +211 -0
  91. quadkit_testing-0.0.42/tests/unit/test_event_test_client.py +210 -0
  92. quadkit_testing-0.0.42/tests/unit/test_fakes_observability.py +136 -0
  93. quadkit_testing-0.0.42/tests/unit/test_fixture_modules.py +418 -0
  94. quadkit_testing-0.0.42/tests/unit/test_harness_container.py +172 -0
  95. quadkit_testing-0.0.42/tests/unit/test_integration_environment.py +319 -0
  96. quadkit_testing-0.0.42/tests/unit/test_round33_hardening.py +79 -0
  97. quadkit_testing-0.0.42/tests/unit/test_tasks_clients.py +290 -0
  98. quadkit_testing-0.0.42/tests/unit/test_testing_stack_scenario.py +332 -0
  99. quadkit_testing-0.0.41/.gitignore +0 -24
  100. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/LICENSE +0 -0
  101. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/NOTICE +0 -0
  102. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/py.typed +0 -0
  103. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/README.md +0 -0
  104. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/__init__.py +0 -0
  105. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/_lazy_exports.py +0 -0
  106. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/ai/__init__.py +0 -0
  107. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/ai/bed.py +0 -0
  108. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/ai/client.py +0 -0
  109. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/ai/data.py +0 -0
  110. {quadkit_testing-0.0.41/src/quadkit/testing/clients/web → quadkit_testing-0.0.42/src/quadkit/testing/clients/auth}/py.typed +0 -0
  111. {quadkit_testing-0.0.41/src/quadkit/testing/fixtures → quadkit_testing-0.0.42/src/quadkit/testing/clients/cache}/py.typed +0 -0
  112. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/db/__init__.py +0 -0
  113. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/db/bed.py +0 -0
  114. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/db/client.py +0 -0
  115. {quadkit_testing-0.0.41/src/quadkit/testing → quadkit_testing-0.0.42/src/quadkit/testing/clients/events/components}/py.typed +0 -0
  116. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/web/__init__.py +0 -0
  117. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/web/bed.py +0 -0
  118. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clients/web/client.py +0 -0
  119. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/clock.py +0 -0
  120. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/audit.py +0 -0
  121. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/blob_store.py +0 -0
  122. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/cache.py +0 -0
  123. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/database.py +0 -0
  124. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/distributed_lock.py +0 -0
  125. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/event_bus.py +0 -0
  126. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/middleware.py +0 -0
  127. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/notification.py +0 -0
  128. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/queue_backend.py +0 -0
  129. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/repository.py +0 -0
  130. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/search.py +0 -0
  131. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/secrets.py +0 -0
  132. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/task_queue.py +0 -0
  133. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/vector_store.py +0 -0
  134. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/compliance/webhook.py +0 -0
  135. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/config.py +0 -0
  136. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/constants.py +0 -0
  137. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/decorators.py +0 -0
  138. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/di/__init__.py +0 -0
  139. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/events.py +0 -0
  140. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/exceptions.py +0 -0
  141. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/audit.py +0 -0
  142. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/buses.py +0 -0
  143. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/cache.py +0 -0
  144. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/clock.py +0 -0
  145. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/config.py +0 -0
  146. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/events.py +0 -0
  147. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/governance.py +0 -0
  148. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/lifecycle.py +0 -0
  149. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/logging.py +0 -0
  150. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/monitoring.py +0 -0
  151. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fakes/tracing.py +0 -0
  152. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fixtures/__init__.py +0 -0
  153. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fixtures/bed.py +0 -0
  154. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fixtures/container.py +0 -0
  155. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fixtures/containers.py +0 -0
  156. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fixtures/core.py +0 -0
  157. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/fixtures/web.py +0 -0
  158. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/generators.py +0 -0
  159. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/generators_contract.py +0 -0
  160. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/harness/__init__.py +0 -0
  161. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/harness/container.py +0 -0
  162. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/harness/decorators.py +0 -0
  163. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/harness/overrides.py +0 -0
  164. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/harness/testbed.py +0 -0
  165. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/hooks.py +0 -0
  166. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/integration/__init__.py +0 -0
  167. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/integration/cleanup.py +0 -0
  168. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/integration/config.py +0 -0
  169. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/integration/fixtures.py +0 -0
  170. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/integration/markers.py +0 -0
  171. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/integration/probes.py +0 -0
  172. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/__init__.py +0 -0
  173. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/assertions.py +0 -0
  174. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/async_helper.py +0 -0
  175. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/factory.py +0 -0
  176. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/smoke.py +0 -0
  177. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/snapshots.py +0 -0
  178. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/lib/stubs.py +0 -0
  179. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/__init__.py +0 -0
  180. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/audit.py +0 -0
  181. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/blob_store.py +0 -0
  182. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/cache.py +0 -0
  183. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/config/__init__.py +0 -0
  184. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/config/models.py +0 -0
  185. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/constants.py +0 -0
  186. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/di/__init__.py +0 -0
  187. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/di/provider.py +0 -0
  188. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/exceptions.py +0 -0
  189. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/lock.py +0 -0
  190. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/notification.py +0 -0
  191. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/queue.py +0 -0
  192. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/memory/search.py +0 -0
  193. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/mocks/__init__.py +0 -0
  194. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/mocks/base.py +0 -0
  195. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/mocks/test_provider.py +0 -0
  196. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/module.py +0 -0
  197. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/plugins/__init__.py +0 -0
  198. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/plugins/pytest/__init__.py +0 -0
  199. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/plugins/pytest/plugin.py +0 -0
  200. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/protocols.py +0 -0
  201. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/testkit/__init__.py +0 -0
  202. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/testkit/assertions.py +0 -0
  203. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/testkit/environment.py +0 -0
  204. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/testkit/fakes.py +0 -0
  205. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/testkit/fixtures.py +0 -0
  206. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/types.py +0 -0
  207. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/websocket/__init__.py +0 -0
  208. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/websocket/client.py +0 -0
  209. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/workflow/__init__.py +0 -0
  210. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/src/quadkit/testing/workflow/harness.py +0 -0
  211. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/__snapshots__/test_snapshot_function.json +0 -0
  212. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/conftest.py +0 -0
  213. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/integration/test_web_client.py +0 -0
  214. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/test_package_structure_p1.py +0 -0
  215. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/__snapshots__/test_snapshot_function.json +0 -0
  216. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/_integration_helpers.py +0 -0
  217. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/conftest.py +0 -0
  218. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_ai_client_budget.py +0 -0
  219. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_ai_clients.py +0 -0
  220. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_app_testbed.py +0 -0
  221. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_app_testbed_from_factory_overrides.py +0 -0
  222. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_assertion_helpers.py +0 -0
  223. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_async_helper.py +0 -0
  224. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_container.py +0 -0
  225. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_container_bind.py +0 -0
  226. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_container_factory_auto_registration.py +0 -0
  227. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_container_try_resolve.py +0 -0
  228. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_db_clients.py +0 -0
  229. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_environment_lifecycle.py +0 -0
  230. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_exceptions.py +0 -0
  231. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_factory.py +0 -0
  232. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_fake_audit.py +0 -0
  233. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_fake_event_bus_ordering.py +0 -0
  234. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_fake_tracer.py +0 -0
  235. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_fakes.py +0 -0
  236. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_fakes_cluster.py +0 -0
  237. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_fakes_lifecycle.py +0 -0
  238. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_generators_util.py +0 -0
  239. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_harness_testkit.py +0 -0
  240. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_integration_cleanup.py +0 -0
  241. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_integration_cluster.py +0 -0
  242. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_integration_fixtures.py +0 -0
  243. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_integration_probes.py +0 -0
  244. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_lib_admin_client.py +0 -0
  245. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_lib_async_helpers.py +0 -0
  246. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_lib_helpers.py +0 -0
  247. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_memory_backends.py +0 -0
  248. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_memory_cqrs.py +0 -0
  249. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_memory_event_bus.py +0 -0
  250. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_memory_lock.py +0 -0
  251. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_memory_outbox.py +0 -0
  252. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_memory_repository.py +0 -0
  253. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_mocks.py +0 -0
  254. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_mocks_cluster.py +0 -0
  255. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_override_context_manager_revert.py +0 -0
  256. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_plugin.py +0 -0
  257. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_public_exports.py +0 -0
  258. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_pytest_plugin_fixtures.py +0 -0
  259. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_service_probe_connectivity.py +0 -0
  260. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_small_modules.py +0 -0
  261. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_smoke.py +0 -0
  262. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_snapshot_asserter_create_compare.py +0 -0
  263. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_snapshots.py +0 -0
  264. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_stubs.py +0 -0
  265. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_subpackage_exports.py +0 -0
  266. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_test_environment.py +0 -0
  267. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_test_environment_facade.py +0 -0
  268. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_test_environment_overrides.py +0 -0
  269. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_testing_constants.py +0 -0
  270. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_testing_module.py +0 -0
  271. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_testing_utils.py +0 -0
  272. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_testkit_surface.py +0 -0
  273. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_utilities.py +0 -0
  274. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_web_clients.py +0 -0
  275. {quadkit_testing-0.0.41 → quadkit_testing-0.0.42}/tests/unit/test_workflow_websocket_plugins.py +0 -0
@@ -0,0 +1,214 @@
1
+ *
2
+ !tests/
3
+ !tests/**
4
+ !README.md
5
+ !AGENTS.md
6
+ !DEVELOPMENT.md
7
+ !QUICKGUIDE.md
8
+ !MILESTONE*.md
9
+ !TESTS*.md
10
+ !CHANGELOG.md
11
+ !AUDIT*.md
12
+ !REF*.md
13
+ !AUDIT*.json
14
+ !LICENSE
15
+ !LICENSE-MIT.txt
16
+ !NOTICE
17
+ !TRADEMARK.md
18
+ !conftest.py
19
+ !CONTRIBUTING.md
20
+ !CODE_OF_CONDUCT.md
21
+ !SECURITY.md
22
+ !GOVERNANCE.md
23
+ !pyproject.toml
24
+ !uv.lock
25
+ !docker-compose.yml
26
+ !.env.example
27
+ !.env.full.example
28
+ !.importlinter
29
+ !.superpowers/
30
+ !.superpowers/**
31
+ !.gitattributes
32
+ !.editorconfig
33
+ !Makefile
34
+ !docker-compose.test.yml
35
+ !quadkit.yaml.example
36
+ !.github/
37
+ !.github/workflows/
38
+ !.github/workflows/**
39
+ !.github/dependabot.yml
40
+ !.devcontainer/
41
+ !.devcontainer/**
42
+ !tools/
43
+ !tools/**
44
+ !*example.yaml
45
+
46
+ # Quadkit Packages
47
+ !quadkit*/
48
+ !quadkit*/pyproject.toml
49
+ !quadkit*/CHANGELOG.md
50
+ !quadkit*/README.md
51
+ !quadkit*/alembic.ini
52
+ !quadkit*/mypy.ini
53
+ !quadkit*/*.yaml.example
54
+ !quadkit*/src/
55
+ !quadkit*/src/**
56
+ !quadkit*/docs/
57
+ !quadkit*/docs/**
58
+ !quadkit*/tests/
59
+ !quadkit*/tests/**
60
+
61
+ # Keep quadkit docs
62
+ !/docs/
63
+ !docs/**
64
+
65
+ # Session / cutover plans at the repo root
66
+ !plans/
67
+ !plans/**
68
+
69
+ # Keep example files for README examples
70
+ !/examples/
71
+ !/examples/**
72
+
73
+ # Re-ignore these AFTER negations (last match wins)
74
+ *.tape
75
+ examples/*/runs/
76
+ __pycache__/
77
+ *.pyc
78
+ *.pyo
79
+ *.egg-info/
80
+ dist/
81
+ build/
82
+ .eggs/
83
+ *.egg
84
+ .pytest_cache/
85
+ .mypy_cache/
86
+ .ruff_cache/
87
+ htmlcov/
88
+ .coverage
89
+ coverage.xml
90
+ test.db
91
+ !quadkit*/tests/fixtures/test.db
92
+ *.log
93
+ *.tmp
94
+
95
+ # Company-specific files (keep private, do not commit)
96
+ .company/
97
+ COMPANY_*.md
98
+ company-config/
99
+ internal-docs/
100
+ # Editor swap files
101
+ *.swp
102
+
103
+ !core/
104
+ !packages/
105
+ !core/quadkit*/
106
+ !packages/quadkit*/
107
+ !core/quadkit*/pyproject.toml
108
+ !packages/quadkit*/pyproject.toml
109
+ !core/quadkit*/CHANGELOG.md
110
+ !packages/quadkit*/CHANGELOG.md
111
+ !core/quadkit*/README.md
112
+ !packages/quadkit*/README.md
113
+ !core/quadkit*/alembic.ini
114
+ !packages/quadkit*/alembic.ini
115
+ !core/quadkit*/mypy.ini
116
+ !packages/quadkit*/mypy.ini
117
+ !core/quadkit*/*.yaml.example
118
+ !packages/quadkit*/*.yaml.example
119
+ !core/quadkit*/src/
120
+ !core/quadkit*/src/**
121
+ !packages/quadkit*/src/
122
+ !packages/quadkit*/src/**
123
+ !core/quadkit*/tests/
124
+ !core/quadkit*/tests/**
125
+ !packages/quadkit*/tests/
126
+ !packages/quadkit*/tests/**
127
+ !core/quadkit*/docs/
128
+ !core/quadkit*/docs/**
129
+ !packages/quadkit*/docs/
130
+ !packages/quadkit*/docs/**
131
+
132
+ # dev/
133
+ !dev/
134
+ !dev/**
135
+
136
+ # Admin dev playground (committed dev asset; local SQLite files stay ignored)
137
+ !packages/quadkit-admin/playground/
138
+ !packages/quadkit-admin/playground/serve.py
139
+
140
+ # gatewai apps
141
+ !apps/
142
+ !apps/**
143
+ !apps/gatewai/
144
+ !apps/gatewai/**
145
+ apps/**/node_modules/
146
+ apps/**/dist/
147
+ apps/**/__pycache__/
148
+ apps/**/*.pyc
149
+ apps/**/*.db
150
+ apps/**/*.db-wal
151
+ apps/**/*.db-shm
152
+ apps/**/.env
153
+ apps/**/.env.*
154
+ !apps/**/.env.example
155
+ !apps/**/.env.full.example
156
+
157
+ # Piccolina — nested app tracked in this monorepo (standalone .git removed).
158
+ # Keep marketing packages and deployment secrets out of the tree.
159
+ apps/piccolina/piccolina-marketing/
160
+ apps/piccolina/piccolina-marketing-plans/
161
+ apps/piccolina/secrets/
162
+ apps/piccolina/**/secrets/
163
+ apps/piccolina/**/*.pem
164
+ apps/piccolina/**/*.key
165
+ apps/piccolina/**/.venv/
166
+ apps/piccolina/**/node_modules/
167
+ apps/piccolina/**/__pycache__/
168
+ apps/piccolina/**/*.pyc
169
+ apps/piccolina/**/*.pbf
170
+ apps/piccolina/**/.open-next/
171
+ apps/piccolina/**/storage/
172
+ apps/piccolina/**/.deploy-host
173
+
174
+ # Re-exclude private content under the tiered paths.
175
+ # MUST come after the !...docs/** negations above — last match wins.
176
+ core/quadkit*/docs/plans/
177
+ packages/quadkit*/docs/plans/
178
+ core/quadkit*/docs/**/
179
+ packages/quadkit*/docs/**/
180
+
181
+ # Re-exclude tooling artifacts under the tiered paths
182
+ __pycache__/
183
+ *.pyc
184
+ *.pyo
185
+ *.egg-info/
186
+ .pytest_cache/
187
+ .mypy_cache/
188
+ .ruff_cache/
189
+ htmlcov/
190
+ .coverage
191
+ coverage.xml
192
+ test.db
193
+ *.tmp
194
+ *.log
195
+ !core/quadkit*/tests/fixtures/test.db
196
+ !packages/quadkit*/tests/fixtures/test.db
197
+
198
+ # Allow the generated example gifs to be tracked (README hero images).
199
+ !core/quadkit*/docs/gifs/
200
+ !core/quadkit*/docs/gifs/**
201
+ !packages/*/quadkit*/docs/gifs/
202
+ !packages/*/quadkit*/docs/gifs/**
203
+ examples/*/screenshot.png
204
+ !banner*
205
+ apps/quadkit-playground/**/node_modules/
206
+ apps/quadkit-playground/**/dist/
207
+ apps/quadkit-playground/**/__pycache__/
208
+ apps/quadkit-playground/**/*.pyc
209
+ apps/quadkit-playground/**/*.db
210
+ apps/quadkit-playground/**/*.db-wal
211
+ apps/quadkit-playground/**/*.db-shm
212
+ apps/quadkit-playground/projects/
213
+ apps/quadkit-playground/quadkit/
214
+ docs/superpowers/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: quadkit-testing
3
- Version: 0.0.41
3
+ Version: 0.0.42
4
4
  Summary: Centralized testing infrastructure for Quadkit Framework - Fixtures, factories, and utilities
5
5
  Project-URL: Homepage, https://dbtinoy-.github.io/quadkit/
6
6
  Project-URL: Repository, https://github.com/dbtinoy-/quadkit
@@ -32,9 +32,23 @@ Requires-Dist: pytest-mock<4,>=3.10.0
32
32
  Requires-Dist: pytest<10,>=8.0.0
33
33
  Requires-Dist: quadkit-contracts>=0.0.2
34
34
  Requires-Dist: quadkit>=0.0.2
35
+ Provides-Extra: all
36
+ Requires-Dist: aiosqlite<1,>=0.19.0; extra == 'all'
37
+ Requires-Dist: asyncpg<1,>=0.29.0; extra == 'all'
38
+ Requires-Dist: httpx2<3,>=2.0.0; extra == 'all'
39
+ Requires-Dist: httpx<1,>=0.26.0; extra == 'all'
40
+ Requires-Dist: quadkit-auth>=0.0.2; extra == 'all'
41
+ Requires-Dist: quadkit-cache>=0.0.2; extra == 'all'
42
+ Requires-Dist: quadkit-storage>=0.0.2; extra == 'all'
43
+ Requires-Dist: starlette<2,>=0.28.0; extra == 'all'
44
+ Provides-Extra: auth
45
+ Requires-Dist: quadkit-auth>=0.0.2; extra == 'auth'
46
+ Provides-Extra: cache
47
+ Requires-Dist: quadkit-cache>=0.0.2; extra == 'cache'
35
48
  Provides-Extra: db
36
- Requires-Dist: aiosqlite>=0.19.0; extra == 'db'
37
- Requires-Dist: asyncpg>=0.29.0; extra == 'db'
49
+ Requires-Dist: aiosqlite<1,>=0.19.0; extra == 'db'
50
+ Requires-Dist: asyncpg<1,>=0.29.0; extra == 'db'
51
+ Requires-Dist: quadkit-sql>=0.0.2; extra == 'db'
38
52
  Provides-Extra: dev
39
53
  Requires-Dist: black<27,>=23.0.0; extra == 'dev'
40
54
  Requires-Dist: mypy<3,>=1.0.0; extra == 'dev'
@@ -48,6 +62,8 @@ Requires-Dist: motor<4,>=3.3.0; extra == 'integration'
48
62
  Requires-Dist: neo4j<7,>=5.18.0; extra == 'integration'
49
63
  Requires-Dist: qdrant-client<2,>=1.9.0; extra == 'integration'
50
64
  Requires-Dist: redis<9,>=5.0.0; extra == 'integration'
65
+ Provides-Extra: storage
66
+ Requires-Dist: quadkit-storage>=0.0.2; extra == 'storage'
51
67
  Provides-Extra: web
52
68
  Requires-Dist: httpx2<3,>=2.0.0; extra == 'web'
53
69
  Requires-Dist: httpx<1,>=0.26.0; extra == 'web'
@@ -234,10 +250,10 @@ vulnerabilities privately per [SECURITY.md](https://github.com/dbtinoy-/quadkit/
234
250
 
235
251
  ## Stability
236
252
 
237
- Version `0.0.3` in the `0.x` series, released in lockstep with the
253
+ Version `0.0.42` in the `0.x` series, released in lockstep with the
238
254
  other four distributions; APIs may change between minor versions until
239
- 1.0 — pin an exact version (`quadkit-testing==0.0.3`) or a tight range
240
- (`>=0.0.3,<0.1.0`). Full policy:
255
+ 1.0 — pin an exact version (`quadkit-testing==0.0.42`) or a tight range
256
+ (`>=0.0.42,<0.1.0`). Full policy:
241
257
  [stability and compatibility](https://dbtinoy-.github.io/quadkit/reference/stability/).
242
258
 
243
259
  ## Links
@@ -178,10 +178,10 @@ vulnerabilities privately per [SECURITY.md](https://github.com/dbtinoy-/quadkit/
178
178
 
179
179
  ## Stability
180
180
 
181
- Version `0.0.3` in the `0.x` series, released in lockstep with the
181
+ Version `0.0.42` in the `0.x` series, released in lockstep with the
182
182
  other four distributions; APIs may change between minor versions until
183
- 1.0 — pin an exact version (`quadkit-testing==0.0.3`) or a tight range
184
- (`>=0.0.3,<0.1.0`). Full policy:
183
+ 1.0 — pin an exact version (`quadkit-testing==0.0.42`) or a tight range
184
+ (`>=0.0.42,<0.1.0`). Full policy:
185
185
  [stability and compatibility](https://dbtinoy-.github.io/quadkit/reference/stability/).
186
186
 
187
187
  ## Links