Coverage for tests/test_tutorial/test_options/test_help/test_tutorial001.py: 100%
30 statements
« prev ^ index » next coverage.py v7.6.1, created at 2024-09-09 18:26 +0000
« prev ^ index » next coverage.py v7.6.1, created at 2024-09-09 18:26 +0000
1import subprocess 1abcdefgh
2import sys 1abcdefgh
4import typer 1abcdefgh
5from typer.testing import CliRunner 1abcdefgh
7from docs_src.options.help import tutorial001 as mod 1abcdefgh
9runner = CliRunner() 1abcdefgh
11app = typer.Typer() 1abcdefgh
12app.command()(mod.main) 1abcdefgh
15def test_help(): 1abcdefgh
16 result = runner.invoke(app, ["--help"]) 1abcdefgh
17 assert result.exit_code == 0 1abcdefgh
18 assert "Say hi to NAME, optionally with a --lastname." in result.output 1abcdefgh
19 assert "If --formal is used, say hi very formally." in result.output 1abcdefgh
20 assert "Last name of person to greet." in result.output 1abcdefgh
21 assert "Say hi formally." in result.output 1abcdefgh
24def test_1(): 1abcdefgh
25 result = runner.invoke(app, ["Camila"]) 1abcdefgh
26 assert result.exit_code == 0 1abcdefgh
27 assert "Hello Camila" in result.output 1abcdefgh
30def test_option_lastname(): 1abcdefgh
31 result = runner.invoke(app, ["Camila", "--lastname", "Gutiérrez"]) 1abcdefgh
32 assert result.exit_code == 0 1abcdefgh
33 assert "Hello Camila Gutiérrez" in result.output 1abcdefgh
36def test_formal(): 1abcdefgh
37 result = runner.invoke(app, ["Camila", "--lastname", "Gutiérrez", "--formal"]) 1abcdefgh
38 assert result.exit_code == 0 1abcdefgh
39 assert "Good day Ms. Camila Gutiérrez." in result.output 1abcdefgh
42def test_script(): 1abcdefgh
43 result = subprocess.run( 1abcdefgh
44 [sys.executable, "-m", "coverage", "run", mod.__file__, "--help"],
45 capture_output=True,
46 encoding="utf-8",
47 )
48 assert "Usage" in result.stdout 1abcdefgh