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

1"""Base exception shared across data science errors.""" 

2 

3from __future__ import annotations 

4 

5from ..base import DataExceptError 

6 

7 

8class DataScienceError(DataExceptError): 

9 """Base exception for data science errors.""" 

10 

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) 

17 

18 def __str__(self) -> str: 

19 return f"[DataScienceError] {self.message}"