@@ -60,7 +60,10 @@ __author__ = 'wan@google.com (Zhanyong Wan)'
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import os
 | 
					import os
 | 
				
			||||||
import re
 | 
					import re
 | 
				
			||||||
import sets
 | 
					try:
 | 
				
			||||||
 | 
					  from sets import Set as set  # For Python 2.3 compatibility
 | 
				
			||||||
 | 
					except ImportError:
 | 
				
			||||||
 | 
					  pass
 | 
				
			||||||
import sys
 | 
					import sys
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# We assume that this file is in the scripts/ directory in the Google
 | 
					# We assume that this file is in the scripts/ directory in the Google
 | 
				
			||||||
@@ -90,8 +93,8 @@ def VerifyFileExists(directory, relative_path):
 | 
				
			|||||||
  """
 | 
					  """
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if not os.path.isfile(os.path.join(directory, relative_path)):
 | 
					  if not os.path.isfile(os.path.join(directory, relative_path)):
 | 
				
			||||||
    print 'ERROR: Cannot find %s in directory %s.' % (relative_path,
 | 
					    print('ERROR: Cannot find %s in directory %s.' % (relative_path,
 | 
				
			||||||
                                                      directory)
 | 
					                                                      directory))
 | 
				
			||||||
    print('Please either specify a valid project root directory '
 | 
					    print('Please either specify a valid project root directory '
 | 
				
			||||||
          'or omit it on the command line.')
 | 
					          'or omit it on the command line.')
 | 
				
			||||||
    sys.exit(1)
 | 
					    sys.exit(1)
 | 
				
			||||||
