| Index: build/util/lib/common/unittest_util.py
 | 
| diff --git a/chrome/test/pylib/common/unittest_util.py b/build/util/lib/common/unittest_util.py
 | 
| similarity index 84%
 | 
| rename from chrome/test/pylib/common/unittest_util.py
 | 
| rename to build/util/lib/common/unittest_util.py
 | 
| index 9de980515bc599c52689b6c880747437d15e5b7f..ba17ea2b2599d5d44e32eec5ce9c45acb12bb8a7 100644
 | 
| --- a/chrome/test/pylib/common/unittest_util.py
 | 
| +++ b/build/util/lib/common/unittest_util.py
 | 
| @@ -101,10 +101,32 @@ def FilterTestSuite(suite, gtest_filter):
 | 
|  
 | 
|  
 | 
|  def FilterTests(all_tests, gtest_filter):
 | 
| -  """Returns a filtered list of tests based on the given gtest filter.
 | 
| +  """Filter a list of tests based on the given gtest filter.
 | 
| +
 | 
| +  Args:
 | 
| +    all_tests: List of tests (unittest.TestSuite)
 | 
| +    gtest_filter: Filter to apply.
 | 
| +
 | 
| +  Returns:
 | 
| +    Filtered subset of the given list of tests.
 | 
| +  """
 | 
| +  test_names = [GetTestName(test) for test in all_tests]
 | 
| +  filtered_names = FilterTestNames(test_names, gtest_filter)
 | 
| +  return [test for test in all_tests if GetTestName(test) in filtered_names]
 | 
| +
 | 
| +
 | 
| +def FilterTestNames(all_tests, gtest_filter):
 | 
| +  """Filter a list of test names based on the given gtest filter.
 | 
|  
 | 
|    See http://code.google.com/p/googletest/wiki/AdvancedGuide
 | 
|    for gtest_filter specification.
 | 
| +
 | 
| +  Args:
 | 
| +    all_tests: List of test names.
 | 
| +    gtest_filter: Filter to apply.
 | 
| +
 | 
| +  Returns:
 | 
| +    Filtered subset of the given list of test names.
 | 
|    """
 | 
|    pattern_groups = gtest_filter.split('-')
 | 
|    positive_patterns = pattern_groups[0].split(':')
 | 
| @@ -114,16 +136,15 @@ def FilterTests(all_tests, gtest_filter):
 | 
|  
 | 
|    tests = []
 | 
|    for test in all_tests:
 | 
| -    test_name = GetTestName(test)
 | 
|      # Test name must by matched by one positive pattern.
 | 
|      for pattern in positive_patterns:
 | 
| -      if fnmatch.fnmatch(test_name, pattern):
 | 
| +      if fnmatch.fnmatch(test, pattern):
 | 
|          break
 | 
|      else:
 | 
|        continue
 | 
|      # Test name must not be matched by any negative patterns.
 | 
|      for pattern in negative_patterns or []:
 | 
| -      if fnmatch.fnmatch(test_name, pattern):
 | 
| +      if fnmatch.fnmatch(test, pattern):
 | 
|          break
 | 
|      else:
 | 
|        tests += [test]
 | 
| 
 |