Coverage for src/stable_yield_lab/sources/__init__.py: 93%

12 statements  

« prev     ^ index     » next       coverage.py v7.10.7, created at 2025-10-04 20:38 +0000

1"""Data source adapters used by :mod:`stable_yield_lab`.""" 

2 

3from __future__ import annotations 

4 

5from typing import Protocol 

6 

7from ..core import Pool, STABLE_TOKENS as _STABLE_TOKENS 

8from .base import HistoricalCSVSource 

9from .beefy import BeefySource 

10from .csv import CSVSource 

11from .defillama import DefiLlamaSource 

12from .morpho import MorphoSource 

13 

14 

15class DataSource(Protocol): 

16 """Adapter protocol returning pools compatible with :class:`PoolRepository`.""" 

17 

18 def fetch(self) -> list[Pool]: ... 18 ↛ exitline 18 didn't return from function 'fetch' because

19 

20 

21STABLE_TOKENS = _STABLE_TOKENS 

22 

23__all__ = [ 

24 "DataSource", 

25 "STABLE_TOKENS", 

26 "CSVSource", 

27 "HistoricalCSVSource", 

28 "DefiLlamaSource", 

29 "MorphoSource", 

30 "BeefySource", 

31]