Add sales contract repair routes

This commit is contained in:
Magzhan Zhumabayev
2026-05-11 16:57:30 +05:00
parent ebba6c3f82
commit 64862dd49a
2 changed files with 283 additions and 2 deletions
+30
View File
@@ -0,0 +1,30 @@
import services.sales_service.app as sales_module
def _methods(path: str) -> set[str]:
result: set[str] = set()
for route in sales_module.app.routes:
if getattr(route, "path", None) == path:
result.update(getattr(route, "methods", set()))
return result
def test_sales_frontend_contract_routes_are_registered():
expected = {
"/api/v1/deals/{deal_id}/change-stage": {"POST"},
"/api/v1/deals/{deal_id}/notes/{note_id}": {"PATCH"},
"/api/v1/deals/{deal_id}/switch-channel": {"POST"},
"/api/v1/communications/{communication_id}/switch-channel": {"POST"},
"/api/v1/calls/{call_id}/transcript": {"GET", "POST"},
"/api/v1/deals/{deal_id}/offers": {"GET", "POST"},
"/api/v1/deals/{deal_id}/documents": {"GET", "POST"},
"/api/v1/deals/{deal_id}/invoices": {"GET", "POST"},
"/api/v1/deals/{deal_id}/conditions": {"GET", "POST", "PATCH", "PUT"},
"/api/v1/deals/{deal_id}/conditions/confirm": {"POST"},
"/api/v1/deals/{deal_id}/automation-tasks": {"GET"},
"/api/v1/automation-tasks/{task_id}/cancel": {"POST"},
"/api/v1/automation-tasks/{task_id}/run-now": {"POST"},
}
for path, methods in expected.items():
assert methods.issubset(_methods(path))