Coverage for tests/test_tutorial/test_options_autocompletion/test_tutorial007.py: 100%

19 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2025-04-14 00:18 +0000

1import os 1abcdefghi

2import subprocess 1abcdefghi

3import sys 1abcdefghi

4 

5from typer.testing import CliRunner 1abcdefghi

6 

7from docs_src.options_autocompletion import tutorial007 as mod 1abcdefghi

8 

9runner = CliRunner() 1abcdefghi

10 

11 

12def test_completion(): 1abcdefghi

13 result = subprocess.run( 1abcdefghi

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

15 capture_output=True, 

16 encoding="utf-8", 

17 env={ 

18 **os.environ, 

19 "_TUTORIAL007.PY_COMPLETE": "complete_zsh", 

20 "_TYPER_COMPLETE_ARGS": "tutorial007.py --name Sebastian --name ", 

21 }, 

22 ) 

23 assert '"Camila":"The reader of books."' in result.stdout 1abcdefghi

24 assert '"Carlos":"The writer of scripts."' in result.stdout 1abcdefghi

25 assert '"Sebastian":"The type hints guy."' not in result.stdout 1abcdefghi

26 

27 

28def test_1(): 1abcdefghi

29 result = runner.invoke(mod.app, ["--name", "Camila", "--name", "Sebastian"]) 1abcdefghi

30 assert result.exit_code == 0 1abcdefghi

31 assert "Hello Camila" in result.output 1abcdefghi

32 assert "Hello Sebastian" in result.output 1abcdefghi

33 

34 

35def test_script(): 1abcdefghi

36 result = subprocess.run( 1abcdefghi

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

38 capture_output=True, 

39 encoding="utf-8", 

40 ) 

41 assert "Usage" in result.stdout 1abcdefghi