| from unittest.mock import Mock |
| from app.services.risk_service import evaluate_intent, evaluate_healing_decision |
| from agentic_reliability_framework.core.governance.intents import ProvisionResourceIntent, ResourceType |
| from agentic_reliability_framework.core.models.event import ReliabilityEvent |
| from agentic_reliability_framework.core.governance.policy_engine import PolicyEngine |
|
|
|
|
| def test_evaluate_intent(): |
| engine = Mock() |
| engine.calculate_risk.return_value = (0.5, "explanation", {"a": 1}) |
| intent = ProvisionResourceIntent( |
| resource_type=ResourceType.VM, |
| region="eastus", |
| size="Standard_D2s_v3", |
| requester="alice", |
| environment="dev" |
| ) |
| result = evaluate_intent( |
| engine, |
| intent, |
| cost_estimate=100.0, |
| policy_violations=[]) |
| assert result["risk_score"] == 0.5 |
| assert result["explanation"] == "explanation" |
| engine.calculate_risk.assert_called_once() |
|
|
|
|
| def test_evaluate_healing_decision(): |
| event = ReliabilityEvent( |
| component="test", |
| latency_p99=600, |
| error_rate=0.2, |
| service_mesh="default" |
| ) |
| policy_engine = PolicyEngine() |
| |
| policy_engine.use_decision_engine = False |
| result = evaluate_healing_decision(event, policy_engine) |
| assert "selected_action" in result |
| assert "risk_score" in result |
| |
| assert result["epistemic_signals"] is not None |
|
|