The dev_tools API routes were moved to the monitoring module, but several files still tried to import the non-existent admin_router. This caused warnings during app startup. Changes: - Remove _get_admin_router() from definition.py - Clear routes/__init__.py and routes/api/__init__.py of broken imports - Update exceptions.py to import from monitoring.exceptions - Update code_quality_service.py to import from monitoring.exceptions Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
79 lines
2.2 KiB
Python
79 lines
2.2 KiB
Python
# app/modules/dev_tools/exceptions.py
|
|
"""
|
|
Dev-Tools Module Exceptions
|
|
|
|
Module-specific exceptions for code quality and test runner functionality.
|
|
Re-exports code quality exceptions from the legacy location and adds
|
|
test runner specific exceptions.
|
|
"""
|
|
|
|
from app.exceptions.base import (
|
|
ExternalServiceException,
|
|
ResourceNotFoundException,
|
|
)
|
|
|
|
# Re-export code quality exceptions from their module location
|
|
from app.modules.monitoring.exceptions import (
|
|
ViolationNotFoundException,
|
|
ScanNotFoundException,
|
|
ScanExecutionException,
|
|
ScanTimeoutException,
|
|
ScanParseException,
|
|
ViolationOperationException,
|
|
InvalidViolationStatusException,
|
|
)
|
|
|
|
|
|
# =============================================================================
|
|
# Test Runner Exceptions (defined here as they don't exist in legacy location)
|
|
# =============================================================================
|
|
|
|
|
|
class TestRunNotFoundException(ResourceNotFoundException):
|
|
"""Raised when a test run is not found."""
|
|
|
|
def __init__(self, run_id: int):
|
|
super().__init__(
|
|
resource_type="TestRun",
|
|
identifier=str(run_id),
|
|
error_code="TEST_RUN_NOT_FOUND",
|
|
)
|
|
|
|
|
|
class TestExecutionException(ExternalServiceException):
|
|
"""Raised when test execution fails."""
|
|
|
|
def __init__(self, reason: str):
|
|
super().__init__(
|
|
service_name="TestRunner",
|
|
message=f"Test execution failed: {reason}",
|
|
error_code="TEST_EXECUTION_FAILED",
|
|
)
|
|
|
|
|
|
class TestTimeoutException(ExternalServiceException):
|
|
"""Raised when test execution times out."""
|
|
|
|
def __init__(self, timeout_seconds: int = 3600):
|
|
super().__init__(
|
|
service_name="TestRunner",
|
|
message=f"Test execution timed out after {timeout_seconds} seconds",
|
|
error_code="TEST_TIMEOUT",
|
|
)
|
|
|
|
|
|
__all__ = [
|
|
# Code quality exceptions (re-exported)
|
|
"ViolationNotFoundException",
|
|
"ScanNotFoundException",
|
|
"ScanExecutionException",
|
|
"ScanTimeoutException",
|
|
"ScanParseException",
|
|
"ViolationOperationException",
|
|
"InvalidViolationStatusException",
|
|
# Test runner exceptions (defined here)
|
|
"TestRunNotFoundException",
|
|
"TestExecutionException",
|
|
"TestTimeoutException",
|
|
]
|