mirror of
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools.git
synced 2026-06-17 23:09:35 +00:00
80 lines
2.7 KiB
Python
80 lines
2.7 KiB
Python
import pytest
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_executive_roi_endpoint(client):
|
|
response = await client.post(
|
|
"/api/v1/autonomous-foundation/dashboard/executive-roi",
|
|
json={
|
|
"baseline": {"revenue": 100000},
|
|
"current": {
|
|
"revenue": 130000,
|
|
"win_rate": 0.31,
|
|
"pipeline_velocity_days": 19,
|
|
"manual_work_reduction_percent": 72,
|
|
},
|
|
},
|
|
)
|
|
assert response.status_code == 200
|
|
payload = response.json()
|
|
assert payload["revenue_lift_percent"] == 30.0
|
|
assert payload["manual_work_reduction_percent"] == 72
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_connectivity_endpoint(client):
|
|
response = await client.post(
|
|
"/api/v1/autonomous-foundation/integrations/connectivity-test",
|
|
json={},
|
|
)
|
|
assert response.status_code == 200
|
|
payload = response.json()
|
|
assert "salesforce" in payload
|
|
assert "whatsapp" in payload
|
|
assert "stripe" in payload
|
|
assert "summary" in payload
|
|
assert payload["salesforce"].get("status") in ("ok", "error")
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_live_readiness_endpoint(client):
|
|
response = await client.get("/api/v1/autonomous-foundation/integrations/live-readiness")
|
|
assert response.status_code == 200
|
|
payload = response.json()
|
|
assert "overall" in payload
|
|
assert "checks" in payload
|
|
assert "salesforce_client_id" in payload["checks"]
|
|
assert "readiness_percent" in payload
|
|
assert "missing" in payload
|
|
assert "summary" in payload
|
|
assert "cli_examples" in payload
|
|
assert "powershell" in payload["cli_examples"]
|
|
assert payload.get("launch_mode") == "full_commercial"
|
|
assert "categories" in payload
|
|
assert "blocking" in payload
|
|
assert "integration_docs" in payload
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_go_live_gate_returns_403_with_report_when_not_fully_ready(client):
|
|
response = await client.get("/api/v1/autonomous-foundation/integrations/go-live-gate")
|
|
payload = response.json()
|
|
assert "gate" in payload
|
|
assert payload["gate"] == "go_live"
|
|
assert "launch_allowed" in payload
|
|
assert "missing" in payload
|
|
assert "checks" in payload
|
|
assert "readiness_percent" in payload
|
|
assert "summary" in payload
|
|
assert "cli_examples" in payload
|
|
assert "warnings" in payload
|
|
if not payload["launch_allowed"]:
|
|
assert response.status_code == 403
|
|
assert payload["readiness_percent"] < 100.0
|
|
assert isinstance(payload["missing"], list)
|
|
assert payload["missing_count"] == len(payload["missing"])
|
|
else:
|
|
assert response.status_code == 200
|
|
assert payload["readiness_percent"] == 100.0
|
|
assert payload["missing_count"] == 0
|