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

Side by Side Diff: presubmit_canned_checks.py

Issue 160626: Use input_api.os_path.pathsep instead of ';' to join a list of paths.... (Closed) Base URL: http://src.chromium.org/svn/trunk/tools/depot_tools/
Patch Set: Created 11 years, 4 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 | no next file » | 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/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2006-2009 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 """Generic presubmit checks that can be reused by other presubmit checks.""" 6 """Generic presubmit checks that can be reused by other presubmit checks."""
7 7
8 8
9 ### Description checks 9 ### Description checks
10 10
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 unit_test_name = unit_test 277 unit_test_name = unit_test
278 # "python -m test.unit_test" doesn't work. We need to change to the right 278 # "python -m test.unit_test" doesn't work. We need to change to the right
279 # directory instead. 279 # directory instead.
280 if '.' in unit_test: 280 if '.' in unit_test:
281 # Tests imported in submodules (subdirectories) assume that the current 281 # Tests imported in submodules (subdirectories) assume that the current
282 # directory is in the PYTHONPATH. Manually fix that. 282 # directory is in the PYTHONPATH. Manually fix that.
283 unit_test = unit_test.replace('.', '/') 283 unit_test = unit_test.replace('.', '/')
284 cwd = input_api.os_path.dirname(unit_test) 284 cwd = input_api.os_path.dirname(unit_test)
285 unit_test = input_api.os_path.basename(unit_test) 285 unit_test = input_api.os_path.basename(unit_test)
286 env = input_api.environ.copy() 286 env = input_api.environ.copy()
287 backpath = [';'.join(['..'] * (cwd.count('/') + 1))] 287 backpath = [input_api.os_path.pathsep.join(['..'] * (cwd.count('/') + 1))]
288 if env.get('PYTHONPATH'): 288 if env.get('PYTHONPATH'):
289 backpath.append(env.get('PYTHONPATH')) 289 backpath.append(env.get('PYTHONPATH'))
290 env['PYTHONPATH'] = ';'.join((backpath)) 290 env['PYTHONPATH'] = input_api.os_path.pathsep.join((backpath))
291 subproc = input_api.subprocess.Popen( 291 subproc = input_api.subprocess.Popen(
292 [ 292 [
293 input_api.python_executable, 293 input_api.python_executable,
294 "-m", 294 "-m",
295 "%s" % unit_test 295 "%s" % unit_test
296 ], 296 ],
297 cwd=cwd, 297 cwd=cwd,
298 env=env, 298 env=env,
299 stdin=input_api.subprocess.PIPE, 299 stdin=input_api.subprocess.PIPE,
300 stdout=input_api.subprocess.PIPE, 300 stdout=input_api.subprocess.PIPE,
301 stderr=input_api.subprocess.PIPE) 301 stderr=input_api.subprocess.PIPE)
302 stdoutdata, stderrdata = subproc.communicate() 302 stdoutdata, stderrdata = subproc.communicate()
303 # Discard the output if returncode == 0 303 # Discard the output if returncode == 0
304 if subproc.returncode: 304 if subproc.returncode:
305 outputs.append("Test '%s' failed with code %d\n%s\n%s\n" % ( 305 outputs.append("Test '%s' failed with code %d\n%s\n%s\n" % (
306 unit_test_name, subproc.returncode, stdoutdata, stderrdata)) 306 unit_test_name, subproc.returncode, stdoutdata, stderrdata))
307 if outputs: 307 if outputs:
308 return [message_type("%d unit tests failed." % len(outputs), 308 return [message_type("%d unit tests failed." % len(outputs),
309 long_text='\n'.join(outputs))] 309 long_text='\n'.join(outputs))]
310 return [] 310 return []
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698