Coverage for docs_src/options/callback/tutorial003_an.py: 100%
14 statements
« prev ^ index » next coverage.py v7.6.1, created at 2025-12-19 20:29 +0000
« prev ^ index » next coverage.py v7.6.1, created at 2025-12-19 20:29 +0000
1from typing import Optional 1abcdefghi
3import typer 1abcdefghi
4from typing_extensions import Annotated 1abcdefghi
6app = typer.Typer() 1abcdefghi
9def name_callback(ctx: typer.Context, value: str): 1abcdefghi
10 if ctx.resilient_parsing: 1abcdefghi
11 return 1abcdefghi
12 print("Validating name") 1abcdefghi
13 if value != "Camila": 1abcdefghi
14 raise typer.BadParameter("Only Camila is allowed") 1abcdefghi
15 return value 1abcdefghi
18@app.command() 1abcdefghi
19def main(name: Annotated[Optional[str], typer.Option(callback=name_callback)] = None): 1abcdefghi
20 print(f"Hello {name}") 1abcdefghi
23if __name__ == "__main__": 1abcdefghi
24 app() 1abcdefghi