Coverage for docs_src/parameter_types/path/tutorial001_an.py: 100%

17 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2025-12-19 20:29 +0000

1from pathlib import Path 1abcdefghi

2from typing import Optional 1abcdefghi

3 

4import typer 1abcdefghi

5from typing_extensions import Annotated 1abcdefghi

6 

7app = typer.Typer() 1abcdefghi

8 

9 

10@app.command() 1abcdefghi

11def main(config: Annotated[Optional[Path], typer.Option()] = None): 1abcdefghi

12 if config is None: 1abcdefghi

13 print("No config file") 1abcdefghi

14 raise typer.Abort() 1abcdefghi

15 if config.is_file(): 1abcdefghi

16 text = config.read_text() 1abcdefghi

17 print(f"Config file contents: {text}") 1abcdefghi

18 elif config.is_dir(): 1abcdefghi

19 print("Config is a directory, will use all its config files") 1abcdefghi

20 elif not config.exists(): 1abcdefghi

21 print("The config doesn't exist") 1abcdefghi

22 

23 

24if __name__ == "__main__": 1abcdefghi

25 app() 1abcdefghi