Coverage for docs_src / options / callback / tutorial002_an_py39.py: 100%

11 statements  

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

1from typing import Annotated, Optional 1abcdefgh

2 

3import typer 1abcdefgh

4 

5app = typer.Typer() 1abcdefgh

6 

7 

8def name_callback(value: str): 1abcdefgh

9 print("Validating name") 1abcdefgh

10 if value != "Camila": 1abcdefgh

11 raise typer.BadParameter("Only Camila is allowed") 1abcdefgh

12 return value 1abcdefgh

13 

14 

15@app.command() 1abcdefgh

16def main(name: Annotated[Optional[str], typer.Option(callback=name_callback)] = None): 1abcdefgh

17 print(f"Hello {name}") 1abcdefgh

18 

19 

20if __name__ == "__main__": 1abcdefgh

21 app() 1abcdefgh