Coverage for docs_src / options / version / tutorial002_py310.py: 100%

14 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-02-09 12:36 +0000

1import typer 1abcdefg

2 

3__version__ = "0.1.0" 1abcdefg

4 

5app = typer.Typer() 1abcdefg

6 

7 

8def version_callback(value: bool): 1abcdefg

9 if value: 1abcdefg

10 print(f"Awesome CLI Version: {__version__}") 1abcdefg

11 raise typer.Exit() 1abcdefg

12 

13 

14def name_callback(name: str): 1abcdefg

15 if name != "Camila": 1abcdefg

16 raise typer.BadParameter("Only Camila is allowed") 1abcdefg

17 return name 1abcdefg

18 

19 

20@app.command() 1abcdefg

21def main( 1abcdefg

22 name: str = typer.Option(..., callback=name_callback), 

23 version: bool | None = typer.Option(None, "--version", callback=version_callback), 

24): 

25 print(f"Hello {name}") 1abcdefg

26 

27 

28if __name__ == "__main__": 1abcdefg

29 app() 1abcdefg