gh-108791: Fix pdb CLI invalid argument handling (#108816)

This commit is contained in:
Radislav Chugunov 2023-10-16 12:38:07 +03:00 committed by GitHub
parent b75186f69e
commit 162213f2db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 24 additions and 2 deletions

View file

@ -2820,8 +2820,7 @@ def bœr():
stdout, stderr = self._run_pdb(
['-m', module_name], "", expected_returncode=1
)
self.assertIn("ImportError: No module named t_main.__main__",
stdout.splitlines())
self.assertIn("ImportError: No module named t_main.__main__;", stdout)
def test_package_without_a_main(self):
pkg_name = 't_pkg'
@ -2839,6 +2838,22 @@ def bœr():
"'t_pkg.t_main' is a package and cannot be directly executed",
stdout)
def test_nonexistent_module(self):
assert not os.path.exists(os_helper.TESTFN)
stdout, stderr = self._run_pdb(["-m", os_helper.TESTFN], "", expected_returncode=1)
self.assertIn(f"ImportError: No module named {os_helper.TESTFN}", stdout)
def test_dir_as_script(self):
with os_helper.temp_dir() as temp_dir:
stdout, stderr = self._run_pdb([temp_dir], "", expected_returncode=1)
self.assertIn(f"Error: {temp_dir} is a directory", stdout)
def test_invalid_cmd_line_options(self):
stdout, stderr = self._run_pdb(["-c"], "", expected_returncode=2)
self.assertIn(f"pdb: error: argument -c/--command: expected one argument", stdout.split('\n')[1])
stdout, stderr = self._run_pdb(["--spam", "-m", "pdb"], "", expected_returncode=2)
self.assertIn(f"pdb: error: unrecognized arguments: --spam", stdout.split('\n')[1])
def test_blocks_at_first_code_line(self):
script = """
#This is a comment, on line 2