mirror of
https://github.com/python/cpython.git
synced 2026-01-05 23:12:38 +00:00
gh-136438: Make sure test_remote_pdb pass with all optimization levels (GH-136788)
This commit is contained in:
parent
6be49ee517
commit
588d9fb84a
1 changed files with 33 additions and 20 deletions
|
|
@ -11,7 +11,7 @@
|
|||
import unittest
|
||||
import unittest.mock
|
||||
from contextlib import closing, contextmanager, redirect_stdout, redirect_stderr, ExitStack
|
||||
from test.support import is_wasi, cpython_only, force_color, requires_subprocess, SHORT_TIMEOUT
|
||||
from test.support import is_wasi, cpython_only, force_color, requires_subprocess, SHORT_TIMEOUT, subTests
|
||||
from test.support.os_helper import TESTFN, unlink
|
||||
from typing import List
|
||||
|
||||
|
|
@ -279,37 +279,50 @@ def test_handling_other_message(self):
|
|||
expected_stdout="Some message.\n",
|
||||
)
|
||||
|
||||
def test_handling_help_for_command(self):
|
||||
"""Test handling a request to display help for a command."""
|
||||
@unittest.skipIf(sys.flags.optimize >= 2, "Help not available for -OO")
|
||||
@subTests(
|
||||
"help_request,expected_substring",
|
||||
[
|
||||
# a request to display help for a command
|
||||
({"help": "ll"}, "Usage: ll | longlist"),
|
||||
# a request to display a help overview
|
||||
({"help": ""}, "type help <topic>"),
|
||||
# a request to display the full PDB manual
|
||||
({"help": "pdb"}, ">>> import pdb"),
|
||||
],
|
||||
)
|
||||
def test_handling_help_when_available(self, help_request, expected_substring):
|
||||
"""Test handling help requests when help is available."""
|
||||
incoming = [
|
||||
("server", {"help": "ll"}),
|
||||
("server", help_request),
|
||||
]
|
||||
self.do_test(
|
||||
incoming=incoming,
|
||||
expected_outgoing=[],
|
||||
expected_stdout_substring="Usage: ll | longlist",
|
||||
expected_stdout_substring=expected_substring,
|
||||
)
|
||||
|
||||
def test_handling_help_without_a_specific_topic(self):
|
||||
"""Test handling a request to display a help overview."""
|
||||
@unittest.skipIf(sys.flags.optimize < 2, "Needs -OO")
|
||||
@subTests(
|
||||
"help_request,expected_substring",
|
||||
[
|
||||
# a request to display help for a command
|
||||
({"help": "ll"}, "No help for 'll'"),
|
||||
# a request to display a help overview
|
||||
({"help": ""}, "Undocumented commands"),
|
||||
# a request to display the full PDB manual
|
||||
({"help": "pdb"}, "No help for 'pdb'"),
|
||||
],
|
||||
)
|
||||
def test_handling_help_when_not_available(self, help_request, expected_substring):
|
||||
"""Test handling help requests when help is not available."""
|
||||
incoming = [
|
||||
("server", {"help": ""}),
|
||||
("server", help_request),
|
||||
]
|
||||
self.do_test(
|
||||
incoming=incoming,
|
||||
expected_outgoing=[],
|
||||
expected_stdout_substring="type help <topic>",
|
||||
)
|
||||
|
||||
def test_handling_help_pdb(self):
|
||||
"""Test handling a request to display the full PDB manual."""
|
||||
incoming = [
|
||||
("server", {"help": "pdb"}),
|
||||
]
|
||||
self.do_test(
|
||||
incoming=incoming,
|
||||
expected_outgoing=[],
|
||||
expected_stdout_substring=">>> import pdb",
|
||||
expected_stdout_substring=expected_substring,
|
||||
)
|
||||
|
||||
def test_handling_pdb_prompts(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue