Coverage for tests/test_tutorial/test_commands/test_help/test_tutorial005_an.py: 100%
41 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 os 1abcdefgh
2import subprocess 1abcdefgh
3import sys 1abcdefgh
5from typer.testing import CliRunner 1abcdefgh
7from docs_src.commands.help import tutorial005_an as mod 1abcdefgh
9app = mod.app 1abcdefgh
11runner = CliRunner() 1abcdefgh
14def test_help(): 1abcdefgh
15 result = runner.invoke(app, ["--help"]) 1abcdefgh
16 assert result.exit_code == 0 1abcdefgh
17 assert "create" in result.output 1abcdefgh
18 assert "Create a new shinny user. ✨" in result.output 1abcdefgh
19 assert "delete" in result.output 1abcdefgh
20 assert "Delete a user with USERNAME." in result.output 1abcdefgh
21 assert "Some internal utility function to create." not in result.output 1abcdefgh
22 assert "Some internal utility function to delete." not in result.output 1abcdefgh
25def test_help_create(): 1abcdefgh
26 result = runner.invoke(app, ["create", "--help"]) 1abcdefgh
27 assert result.exit_code == 0 1abcdefgh
28 assert "Create a new shinny user. ✨" in result.output 1abcdefgh
29 assert "The username to be created" in result.output 1abcdefgh
30 assert "Learn more at the Typer docs website" in result.output 1abcdefgh
31 assert "Some internal utility function to create." not in result.output 1abcdefgh
34def test_help_delete(): 1abcdefgh
35 result = runner.invoke(app, ["delete", "--help"]) 1abcdefgh
36 assert result.exit_code == 0 1abcdefgh
37 assert "Delete a user with USERNAME." in result.output 1abcdefgh
38 assert "The username to be deleted" in result.output 1abcdefgh
39 assert "Force the deletion 💥" in result.output 1abcdefgh
40 assert "Some internal utility function to delete." not in result.output 1abcdefgh
43def test_create(): 1abcdefgh
44 result = runner.invoke(app, ["create", "Camila"]) 1abcdefgh
45 assert result.exit_code == 0 1abcdefgh
46 assert "Creating user: Camila" in result.output 1abcdefgh
49def test_delete(): 1abcdefgh
50 result = runner.invoke(app, ["delete", "Camila"]) 1abcdefgh
51 assert result.exit_code == 0 1abcdefgh
52 assert "Deleting user: Camila" in result.output 1abcdefgh
55def test_script(): 1abcdefgh
56 result = subprocess.run( 1abcdefgh
57 [sys.executable, "-m", "coverage", "run", mod.__file__, "--help"],
58 capture_output=True,
59 encoding="utf-8",
60 env={**os.environ, "PYTHONIOENCODING": "utf-8"},
61 )
62 assert "Usage" in result.stdout 1abcdefgh