Index: tools/mb/PRESUBMIT.py |
diff --git a/tools/mb/PRESUBMIT.py b/tools/mb/PRESUBMIT.py |
new file mode 100644 |
index 0000000000000000000000000000000000000000..a520ff9b298849775c0b18fb1bfe30decc3bb599 |
--- /dev/null |
+++ b/tools/mb/PRESUBMIT.py |
@@ -0,0 +1,48 @@ |
+# Copyright (c) 2016 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. |
+ |
+ |
+def _CommonChecks(input_api, output_api): |
+ results = [] |
+ |
+ # Run Pylint over the files in the directory. |
+ pylint_checks = input_api.canned_checks.GetPylint(input_api, output_api) |
+ results.extend(input_api.RunTests(pylint_checks)) |
+ |
+ # Run the MB unittests. |
+ results.extend(input_api.canned_checks.RunUnitTestsInDirectory( |
+ input_api, output_api, '.', [ r'^.+_unittest\.py$'])) |
+ |
+ # Validate the format of the mb_config.pyl file. |
+ mb_config_path = input_api.os_path.join(input_api.PresubmitLocalPath(), |
+ '..', '..', 'webrtc', 'build', |
+ 'mb_config.pyl') |
+ cmd = [input_api.python_executable, 'mb.py', 'validate', '--config-file', |
+ mb_config_path] |
+ kwargs = {'cwd': input_api.PresubmitLocalPath()} |
+ results.extend(input_api.RunTests([ |
+ input_api.Command(name='mb_validate', |
+ cmd=cmd, kwargs=kwargs, |
+ message=output_api.PresubmitError)])) |
+ |
+ results.extend( |
+ input_api.canned_checks.CheckLongLines( |
+ input_api, |
+ output_api, |
+ maxlen=80, |
+ source_file_filter=lambda x: 'mb_config.pyl' in x.LocalPath())) |
+ |
+ return results |
+ |
+ |
+def CheckChangeOnUpload(input_api, output_api): |
+ return _CommonChecks(input_api, output_api) |
+ |
+ |
+def CheckChangeOnCommit(input_api, output_api): |
+ return _CommonChecks(input_api, output_api) |