Issue #17206: Fix test_cmd_line and test_faulthandler for my previous change

(test.regrtest and test.script_helper enable faulthandler module in
subprocesses).
This commit is contained in:
Victor Stinner 2013-06-25 21:54:17 +02:00
parent 383a820e0d
commit ef8115e5eb
2 changed files with 17 additions and 8 deletions

View File

@ -54,12 +54,19 @@ class CmdLineTest(unittest.TestCase):
self.assertNotIn(b'stack overflow', err)
def test_xoptions(self):
rc, out, err = assert_python_ok('-c', 'import sys; print(sys._xoptions)')
opts = eval(out.splitlines()[0])
def get_xoptions(*args):
# use subprocess module directly because test.script_helper adds
# "-X faulthandler" to the command line
args = (sys.executable, '-E') + args
args += ('-c', 'import sys; print(sys._xoptions)')
out = subprocess.check_output(args)
opts = eval(out.splitlines()[0])
return opts
opts = get_xoptions()
self.assertEqual(opts, {})
rc, out, err = assert_python_ok(
'-Xa', '-Xb=c,d=e', '-c', 'import sys; print(sys._xoptions)')
opts = eval(out.splitlines()[0])
opts = get_xoptions('-Xa', '-Xb=c,d=e')
self.assertEqual(opts, {'a': True, 'b': 'c,d=e'})
def test_showrefcount(self):

View File

@ -262,9 +262,11 @@ faulthandler._sigsegv()
def test_disabled_by_default(self):
# By default, the module should be disabled
code = "import faulthandler; print(faulthandler.is_enabled())"
rc, stdout, stderr = assert_python_ok("-c", code)
stdout = (stdout + stderr).strip()
self.assertEqual(stdout, b"False")
args = (sys.executable, '-E', '-c', code)
# use subprocess module directly because test.script_helper adds
# "-X faulthandler" to the command line
stdout = subprocess.check_output(args)
self.assertEqual(stdout.rstrip(), b"False")
def test_sys_xoptions(self):
# Test python -X faulthandler