Coverage for tests / test_tutorial / test_app_dir / test_tutorial001.py: 100%

18 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-11-09 00:15 +0000

1import subprocess 1abcdefg

2import sys 1abcdefg

3from pathlib import Path 1abcdefg

4 

5from typer.testing import CliRunner 1abcdefg

6 

7from docs_src.app_dir import tutorial001_py310 as mod 1abcdefg

8 

9runner = CliRunner() 1abcdefg

10 

11 

12def test_cli_config_doesnt_exist(app_dir: Path): 1abcdefg

13 result = runner.invoke(mod.app) 1abcdefg

14 assert result.exit_code == 0 1abcdefg

15 assert "Config file doesn't exist yet" in result.output 1abcdefg

16 

17 

18def test_cli_config_exists(app_dir: Path): 1abcdefg

19 (app_dir / "config.json").touch() 1abcdefg

20 result = runner.invoke(mod.app) 1abcdefg

21 assert result.exit_code == 0 1abcdefg

22 assert "Config file doesn't exist yet" not in result.output 1abcdefg

23 

24 

25def test_script(): 1abcdefg

26 result = subprocess.run( 1abcdefg

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

28 capture_output=True, 

29 encoding="utf-8", 

30 ) 

31 assert "Usage" in result.stdout 1abcdefg