From d404af0d987a9c38cafce82a7e26ec8468c88361 Mon Sep 17 00:00:00 2001 From: Thomas Amland Date: Tue, 19 Jan 2016 14:31:01 +0100 Subject: add python 3 support to tests --- googletest/test/gtest_env_var_test.py | 4 ++-- googletest/test/gtest_filter_unittest.py | 13 ++++++++----- googletest/test/gtest_output_test.py | 2 +- googletest/test/gtest_test_utils.py | 2 +- googletest/test/gtest_throw_on_failure_test.py | 2 +- googletest/test/gtest_uninitialized_test.py | 4 ++-- googletest/test/gtest_xml_output_unittest.py | 3 ++- googletest/test/gtest_xml_test_utils.py | 2 +- 8 files changed, 18 insertions(+), 14 deletions(-) diff --git a/googletest/test/gtest_env_var_test.py b/googletest/test/gtest_env_var_test.py index ac24337..1fc6ebe 100755 --- a/googletest/test/gtest_env_var_test.py +++ b/googletest/test/gtest_env_var_test.py @@ -47,8 +47,8 @@ environ = os.environ.copy() def AssertEq(expected, actual): if expected != actual: - print 'Expected: %s' % (expected,) - print ' Actual: %s' % (actual,) + print('Expected: %s' % (expected,)) + print(' Actual: %s' % (actual,)) raise AssertionError diff --git a/googletest/test/gtest_filter_unittest.py b/googletest/test/gtest_filter_unittest.py index 0d1a770..ec0b151 100755 --- a/googletest/test/gtest_filter_unittest.py +++ b/googletest/test/gtest_filter_unittest.py @@ -44,7 +44,10 @@ __author__ = 'wan@google.com (Zhanyong Wan)' import os import re -import sets +try: + from sets import Set as set # For Python 2.3 compatibility +except ImportError: + pass import sys import gtest_test_utils @@ -58,7 +61,7 @@ import gtest_test_utils # exception is thrown if the input is anything other than 'True' nor 'False'. os.environ['EMPTY_VAR'] = '' child = gtest_test_utils.Subprocess( - [sys.executable, '-c', 'import os; print \'EMPTY_VAR\' in os.environ']) + [sys.executable, '-c', 'import os; print(\'EMPTY_VAR\' in os.environ)']) CAN_PASS_EMPTY_ENV = eval(child.output) @@ -71,7 +74,7 @@ CAN_PASS_EMPTY_ENV = eval(child.output) os.environ['UNSET_VAR'] = 'X' del os.environ['UNSET_VAR'] child = gtest_test_utils.Subprocess( - [sys.executable, '-c', 'import os; print \'UNSET_VAR\' not in os.environ']) + [sys.executable, '-c', 'import os; print(\'UNSET_VAR\' not in os.environ)']) CAN_UNSET_ENV = eval(child.output) @@ -243,14 +246,14 @@ class GTestFilterUnitTest(gtest_test_utils.TestCase): for slice_var in list_of_sets: full_partition.extend(slice_var) self.assertEqual(len(set_var), len(full_partition)) - self.assertEqual(sets.Set(set_var), sets.Set(full_partition)) + self.assertEqual(set(set_var), set(full_partition)) def AdjustForParameterizedTests(self, tests_to_run): """Adjust tests_to_run in case value parameterized tests are disabled.""" global param_tests_present if not param_tests_present: - return list(sets.Set(tests_to_run) - sets.Set(PARAM_TESTS)) + return list(set(tests_to_run) - set(PARAM_TESTS)) else: return tests_to_run diff --git a/googletest/test/gtest_output_test.py b/googletest/test/gtest_output_test.py index d5c637b..06dbee0 100755 --- a/googletest/test/gtest_output_test.py +++ b/googletest/test/gtest_output_test.py @@ -279,7 +279,7 @@ class GTestOutputTest(gtest_test_utils.TestCase): def testOutput(self): output = GetOutputOfAllCommands() - golden_file = open(GOLDEN_PATH, 'rb') + golden_file = open(GOLDEN_PATH, 'r') # A mis-configured source control system can cause \r appear in EOL # sequences when we read the golden file irrespective of an operating # system used. Therefore, we need to strip those \r's from newlines diff --git a/googletest/test/gtest_test_utils.py b/googletest/test/gtest_test_utils.py index 7e3cbca..4acd36c 100755 --- a/googletest/test/gtest_test_utils.py +++ b/googletest/test/gtest_test_utils.py @@ -178,7 +178,7 @@ def GetTestExecutablePath(executable_name, build_dir=None): 'Unable to find the test binary "%s". Please make sure to provide\n' 'a path to the binary via the --build_dir flag or the BUILD_DIR\n' 'environment variable.' % path) - print >> sys.stderr, message + sys.stdout.write(message) sys.exit(1) return path diff --git a/googletest/test/gtest_throw_on_failure_test.py b/googletest/test/gtest_throw_on_failure_test.py index 5678ffe..3e7740c 100755 --- a/googletest/test/gtest_throw_on_failure_test.py +++ b/googletest/test/gtest_throw_on_failure_test.py @@ -70,7 +70,7 @@ def SetEnvVar(env_var, value): def Run(command): """Runs a command; returns True/False if its exit code is/isn't 0.""" - print 'Running "%s". . .' % ' '.join(command) + print('Running "%s". . .' % ' '.join(command)) p = gtest_test_utils.Subprocess(command) return p.exited and p.exit_code == 0 diff --git a/googletest/test/gtest_uninitialized_test.py b/googletest/test/gtest_uninitialized_test.py index 6ae57ee..4358370 100755 --- a/googletest/test/gtest_uninitialized_test.py +++ b/googletest/test/gtest_uninitialized_test.py @@ -46,8 +46,8 @@ def Assert(condition): def AssertEq(expected, actual): if expected != actual: - print 'Expected: %s' % (expected,) - print ' Actual: %s' % (actual,) + print('Expected: %s' % (expected,)) + print(' Actual: %s' % (actual,)) raise AssertionError diff --git a/googletest/test/gtest_xml_output_unittest.py b/googletest/test/gtest_xml_output_unittest.py index f605d4e..e77be3d 100755 --- a/googletest/test/gtest_xml_output_unittest.py +++ b/googletest/test/gtest_xml_output_unittest.py @@ -209,7 +209,8 @@ class GTestXMLOutputUnitTest(gtest_xml_test_utils.GTestXMLTestCase): 'gtest_no_test_unittest') try: os.remove(output_file) - except OSError, e: + except OSError: + e = sys.exc_info()[1] if e.errno != errno.ENOENT: raise diff --git a/googletest/test/gtest_xml_test_utils.py b/googletest/test/gtest_xml_test_utils.py index 3d0c3b2..341956b 100755 --- a/googletest/test/gtest_xml_test_utils.py +++ b/googletest/test/gtest_xml_test_utils.py @@ -101,7 +101,7 @@ class GTestXMLTestCase(gtest_test_utils.TestCase): self.assertEquals( len(expected_children), len(actual_children), 'number of child elements differ in element ' + actual_node.tagName) - for child_id, child in expected_children.iteritems(): + for child_id, child in expected_children.items(): self.assert_(child_id in actual_children, '<%s> is not in <%s> (in element %s)' % (child_id, actual_children, actual_node.tagName)) -- cgit v0.12 From 456fc2b5c4e9ebf05a5987dfe1ff0ac9ffeb53cc Mon Sep 17 00:00:00 2001 From: Thomas Amland Date: Tue, 19 Jan 2016 14:31:34 +0100 Subject: add python 3 support to fuse_gtest_files script --- googletest/scripts/fuse_gtest_files.py | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/googletest/scripts/fuse_gtest_files.py b/googletest/scripts/fuse_gtest_files.py index 57ef72f..3f3e9f3 100755 --- a/googletest/scripts/fuse_gtest_files.py +++ b/googletest/scripts/fuse_gtest_files.py @@ -60,7 +60,10 @@ __author__ = 'wan@google.com (Zhanyong Wan)' import os import re -import sets +try: + from sets import Set as set # For Python 2.3 compatibility +except ImportError: + pass import sys # We assume that this file is in the scripts/ directory in the Google @@ -90,10 +93,10 @@ def VerifyFileExists(directory, relative_path): """ if not os.path.isfile(os.path.join(directory, relative_path)): - print 'ERROR: Cannot find %s in directory %s.' % (relative_path, - directory) - print ('Please either specify a valid project root directory ' - 'or omit it on the command line.') + print('ERROR: Cannot find %s in directory %s.' % (relative_path, + directory)) + print('Please either specify a valid project root directory ' + 'or omit it on the command line.') sys.exit(1) @@ -119,11 +122,11 @@ def VerifyOutputFile(output_dir, relative_path): # TODO(wan@google.com): The following user-interaction doesn't # work with automated processes. We should provide a way for the # Makefile to force overwriting the files. - print ('%s already exists in directory %s - overwrite it? (y/N) ' % - (relative_path, output_dir)) + print('%s already exists in directory %s - overwrite it? (y/N) ' % + (relative_path, output_dir)) answer = sys.stdin.readline().strip() if answer not in ['y', 'Y']: - print 'ABORTED.' + print('ABORTED.') sys.exit(1) # Makes sure the directory holding the output file exists; creates @@ -146,8 +149,8 @@ def ValidateOutputDir(output_dir): def FuseGTestH(gtest_root, output_dir): """Scans folder gtest_root to generate gtest/gtest.h in output_dir.""" - output_file = file(os.path.join(output_dir, GTEST_H_OUTPUT), 'w') - processed_files = sets.Set() # Holds all gtest headers we've processed. + output_file = open(os.path.join(output_dir, GTEST_H_OUTPUT), 'w') + processed_files = set() # Holds all gtest headers we've processed. def ProcessFile(gtest_header_path): """Processes the given gtest header file.""" @@ -159,7 +162,7 @@ def FuseGTestH(gtest_root, output_dir): processed_files.add(gtest_header_path) # Reads each line in the given gtest header. - for line in file(os.path.join(gtest_root, gtest_header_path), 'r'): + for line in open(os.path.join(gtest_root, gtest_header_path), 'r'): m = INCLUDE_GTEST_FILE_REGEX.match(line) if m: # It's '#include "gtest/..."' - let's process it recursively. @@ -175,7 +178,7 @@ def FuseGTestH(gtest_root, output_dir): def FuseGTestAllCcToFile(gtest_root, output_file): """Scans folder gtest_root to generate gtest/gtest-all.cc in output_file.""" - processed_files = sets.Set() + processed_files = set() def ProcessFile(gtest_source_file): """Processes the given gtest source file.""" @@ -187,7 +190,7 @@ def FuseGTestAllCcToFile(gtest_root, output_file): processed_files.add(gtest_source_file) # Reads each line in the given gtest source file. - for line in file(os.path.join(gtest_root, gtest_source_file), 'r'): + for line in open(os.path.join(gtest_root, gtest_source_file), 'r'): m = INCLUDE_GTEST_FILE_REGEX.match(line) if m: if 'include/' + m.group(1) == GTEST_SPI_H_SEED: @@ -218,7 +221,7 @@ def FuseGTestAllCcToFile(gtest_root, output_file): def FuseGTestAllCc(gtest_root, output_dir): """Scans folder gtest_root to generate gtest/gtest-all.cc in output_dir.""" - output_file = file(os.path.join(output_dir, GTEST_ALL_CC_OUTPUT), 'w') + output_file = open(os.path.join(output_dir, GTEST_ALL_CC_OUTPUT), 'w') FuseGTestAllCcToFile(gtest_root, output_file) output_file.close() @@ -242,7 +245,7 @@ def main(): # fuse_gtest_files.py GTEST_ROOT_DIR OUTPUT_DIR FuseGTest(sys.argv[1], sys.argv[2]) else: - print __doc__ + print(__doc__) sys.exit(1) -- cgit v0.12