Add models module
This commit is contained in:
@@ -1,38 +1,20 @@
|
||||
"""Severity levels for validation findings."""
|
||||
|
||||
"""Severity levels."""
|
||||
from enum import Enum
|
||||
|
||||
|
||||
class Severity(Enum):
|
||||
"""Severity levels for validation findings."""
|
||||
|
||||
LOW = "low"
|
||||
MEDIUM = "medium"
|
||||
HIGH = "high"
|
||||
CRITICAL = "critical"
|
||||
|
||||
@classmethod
|
||||
def from_string(cls, value: str) -> "Severity":
|
||||
"""Create severity from string value."""
|
||||
def from_string(cls, value: str):
|
||||
value_lower = value.lower()
|
||||
for severity in cls:
|
||||
if severity.value == value_lower:
|
||||
return severity
|
||||
raise ValueError(f"Unknown severity level: {value}")
|
||||
|
||||
def __lt__(self, other: "Severity") -> bool:
|
||||
"""Compare severity levels."""
|
||||
def __lt__(self, other):
|
||||
order = [Severity.LOW, Severity.MEDIUM, Severity.HIGH, Severity.CRITICAL]
|
||||
return order.index(self) < order.index(other)
|
||||
|
||||
def __le__(self, other: "Severity") -> bool:
|
||||
"""Compare severity levels (less than or equal)."""
|
||||
return self == other or self < other
|
||||
|
||||
def __gt__(self, other: "Severity") -> bool:
|
||||
"""Compare severity levels (greater than)."""
|
||||
return not self <= other
|
||||
|
||||
def __ge__(self, other: "Severity") -> bool:
|
||||
"""Compare severity levels (greater than or equal)."""
|
||||
return not self < other
|
||||
|
||||
Reference in New Issue
Block a user