mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
d21638424c
We need to use the path separators provided by the python library, and we need to set the git env vars so the name is always known. Not all tests pass, but at least the basic frameworks work now. Change-Id: Icea67098a8d7d58bbf918c78325681cf12a2e5f2 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/255313 Reviewed-by: David Pursehouse <dpursehouse@collab.net> Tested-by: Mike Frysinger <vapier@google.com>
56 lines
1.6 KiB
Python
Executable File
56 lines
1.6 KiB
Python
Executable File
#!/usr/bin/env python
|
|
# -*- coding:utf-8 -*-
|
|
# Copyright 2019 The Android Open Source Project
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
"""Wrapper to run pytest with the right settings."""
|
|
|
|
from __future__ import print_function
|
|
|
|
import errno
|
|
import os
|
|
import subprocess
|
|
import sys
|
|
|
|
|
|
def run_pytest(cmd, argv):
|
|
"""Run the unittests via |cmd|."""
|
|
try:
|
|
return subprocess.call([cmd] + argv)
|
|
except OSError as e:
|
|
if e.errno == errno.ENOENT:
|
|
print('%s: unable to run `%s`: %s' % (__file__, cmd, e), file=sys.stderr)
|
|
print('%s: Try installing pytest: sudo apt-get install python-pytest' %
|
|
(__file__,), file=sys.stderr)
|
|
return 127
|
|
else:
|
|
raise
|
|
|
|
|
|
def main(argv):
|
|
"""The main entry."""
|
|
# Add the repo tree to PYTHONPATH as the tests expect to be able to import
|
|
# modules directly.
|
|
pythonpath = os.path.dirname(os.path.realpath(__file__))
|
|
oldpythonpath = os.environ.get('PYTHONPATH', None)
|
|
if oldpythonpath is not None:
|
|
pythonpath += os.pathsep + oldpythonpath
|
|
os.environ['PYTHONPATH'] = pythonpath
|
|
|
|
return run_pytest('pytest', argv)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
sys.exit(main(sys.argv[1:]))
|