summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authortimurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-30 12:46:34 +0000
committertimurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-30 12:46:34 +0000
commite28f36f30c0ae727cf5bb9172f9880a5325703a9 (patch)
tree354304ecbf23b4d6824cdf3dc9ed63e3d7c6f631 /tools
parentbcb1a598e54dd0ed53ef166913c9868dccffd7ce (diff)
downloadchromium_src-e28f36f30c0ae727cf5bb9172f9880a5325703a9.zip
chromium_src-e28f36f30c0ae727cf5bb9172f9880a5325703a9.tar.gz
chromium_src-e28f36f30c0ae727cf5bb9172f9880a5325703a9.tar.bz2
Add win32 gtest filter files shared between Wine and TSan/Windows
BUG=28363 Review URL: http://codereview.chromium.org/1377003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43076 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rwxr-xr-xtools/valgrind/chrome_tests.py17
-rwxr-xr-xtools/valgrind/common.py15
-rwxr-xr-xtools/valgrind/valgrind_test.py12
3 files changed, 23 insertions, 21 deletions
diff --git a/tools/valgrind/chrome_tests.py b/tools/valgrind/chrome_tests.py
index cd8f891..fb29b30 100755
--- a/tools/valgrind/chrome_tests.py
+++ b/tools/valgrind/chrome_tests.py
@@ -135,12 +135,12 @@ class ChromeTests:
if os.path.exists(suppression_file):
cmd.append("--suppressions=%s" % suppression_file)
# Platform specific suppression
- suppression_platform = common.PlatformName()
- suppression_file_platform = \
- os.path.join(directory,
- '%s/suppressions_%s.txt' % (tool_name, suppression_platform))
- if os.path.exists(suppression_file_platform):
- cmd.append("--suppressions=%s" % suppression_file_platform)
+ for suppression_platform in common.PlatformNames():
+ suppression_file_platform = \
+ os.path.join(directory,
+ '%s/suppressions_%s.txt' % (tool_name, suppression_platform))
+ if os.path.exists(suppression_file_platform):
+ cmd.append("--suppressions=%s" % suppression_file_platform)
cmd.append("--tool=%s" % self._options.valgrind_tool)
if self._options.valgrind_tool_flags:
@@ -171,11 +171,12 @@ class ChromeTests:
'''
filters = []
for directory in self._data_dirs:
- platform_suffix = common.PlatformName()
gtest_filter_files = [
os.path.join(directory, name + ".gtest.txt"),
os.path.join(directory, name + ".gtest-%s.txt" % \
- self._options.valgrind_tool),
+ self._options.valgrind_tool)]
+ for platform_suffix in common.PlatformNames():
+ gtest_filter_files += [
os.path.join(directory, name + ".gtest_%s.txt" % platform_suffix),
os.path.join(directory, name + ".gtest-%s_%s.txt" % \
(self._options.valgrind_tool, platform_suffix))]
diff --git a/tools/valgrind/common.py b/tools/valgrind/common.py
index 52af411..8b855f6 100755
--- a/tools/valgrind/common.py
+++ b/tools/valgrind/common.py
@@ -142,15 +142,18 @@ def IsWine():
os.environ.get('WINESERVER'))
-def PlatformName():
- """Return a string to be used in paths for the platform."""
+def PlatformNames():
+ """Return an array of string to be used in paths for the platform
+ (e.g. suppressions, gtest filters, ignore files etc.)
+ The first element of the array describes the 'main' platform
+ """
# This has to be before IsLinux()
if IsWine():
- return 'wine'
+ return ['wine', 'win32']
if IsLinux():
- return 'linux'
+ return ['linux']
if IsMac():
- return 'mac'
+ return ['mac']
if IsWindows():
- return 'win32'
+ return ['win32']
raise NotImplementedError('Unknown platform "%s".' % sys.platform)
diff --git a/tools/valgrind/valgrind_test.py b/tools/valgrind/valgrind_test.py
index 138b43e..23f2359 100755
--- a/tools/valgrind/valgrind_test.py
+++ b/tools/valgrind/valgrind_test.py
@@ -479,8 +479,8 @@ class ThreadSanitizer(ValgrindTool):
ret = []
ignore_files = ["ignores.txt"]
- platform_suffix = common.PlatformName()
- ignore_files.append("ignores_%s.txt" % platform_suffix)
+ for platform_suffix in common.PlatformNames():
+ ignore_files.append("ignores_%s.txt" % platform_suffix)
for ignore_file in ignore_files:
fullname = os.path.join(self._source_dir,
"tools", "valgrind", "tsan", ignore_file)
@@ -537,13 +537,11 @@ class ToolFactory:
if tool_name == "wine_memcheck" and common.IsWine():
return Memcheck()
if tool_name == "tsan":
- if not common.IsLinux():
- logging.info("WARNING: ThreadSanitizer may be unstable on Mac.")
- logging.info("See http://code.google.com/p/data-race-test/wiki/"
- "ThreadSanitizerOnMacOsx for the details")
+ if common.IsWindows():
+ logging.info("WARNING: ThreadSanitizer Windows support is experimental.")
return ThreadSanitizer()
try:
- platform_name = common.PlatformName()
+ platform_name = common.PlatformNames()[0]
except common.NotImplementedError:
platform_name = sys.platform + "(Unknown)"
raise RuntimeError, "Unknown tool (tool=%s, platform=%s)" % (tool_name,