Coverage for src/qdrant_loader/cli/__init__.py: 13%

15 statements  

« prev     ^ index     » next       coverage.py v7.8.2, created at 2025-06-04 05:50 +0000

1""" 

2Command Line Interface package for QDrant Loader. 

3""" 

4 

5 

6# Lazy imports to avoid slow package loading 

7def __getattr__(name): 

8 """Lazy import heavy modules only when accessed.""" 

9 if name == "get_settings": 

10 from qdrant_loader.config import get_settings 

11 

12 return get_settings 

13 elif name == "AsyncIngestionPipeline": 

14 from qdrant_loader.core.async_ingestion_pipeline import AsyncIngestionPipeline 

15 

16 return AsyncIngestionPipeline 

17 elif name == "init_collection": 

18 from qdrant_loader.core.init_collection import init_collection 

19 

20 return init_collection 

21 elif name == "logger": 

22 from qdrant_loader.utils.logging import LoggingConfig 

23 

24 return LoggingConfig.get_logger(__name__) 

25 else: 

26 raise AttributeError(f"module '{__name__}' has no attribute '{name}'") 

27 

28 

29__all__ = ["AsyncIngestionPipeline", "init_collection", "get_settings", "logger"]