webrtc/tools/lsan/PRESUBMIT.py
kjellander@webrtc.org e61da8c391 Suppressions and PRESUBMIT.py for LSan
The Leak Sanitizer will replace Valgrind
memcheck when it's related tool Memory Sanitizer is ready.
We should get our tests in shape so we can detect
new leaks, which is why I'm adding these suppressions.

More info at http://www.chromium.org/developers/testing/leaksanitizer
Buildbot at http://build.chromium.org/p/client.webrtc.fyi/waterfall

BUG=2515,2527,2528
TEST=Ran tests with the parameters described in webrtc:2527.
TBR=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2421004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4988 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-17 14:16:17 +00:00

44 lines
1.4 KiB
Python

#!/usr/bin/env python
# Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
"""
Copied from Chrome's src/tools/lsan/PRESUBMIT.py
See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
for more details on the presubmit API built into gcl.
"""
import re
def CheckChange(input_api, output_api):
errors = []
for f in input_api.AffectedFiles():
if not f.LocalPath().endswith('suppressions.txt'):
continue
for line_num, line in enumerate(f.NewContents()):
line = line.strip()
if line.startswith('#') or not line:
continue
if not line.startswith('leak:'):
errors.append('"%s" should be "leak:..." in %s line %d' %
(line, f.LocalPath(), line_num))
if errors:
return [output_api.PresubmitError('\n'.join(errors))]
return []
def CheckChangeOnUpload(input_api, output_api):
return CheckChange(input_api, output_api)
def CheckChangeOnCommit(input_api, output_api):
return CheckChange(input_api, output_api)
def GetPreferredTrySlaves():
return ['linux_asan']