Commit ac296200 authored by smut@google.com's avatar smut@google.com

Adding custom environment variable support to presubmit_canned_checks.GetUnitTestsInDirectory

I want to run Python unit tests as part of my presubmit, and those unit tests require PYTHONPATH to be set the way it would be set when the modules they test are running.

Review URL: https://codereview.chromium.org/250693002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@265998 0039d316-1c4b-4281-b951-d872f2087c98
parent 7861ac1c
......@@ -496,7 +496,7 @@ def CheckTreeIsOpen(input_api, output_api,
return []
def GetUnitTestsInDirectory(
input_api, output_api, directory, whitelist=None, blacklist=None):
input_api, output_api, directory, whitelist=None, blacklist=None, env=None):
"""Lists all files in a directory and runs them. Doesn't recurse.
It's mainly a wrapper for RunUnitTests. Use whitelist and blacklist to filter
......@@ -528,10 +528,10 @@ def GetUnitTestsInDirectory(
'Out of %d files, found none that matched w=%r, b=%r in directory %s'
% (found, whitelist, blacklist, directory))
]
return GetUnitTests(input_api, output_api, unit_tests)
return GetUnitTests(input_api, output_api, unit_tests, env)
def GetUnitTests(input_api, output_api, unit_tests):
def GetUnitTests(input_api, output_api, unit_tests, env=None):
"""Runs all unit tests in a directory.
On Windows, sys.executable is used for unit tests ending with ".py".
......@@ -551,10 +551,13 @@ def GetUnitTests(input_api, output_api, unit_tests):
cmd.append(unit_test)
if input_api.verbose:
cmd.append('--verbose')
kwargs = {'cwd': input_api.PresubmitLocalPath()}
if env:
kwargs['env'] = env
results.append(input_api.Command(
name=unit_test,
cmd=cmd,
kwargs={'cwd': input_api.PresubmitLocalPath()},
kwargs=kwargs,
message=message_type))
return results
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment