diff options
Diffstat (limited to 'googletest/test/googletest-break-on-failure-unittest.py')
-rwxr-xr-x | googletest/test/googletest-break-on-failure-unittest.py | 79 |
1 files changed, 33 insertions, 46 deletions
diff --git a/googletest/test/googletest-break-on-failure-unittest.py b/googletest/test/googletest-break-on-failure-unittest.py index a5dfbc69..e314b5cc 100755 --- a/googletest/test/googletest-break-on-failure-unittest.py +++ b/googletest/test/googletest-break-on-failure-unittest.py @@ -39,7 +39,7 @@ Google Test) with different environments and command line flags. """ import os -import gtest_test_utils +from googletest.test import gtest_test_utils # Constants. @@ -59,7 +59,8 @@ CATCH_EXCEPTIONS_ENV_VAR = 'GTEST_CATCH_EXCEPTIONS' # Path to the googletest-break-on-failure-unittest_ program. EXE_PATH = gtest_test_utils.GetTestExecutablePath( - 'googletest-break-on-failure-unittest_') + 'googletest-break-on-failure-unittest_' +) environ = gtest_test_utils.environ @@ -87,22 +88,26 @@ def Run(command): class GTestBreakOnFailureUnitTest(gtest_test_utils.TestCase): - """Tests using the GTEST_BREAK_ON_FAILURE environment variable or + """Unit test for Google Test's break-on-failure mode. + + Tests using the GTEST_BREAK_ON_FAILURE environment variable or the --gtest_break_on_failure flag to turn assertion failures into segmentation faults. """ def RunAndVerify(self, env_var_value, flag_value, expect_seg_fault): - """Runs googletest-break-on-failure-unittest_ and verifies that it does + """Runs googletest-break-on-failure-unittest_ and verifies its behavior. + + Runs googletest-break-on-failure-unittest_ and verifies that it does (or does not) have a seg-fault. Args: env_var_value: value of the GTEST_BREAK_ON_FAILURE environment - variable; None if the variable should be unset. - flag_value: value of the --gtest_break_on_failure flag; - None if the flag should not be present. - expect_seg_fault: 1 if the program is expected to generate a seg-fault; - 0 otherwise. + variable; None if the variable should be unset. + flag_value: value of the --gtest_break_on_failure flag; None if the + flag should not be present. + expect_seg_fault: 1 if the program is expected to generate a seg-fault; 0 + otherwise. """ SetEnvVar(BREAK_ON_FAILURE_ENV_VAR, env_var_value) @@ -132,74 +137,56 @@ class GTestBreakOnFailureUnitTest(gtest_test_utils.TestCase): SetEnvVar(BREAK_ON_FAILURE_ENV_VAR, None) - msg = ('when %s%s, an assertion failure in "%s" %s cause a seg-fault.' % - (BREAK_ON_FAILURE_ENV_VAR, env_var_value_msg, ' '.join(command), - should_or_not)) - self.assert_(has_seg_fault == expect_seg_fault, msg) + msg = 'when %s%s, an assertion failure in "%s" %s cause a seg-fault.' % ( + BREAK_ON_FAILURE_ENV_VAR, + env_var_value_msg, + ' '.join(command), + should_or_not, + ) + self.assertTrue(has_seg_fault == expect_seg_fault, msg) def testDefaultBehavior(self): """Tests the behavior of the default mode.""" - self.RunAndVerify(env_var_value=None, - flag_value=None, - expect_seg_fault=0) + self.RunAndVerify(env_var_value=None, flag_value=None, expect_seg_fault=0) def testEnvVar(self): """Tests using the GTEST_BREAK_ON_FAILURE environment variable.""" - self.RunAndVerify(env_var_value='0', - flag_value=None, - expect_seg_fault=0) - self.RunAndVerify(env_var_value='1', - flag_value=None, - expect_seg_fault=1) + self.RunAndVerify(env_var_value='0', flag_value=None, expect_seg_fault=0) + self.RunAndVerify(env_var_value='1', flag_value=None, expect_seg_fault=1) def testFlag(self): """Tests using the --gtest_break_on_failure flag.""" - self.RunAndVerify(env_var_value=None, - flag_value='0', - expect_seg_fault=0) - self.RunAndVerify(env_var_value=None, - flag_value='1', - expect_seg_fault=1) + self.RunAndVerify(env_var_value=None, flag_value='0', expect_seg_fault=0) + self.RunAndVerify(env_var_value=None, flag_value='1', expect_seg_fault=1) def testFlagOverridesEnvVar(self): """Tests that the flag overrides the environment variable.""" - self.RunAndVerify(env_var_value='0', - flag_value='0', - expect_seg_fault=0) - self.RunAndVerify(env_var_value='0', - flag_value='1', - expect_seg_fault=1) - self.RunAndVerify(env_var_value='1', - flag_value='0', - expect_seg_fault=0) - self.RunAndVerify(env_var_value='1', - flag_value='1', - expect_seg_fault=1) + self.RunAndVerify(env_var_value='0', flag_value='0', expect_seg_fault=0) + self.RunAndVerify(env_var_value='0', flag_value='1', expect_seg_fault=1) + self.RunAndVerify(env_var_value='1', flag_value='0', expect_seg_fault=0) + self.RunAndVerify(env_var_value='1', flag_value='1', expect_seg_fault=1) def testBreakOnFailureOverridesThrowOnFailure(self): """Tests that gtest_break_on_failure overrides gtest_throw_on_failure.""" SetEnvVar(THROW_ON_FAILURE_ENV_VAR, '1') try: - self.RunAndVerify(env_var_value=None, - flag_value='1', - expect_seg_fault=1) + self.RunAndVerify(env_var_value=None, flag_value='1', expect_seg_fault=1) finally: SetEnvVar(THROW_ON_FAILURE_ENV_VAR, None) if IS_WINDOWS: + def testCatchExceptionsDoesNotInterfere(self): """Tests that gtest_catch_exceptions doesn't interfere.""" SetEnvVar(CATCH_EXCEPTIONS_ENV_VAR, '1') try: - self.RunAndVerify(env_var_value='1', - flag_value='1', - expect_seg_fault=1) + self.RunAndVerify(env_var_value='1', flag_value='1', expect_seg_fault=1) finally: SetEnvVar(CATCH_EXCEPTIONS_ENV_VAR, None) |