Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(520)

Side by Side Diff: tools/valgrind/chrome_tests.py

Issue 7824032: Add support for client program options when using "-t cmdline" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | tools/valgrind/valgrind_test.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2011 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2011 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 # chrome_tests.py 6 # chrome_tests.py
7 7
8 ''' Runs various chrome tests through valgrind_test.py.''' 8 ''' Runs various chrome tests through valgrind_test.py.'''
9 9
10 import glob 10 import glob
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 cmd.append("--suppressions=%s" % suppression_file) 95 cmd.append("--suppressions=%s" % suppression_file)
96 # Platform-specific suppression 96 # Platform-specific suppression
97 for platform in common.PlatformNames(): 97 for platform in common.PlatformNames():
98 platform_suppression_file = \ 98 platform_suppression_file = \
99 os.path.join(script_dir, tool_name, 'suppressions_%s.txt' % platform) 99 os.path.join(script_dir, tool_name, 'suppressions_%s.txt' % platform)
100 if os.path.exists(platform_suppression_file): 100 if os.path.exists(platform_suppression_file):
101 cmd.append("--suppressions=%s" % platform_suppression_file) 101 cmd.append("--suppressions=%s" % platform_suppression_file)
102 102
103 if self._options.valgrind_tool_flags: 103 if self._options.valgrind_tool_flags:
104 cmd += self._options.valgrind_tool_flags.split(" ") 104 cmd += self._options.valgrind_tool_flags.split(" ")
105 if self._options.keep_logs:
106 cmd += ["--keep_logs"]
105 if valgrind_test_args != None: 107 if valgrind_test_args != None:
106 for arg in valgrind_test_args: 108 for arg in valgrind_test_args:
107 cmd.append(arg) 109 cmd.append(arg)
108 if exe: 110 if exe:
109 self._EnsureBuildDirFound() 111 self._EnsureBuildDirFound()
110 cmd.append(os.path.join(self._options.build_dir, exe)) 112 cmd.append(os.path.join(self._options.build_dir, exe))
111 # Valgrind runs tests slowly, so slow tests hurt more; show elapased time 113 # Valgrind runs tests slowly, so slow tests hurt more; show elapased time
112 # so we can find the slowpokes. 114 # so we can find the slowpokes.
113 cmd.append("--gtest_print_time") 115 cmd.append("--gtest_print_time")
114 if self._options.gtest_repeat: 116 if self._options.gtest_repeat:
(...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 parser.add_option("", "--gtest_filter", 461 parser.add_option("", "--gtest_filter",
460 help="additional arguments to --gtest_filter") 462 help="additional arguments to --gtest_filter")
461 parser.add_option("", "--gtest_repeat", 463 parser.add_option("", "--gtest_repeat",
462 help="argument for --gtest_repeat") 464 help="argument for --gtest_repeat")
463 parser.add_option("-v", "--verbose", action="store_true", default=False, 465 parser.add_option("-v", "--verbose", action="store_true", default=False,
464 help="verbose output - enable debug log messages") 466 help="verbose output - enable debug log messages")
465 parser.add_option("", "--tool", dest="valgrind_tool", default="memcheck", 467 parser.add_option("", "--tool", dest="valgrind_tool", default="memcheck",
466 help="specify a valgrind tool to run the tests under") 468 help="specify a valgrind tool to run the tests under")
467 parser.add_option("", "--tool_flags", dest="valgrind_tool_flags", default="", 469 parser.add_option("", "--tool_flags", dest="valgrind_tool_flags", default="",
468 help="specify custom flags for the selected valgrind tool") 470 help="specify custom flags for the selected valgrind tool")
471 parser.add_option("", "--keep_logs", action="store_true", default=False,
472 help="store memory tool logs in the <tool>.logs directory "
473 "instead of /tmp.\nThis can be useful for tool "
474 "developers/maintainers.\nPlease note that the <tool>"
475 ".logs directory will be clobbered on tool startup.")
469 # My machine can do about 120 layout tests/hour in release mode. 476 # My machine can do about 120 layout tests/hour in release mode.
470 # Let's do 30 minutes worth per run. 477 # Let's do 30 minutes worth per run.
471 # The CPU is mostly idle, so perhaps we can raise this when 478 # The CPU is mostly idle, so perhaps we can raise this when
472 # we figure out how to run them more efficiently. 479 # we figure out how to run them more efficiently.
473 parser.add_option("-n", "--num_tests", default=60, type="int", 480 parser.add_option("-n", "--num_tests", default=60, type="int",
474 help="for layout tests: # of subtests per run. 0 for all.") 481 help="for layout tests: # of subtests per run. 0 for all.")
475 482
476 options, args = parser.parse_args() 483 options, args = parser.parse_args()
477 484
478 if options.verbose: 485 if options.verbose:
(...skipping 10 matching lines...) Expand all
489 for t in options.test: 496 for t in options.test:
490 tests = ChromeTests(options, args, t) 497 tests = ChromeTests(options, args, t)
491 ret = tests.Run() 498 ret = tests.Run()
492 if ret: return ret 499 if ret: return ret
493 return 0 500 return 0
494 501
495 502
496 if __name__ == "__main__": 503 if __name__ == "__main__":
497 ret = _main(sys.argv) 504 ret = _main(sys.argv)
498 sys.exit(ret) 505 sys.exit(ret)
OLDNEW
« no previous file with comments | « no previous file | tools/valgrind/valgrind_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698