Commit 11ea0449 authored by Victor Stinner's avatar Victor Stinner

Issue #18401: Fix test_pdb if $HOME is not set

HOME is not set on Windows for example.

Use also textwrap.dedent() for the script.
parent 2eb6eca3
...@@ -1057,14 +1057,17 @@ class PdbTestCase(unittest.TestCase): ...@@ -1057,14 +1057,17 @@ class PdbTestCase(unittest.TestCase):
def test_readrc_kwarg(self): def test_readrc_kwarg(self):
save_home = os.environ['HOME'] save_home = os.environ.get('HOME', None)
save_dir = os.getcwd() save_dir = os.getcwd()
script = """import pdb; pdb.Pdb(readrc=False).set_trace() script = textwrap.dedent("""
import pdb; pdb.Pdb(readrc=False).set_trace()
print('hello') print('hello')
""" """)
del os.environ['HOME']
try: try:
if save_home is not None:
del os.environ['HOME']
with tempfile.TemporaryDirectory() as dirname: with tempfile.TemporaryDirectory() as dirname:
os.chdir(dirname) os.chdir(dirname)
with open('.pdbrc', 'w') as f: with open('.pdbrc', 'w') as f:
...@@ -1087,7 +1090,8 @@ print('hello') ...@@ -1087,7 +1090,8 @@ print('hello')
stdout.decode()) stdout.decode())
finally: finally:
os.environ['HOME'] = save_home if save_home is not None:
os.environ['HOME'] = save_home
os.chdir(save_dir) os.chdir(save_dir)
def tearDown(self): def tearDown(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment