Coverage for dataexcept/datascience_exceptions/base.py: 100%
10 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-09-03 20:46 +0000
« prev ^ index » next coverage.py v7.15.4, created at 2026-09-03 20:46 +0000
1"""Base exception shared across data science errors."""
3from __future__ import annotations
5from ..base import DataExceptError
8class DataScienceError(DataExceptError):
9 """Base exception for data science errors."""
11 def __init__(self, message: str) -> None:
12 # Ensure message is a string
13 if not isinstance(message, str):
14 raise TypeError(f"message must be str, got {type(message).__name__}")
15 self.message = message
16 super().__init__(message)
18 def __str__(self) -> str:
19 return f"[DataScienceError] {self.message}"