Coverage for tests/test_tutorial/test_arguments/test_help/test_tutorial004.py: 100%
24 statements
« prev ^ index » next coverage.py v7.6.1, created at 2025-04-14 00:18 +0000
« prev ^ index » next coverage.py v7.6.1, created at 2025-04-14 00:18 +0000
1import subprocess 1abcdefghi
2import sys 1abcdefghi
4import typer 1abcdefghi
5from typer.testing import CliRunner 1abcdefghi
7from docs_src.arguments.help import tutorial004 as mod 1abcdefghi
9runner = CliRunner() 1abcdefghi
11app = typer.Typer() 1abcdefghi
12app.command()(mod.main) 1abcdefghi
15def test_help(): 1abcdefghi
16 result = runner.invoke(app, ["--help"]) 1abcdefghi
17 assert result.exit_code == 0 1abcdefghi
18 assert "[OPTIONS] [NAME]" in result.output 1abcdefghi
19 assert "Say hi to NAME very gently, like Dirk." in result.output 1abcdefghi
20 assert "Arguments" in result.output 1abcdefghi
21 assert "NAME" in result.output 1abcdefghi
22 assert "Who to greet" in result.output 1abcdefghi
23 assert "[default: World]" not in result.output 1abcdefghi
26def test_call_arg(): 1abcdefghi
27 result = runner.invoke(app, ["Camila"]) 1abcdefghi
28 assert result.exit_code == 0 1abcdefghi
29 assert "Hello Camila" in result.output 1abcdefghi
32def test_script(): 1abcdefghi
33 result = subprocess.run( 1abcdefghi
34 [sys.executable, "-m", "coverage", "run", mod.__file__, "--help"],
35 capture_output=True,
36 encoding="utf-8",
37 )
38 assert "Usage" in result.stdout 1abcdefghi