Files
ai-ticket-platform/backend/apps/tickets/tests/test_ticket_status.py
2026-07-02 10:11:30 +08:00

23 lines
793 B
Python

import pytest
from apps.tickets.services import TicketStatusError, validate_status_transition
def test_pending_ticket_can_move_to_in_progress():
validate_status_transition("pending", "in_progress")
def test_in_progress_ticket_must_not_close_directly():
with pytest.raises(TicketStatusError, match="in_progress -> closed"):
validate_status_transition("in_progress", "closed")
def test_in_progress_ticket_must_not_resolve_directly():
with pytest.raises(TicketStatusError, match="in_progress -> resolved"):
validate_status_transition("in_progress", "resolved")
def test_resolved_ticket_cannot_move_back_to_in_progress():
with pytest.raises(TicketStatusError, match="resolved -> in_progress"):
validate_status_transition("resolved", "in_progress")