@@ -123,7 +126,7 @@ def VerifyOutputFile(output_dir, relative_path):
 | 
				
			|||||||
          (relative_path, output_dir))
 | 
					          (relative_path, output_dir))
 | 
				
			||||||
    answer = sys.stdin.readline().strip()
 | 
					    answer = sys.stdin.readline().strip()
 | 
				
			||||||
    if answer not in ['y', 'Y']:
 | 
					    if answer not in ['y', 'Y']:
 | 
				
			||||||
      print 'ABORTED.'
 | 
					      print('ABORTED.')
 | 
				
			||||||
      sys.exit(1)
 | 
					      sys.exit(1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # Makes sure the directory holding the output file exists; creates
 | 
					  # Makes sure the directory holding the output file exists; creates
 | 
				
			||||||
@@ -146,8 +149,8 @@ def ValidateOutputDir(output_dir):
 | 
				
			|||||||
def FuseGTestH(gtest_root, output_dir):
 | 
					def FuseGTestH(gtest_root, output_dir):
 | 
				
			||||||
  """Scans folder gtest_root to generate gtest/gtest.h in 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')
 | 
					  output_file = open(os.path.join(output_dir, GTEST_H_OUTPUT), 'w')
 | 
				
			||||||
  processed_files = sets.Set()  # Holds all gtest headers we've processed.
 | 
					  processed_files = set()  # Holds all gtest headers we've processed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def ProcessFile(gtest_header_path):
 | 
					  def ProcessFile(gtest_header_path):
 | 
				
			||||||
    """Processes the given gtest header file."""
 | 
					    """Processes the given gtest header file."""
 | 
				
			||||||
@@ -159,7 +162,7 @@ def FuseGTestH(gtest_root, output_dir):
 | 
				
			|||||||
    processed_files.add(gtest_header_path)
 | 
					    processed_files.add(gtest_header_path)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Reads each line in the given gtest header.
 | 
					    # 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)
 | 
					      m = INCLUDE_GTEST_FILE_REGEX.match(line)
 | 
				
			||||||
      if m:
 | 
					      if m:
 | 
				
			||||||
        # It's '#include "gtest/..."' - let's process it recursively.
 | 
					        # 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):
 | 
					def FuseGTestAllCcToFile(gtest_root, output_file):
 | 
				
			||||||
  """Scans folder gtest_root to generate gtest/gtest-all.cc in 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):
 | 
					  def ProcessFile(gtest_source_file):
 | 
				
			||||||
    """Processes the given 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)
 | 
					    processed_files.add(gtest_source_file)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Reads each line in the given 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)
 | 
					      m = INCLUDE_GTEST_FILE_REGEX.match(line)
 | 
				
			||||||
      if m:
 | 
					      if m:
 | 
				
			||||||
        if 'include/' + m.group(1) == GTEST_SPI_H_SEED:
 | 
					        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):
 | 
					def FuseGTestAllCc(gtest_root, output_dir):
 | 
				
			||||||
  """Scans folder gtest_root to generate gtest/gtest-all.cc in 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)
 | 
					  FuseGTestAllCcToFile(gtest_root, output_file)
 | 
				
			||||||
  output_file.close()
 | 
					  output_file.close()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -242,7 +245,7 @@ def main():
 | 
				
			|||||||
    # fuse_gtest_files.py GTEST_ROOT_DIR OUTPUT_DIR
 | 
					    # fuse_gtest_files.py GTEST_ROOT_DIR OUTPUT_DIR
 | 
				
			||||||
    FuseGTest(sys.argv[1], sys.argv[2])
 | 
					    FuseGTest(sys.argv[1], sys.argv[2])
 | 
				
			||||||
  else:
 | 
					  else:
 | 
				
			||||||
    print __doc__
 | 
					    print(__doc__)
 | 
				
			||||||
    sys.exit(1)
 | 
					    sys.exit(1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -47,8 +47,8 @@ environ = os.environ.copy()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
def AssertEq(expected, actual):
 | 
					def AssertEq(expected, actual):
 | 
				
			||||||
  if expected != actual:
 | 
					  if expected != actual:
 | 
				
			||||||
    print 'Expected: %s' % (expected,)
 | 
					    print('Expected: %s' % (expected,))
 | 
				
			||||||
    print '  Actual: %s' % (actual,)
 | 
					    print('  Actual: %s' % (actual,))
 | 
				
			||||||
    raise AssertionError
 | 
					    raise AssertionError
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -44,7 +44,10 @@ __author__ = 'wan@google.com (Zhanyong Wan)'
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import os
 | 
					import os
 | 
				
			||||||
import re
 | 
					import re
 | 
				
			||||||
import sets
 | 
					try:
 | 
				
			||||||
 | 
					  from sets import Set as set  # For Python 2.3 compatibility
 | 
				
			||||||
 | 
					except ImportError:
 | 
				
			||||||
 | 
					  pass
 | 
				
			||||||
import sys
 | 
					import sys
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import gtest_test_utils
 | 
					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'.
 | 
					# exception is thrown if the input is anything other than 'True' nor 'False'.
 | 
				
			||||||
os.environ['EMPTY_VAR'] = ''
 | 
					os.environ['EMPTY_VAR'] = ''
 | 
				
			||||||
child = gtest_test_utils.Subprocess(
 | 
					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)
 | 
					CAN_PASS_EMPTY_ENV = eval(child.output)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -71,7 +74,7 @@ CAN_PASS_EMPTY_ENV = eval(child.output)
 | 
				
			|||||||
os.environ['UNSET_VAR'] = 'X'
 | 
					os.environ['UNSET_VAR'] = 'X'
 | 
				
			||||||
del os.environ['UNSET_VAR']
 | 
					del os.environ['UNSET_VAR']
 | 
				
			||||||
child = gtest_test_utils.Subprocess(
 | 
					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)
 | 
					CAN_UNSET_ENV = eval(child.output)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -243,14 +246,14 @@ class GTestFilterUnitTest(gtest_test_utils.TestCase):
 | 
				
			|||||||
    for slice_var in list_of_sets:
 | 
					    for slice_var in list_of_sets:
 | 
				
			||||||
      full_partition.extend(slice_var)
 | 
					      full_partition.extend(slice_var)
 | 
				
			||||||
    self.assertEqual(len(set_var), len(full_partition))
 | 
					    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):
 | 
					  def AdjustForParameterizedTests(self, tests_to_run):
 | 
				
			||||||
    """Adjust tests_to_run in case value parameterized tests are disabled."""
 | 
					    """Adjust tests_to_run in case value parameterized tests are disabled."""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    global param_tests_present
 | 
					    global param_tests_present
 | 
				
			||||||
    if not 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:
 | 
					    else:
 | 
				
			||||||
      return tests_to_run
 | 
					      return tests_to_run
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -279,7 +279,7 @@ class GTestOutputTest(gtest_test_utils.TestCase):
 | 
				
			|||||||
  def testOutput(self):
 | 
					  def testOutput(self):
 | 
				
			||||||
    output = GetOutputOfAllCommands()
 | 
					    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
 | 
					    # A mis-configured source control system can cause \r appear in EOL
 | 
				
			||||||
    # sequences when we read the golden file irrespective of an operating
 | 
					    # sequences when we read the golden file irrespective of an operating
 | 
				
			||||||
    # system used. Therefore, we need to strip those \r's from newlines
 | 
					    # system used. Therefore, we need to strip those \r's from newlines
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -178,7 +178,7 @@ def GetTestExecutablePath(executable_name, build_dir=None):
 | 
				
			|||||||
        'Unable to find the test binary "%s". Please make sure to provide\n'
 | 
					        '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'
 | 
					        'a path to the binary via the --build_dir flag or the BUILD_DIR\n'
 | 
				
			||||||
        'environment variable.' % path)
 | 
					        'environment variable.' % path)
 | 
				
			||||||
    print >> sys.stderr, message
 | 
					    sys.stdout.write(message)
 | 
				
			||||||
    sys.exit(1)
 | 
					    sys.exit(1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  return path
 | 
					  return path
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -70,7 +70,7 @@ def SetEnvVar(env_var, value):
 | 
				
			|||||||
def Run(command):
 | 
					def Run(command):
 | 
				
			||||||
  """Runs a command; returns True/False if its exit code is/isn't 0."""
 | 
					  """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)
 | 
					  p = gtest_test_utils.Subprocess(command)
 | 
				
			||||||
  return p.exited and p.exit_code == 0
 | 
					  return p.exited and p.exit_code == 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -46,8 +46,8 @@ def Assert(condition):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
def AssertEq(expected, actual):
 | 
					def AssertEq(expected, actual):
 | 
				
			||||||
  if expected != actual:
 | 
					  if expected != actual:
 | 
				
			||||||
    print 'Expected: %s' % (expected,)
 | 
					    print('Expected: %s' % (expected,))
 | 
				
			||||||
    print '  Actual: %s' % (actual,)
 | 
					    print('  Actual: %s' % (actual,))
 | 
				
			||||||
    raise AssertionError
 | 
					    raise AssertionError
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -209,7 +209,8 @@ class GTestXMLOutputUnitTest(gtest_xml_test_utils.GTestXMLTestCase):
 | 
				
			|||||||
        'gtest_no_test_unittest')
 | 
					        'gtest_no_test_unittest')
 | 
				
			||||||
    try:
 | 
					    try:
 | 
				
			||||||
      os.remove(output_file)
 | 
					      os.remove(output_file)
 | 
				
			||||||
    except OSError, e:
 | 
					    except OSError:
 | 
				
			||||||
 | 
					      e = sys.exc_info()[1]
 | 
				
			||||||
      if e.errno != errno.ENOENT:
 | 
					      if e.errno != errno.ENOENT:
 | 
				
			||||||
        raise
 | 
					        raise
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -101,7 +101,7 @@ class GTestXMLTestCase(gtest_test_utils.TestCase):
 | 
				
			|||||||
    self.assertEquals(
 | 
					    self.assertEquals(
 | 
				
			||||||
        len(expected_children), len(actual_children),
 | 
					        len(expected_children), len(actual_children),
 | 
				
			||||||
        'number of child elements differ in element ' + actual_node.tagName)
 | 
					        '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,
 | 
					      self.assert_(child_id in actual_children,
 | 
				
			||||||
                   '<%s> is not in <%s> (in element %s)' %
 | 
					                   '<%s> is not in <%s> (in element %s)' %
 | 
				
			||||||
                   (child_id, actual_children, actual_node.tagName))
 | 
					                   (child_id, actual_children, actual_node.tagName))
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user