Coverage for tests/test_tutorial/test_commands/test_help/test_tutorial002.py: 100%

36 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2025-03-10 00:15 +0000

1import subprocess 1abcdefghi

2import sys 1abcdefghi

3 

4from typer.testing import CliRunner 1abcdefghi

5 

6from docs_src.commands.help import tutorial002 as mod 1abcdefghi

7 

8app = mod.app 1abcdefghi

9 

10runner = CliRunner() 1abcdefghi

11 

12 

13def test_help(): 1abcdefghi

14 result = runner.invoke(app, ["--help"]) 1abcdefghi

15 assert result.exit_code == 0 1abcdefghi

16 assert "create" in result.output 1abcdefghi

17 assert "Create a new user with USERNAME." in result.output 1abcdefghi

18 assert "delete" in result.output 1abcdefghi

19 assert "Delete a user with USERNAME." in result.output 1abcdefghi

20 assert "Some internal utility function to create." not in result.output 1abcdefghi

21 assert "Some internal utility function to delete." not in result.output 1abcdefghi

22 

23 

24def test_help_create(): 1abcdefghi

25 result = runner.invoke(app, ["create", "--help"]) 1abcdefghi

26 assert result.exit_code == 0 1abcdefghi

27 assert "Create a new user with USERNAME." in result.output 1abcdefghi

28 assert "Some internal utility function to create." not in result.output 1abcdefghi

29 

30 

31def test_help_delete(): 1abcdefghi

32 result = runner.invoke(app, ["delete", "--help"]) 1abcdefghi

33 assert result.exit_code == 0 1abcdefghi

34 assert "Delete a user with USERNAME." in result.output 1abcdefghi

35 assert "Some internal utility function to delete." not in result.output 1abcdefghi

36 

37 

38def test_create(): 1abcdefghi

39 result = runner.invoke(app, ["create", "Camila"]) 1abcdefghi

40 assert result.exit_code == 0 1abcdefghi

41 assert "Creating user: Camila" in result.output 1abcdefghi

42 

43 

44def test_delete(): 1abcdefghi

45 result = runner.invoke(app, ["delete", "Camila"]) 1abcdefghi

46 assert result.exit_code == 0 1abcdefghi

47 assert "Deleting user: Camila" in result.output 1abcdefghi

48 

49 

50def test_script(): 1abcdefghi

51 result = subprocess.run( 1abcdefghi

52 [sys.executable, "-m", "coverage", "run", mod.__file__, "--help"], 

53 capture_output=True, 

54 encoding="utf-8", 

55 ) 

56 assert "Usage" in result.stdout 1abcdefghi