Coverage for src/qdrant_loader/cli/commands/config_cmd.py: 0%

17 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-09-08 06:05 +0000

1from __future__ import annotations 

2 

3from pathlib import Path 

4 

5from click.exceptions import ClickException 

6from click.utils import echo 

7 

8from qdrant_loader.cli.commands.config import run_show_config as _run_show_config 

9from qdrant_loader.cli.config_loader import setup_workspace as _setup_workspace_impl 

10from qdrant_loader.utils.logging import LoggingConfig 

11 

12 

13def run_config_command( 

14 workspace: Path | None, log_level: str, config: Path | None, env: Path | None 

15) -> None: 

16 """Implementation for the `config` CLI command.""" 

17 try: 

18 # Maintain test expectation: log via workspace-logger as before 

19 workspace_config = _setup_workspace_impl(workspace) if workspace else None 

20 LoggingConfig.setup( 

21 level=log_level, 

22 format="console", 

23 file=( 

24 str(workspace_config.logs_path) 

25 if workspace_config 

26 else "qdrant-loader.log" 

27 ), 

28 ) 

29 

30 echo("Current Configuration:") 

31 output = _run_show_config(workspace, config, env, log_level) 

32 echo(output) 

33 

34 except Exception as e: 

35 LoggingConfig.get_logger(__name__).error("config_failed", error=str(e)) 

36 raise ClickException(f"Failed to display configuration: {str(e)!s}") from e