Coverage for tests/test_exit_errors.py: 100%
36 statements
« prev ^ index » next coverage.py v7.6.1, created at 2025-12-19 20:29 +0000
« prev ^ index » next coverage.py v7.6.1, created at 2025-12-19 20:29 +0000
1import errno 1abcdefghi
3import typer 1abcdefghi
4import typer.completion 1abcdefghi
5from typer.testing import CliRunner 1abcdefghi
7runner = CliRunner() 1abcdefghi
10def test_eoferror(): 1abcdefghi
11 # Mainly for coverage/completeness
12 app = typer.Typer() 1abcdefghi
14 @app.command() 1abcdefghi
15 def main(): 1abcdefghi
16 raise EOFError() 1abcdefghi
18 result = runner.invoke(app) 1abcdefghi
19 assert result.exit_code == 1 1abcdefghi
22def test_keyboardinterrupt(): 1abcdefghi
23 # Mainly for coverage/completeness
24 app = typer.Typer() 1abcdefghi
26 @app.command() 1abcdefghi
27 def main(): 1abcdefghi
28 raise KeyboardInterrupt() 1abcdefghi
30 result = runner.invoke(app) 1abcdefghi
31 assert result.exit_code == 130 1abcdefghi
32 assert result.stdout == "" 1abcdefghi
35def test_oserror(): 1abcdefghi
36 # Mainly for coverage/completeness
37 app = typer.Typer() 1abcdefghi
39 @app.command() 1abcdefghi
40 def main(): 1abcdefghi
41 e = OSError() 1abcdefghi
42 e.errno = errno.EPIPE 1abcdefghi
43 raise e 1abcdefghi
45 result = runner.invoke(app) 1abcdefghi
46 assert result.exit_code == 1 1abcdefghi
49def test_oserror_no_epipe(): 1abcdefghi
50 # Mainly for coverage/completeness
51 app = typer.Typer() 1abcdefghi
53 @app.command() 1abcdefghi
54 def main(): 1abcdefghi
55 raise OSError() 1abcdefghi
57 result = runner.invoke(app) 1abcdefghi
58 assert result.exit_code == 1 1abcdefghi