diff options
author | timurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-30 12:46:34 +0000 |
---|---|---|
committer | timurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-30 12:46:34 +0000 |
commit | e28f36f30c0ae727cf5bb9172f9880a5325703a9 (patch) | |
tree | 354304ecbf23b4d6824cdf3dc9ed63e3d7c6f631 | |
parent | bcb1a598e54dd0ed53ef166913c9868dccffd7ce (diff) | |
download | chromium_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
-rw-r--r-- | base/data/valgrind/base_unittests.gtest_win32.txt | 7 | ||||
-rw-r--r-- | base/data/valgrind/base_unittests.gtest_wine.txt | 18 | ||||
-rwxr-xr-x | tools/valgrind/chrome_tests.py | 17 | ||||
-rwxr-xr-x | tools/valgrind/common.py | 15 | ||||
-rwxr-xr-x | tools/valgrind/valgrind_test.py | 12 |
5 files changed, 30 insertions, 39 deletions
diff --git a/base/data/valgrind/base_unittests.gtest_win32.txt b/base/data/valgrind/base_unittests.gtest_win32.txt new file mode 100644 index 0000000..525648c --- /dev/null +++ b/base/data/valgrind/base_unittests.gtest_win32.txt @@ -0,0 +1,7 @@ +# Too slow under Valgrind/Wine and TSan/Windows +TimeTicks.WinRollover + +# Very sensitive to slowdown +TimeTicks.Deltas +TimeTicks.HighResNow +TimerTest.RepeatingTimer* diff --git a/base/data/valgrind/base_unittests.gtest_wine.txt b/base/data/valgrind/base_unittests.gtest_wine.txt index 620c53d..17d3085 100644 --- a/base/data/valgrind/base_unittests.gtest_wine.txt +++ b/base/data/valgrind/base_unittests.gtest_wine.txt @@ -19,9 +19,6 @@ BaseWinUtilTest.FormatMessageW # fails under wine + valgrind TODO(thestig): investigate ConditionVariableTest.LargeFastTaskTest -# dontcare-hang -DirectoryWatcherTest.* - # hang # http://bugs.winehq.org/show_bug.cgi?id=20946, advapi32.ControlTrace() not yet implemented EtwTraceControllerTest.EnableDisable @@ -95,20 +92,5 @@ StatsTableTest.StatsRate # fails under wine + valgrind TODO(thestig): investigate StatsTableTest.StatsScope -# flaky-valgrind -# fails half the time under valgrind, timing issue? -TimeTicks.Deltas - -# dontcare-winfail -# fails if run individually on windows -TimeTicks.HighResNow - -# hang-valgrind -TimerTest.RepeatingTimer* - -# hang-valgrind -# not really a hang, takes 1000 seconds -TimeTicks.WinRollover - # dontcare WMIUtilTest.* 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, |