diff options
author | Mario Corchero <mariocj89@gmail.com> | 2018-11-05 12:03:46 (GMT) |
---|---|---|
committer | Nick Coghlan <ncoghlan@gmail.com> | 2018-11-05 12:03:46 (GMT) |
commit | ad1a25f499362eaf9cbfcafa0b8e2454eb43dcf1 (patch) | |
tree | 2d5abe6b5b1f3bf01254dce0d1504930072a3d9b /Lib/test/test_profile.py | |
parent | 2810dd7be9876236f74ac80716d113572c9098dd (diff) | |
download | cpython-ad1a25f499362eaf9cbfcafa0b8e2454eb43dcf1.zip cpython-ad1a25f499362eaf9cbfcafa0b8e2454eb43dcf1.tar.gz cpython-ad1a25f499362eaf9cbfcafa0b8e2454eb43dcf1.tar.bz2 |
bpo-32512: Add -m option to profile for profiling modules (#5132)
The new option in the CLI of the profile module allow to profile
executable modules. This change follows the same implementation as the
one already present in `cProfile`.
As the argument is now present on both modules, move the tests to the
common test case to be run with profile as well.
Diffstat (limited to 'Lib/test/test_profile.py')
-rw-r--r-- | Lib/test/test_profile.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Lib/test/test_profile.py b/Lib/test/test_profile.py index a998266..01a8a6e 100644 --- a/Lib/test/test_profile.py +++ b/Lib/test/test_profile.py @@ -11,6 +11,7 @@ from contextlib import contextmanager import profile from test.profilee import testfunc, timer +from test.support.script_helper import assert_python_failure, assert_python_ok class ProfileTest(unittest.TestCase): @@ -98,6 +99,18 @@ class ProfileTest(unittest.TestCase): filename=TESTFN) self.assertTrue(os.path.exists(TESTFN)) + def test_run_profile_as_module(self): + # Test that -m switch needs an argument + assert_python_failure('-m', self.profilermodule.__name__, '-m') + + # Test failure for not-existent module + assert_python_failure('-m', self.profilermodule.__name__, + '-m', 'random_module_xyz') + + # Test successful run + assert_python_ok('-m', self.profilermodule.__name__, + '-m', 'timeit', '-n', '1') + def regenerate_expected_output(filename, cls): filename = filename.rstrip('co') |