From 74951a03fd1b06424d0c4893b609630e575c737f Mon Sep 17 00:00:00 2001 From: Randall Burt Date: Tue, 10 Dec 2013 11:15:36 -0600 Subject: [PATCH] Add contrib to py26 and py27 gates Change-Id: I6e3792bd1fa7076d51321d788d1c272b178339e1 Closes-Bug: #1251380 --- contrib/.testr.conf | 4 ++++ contrib/bin/run_tests.py | 39 +++++++++++++++++++++++++++++++++++++++ tox.ini | 10 ++-------- 3 files changed, 45 insertions(+), 8 deletions(-) create mode 100644 contrib/.testr.conf create mode 100644 contrib/bin/run_tests.py diff --git a/contrib/.testr.conf b/contrib/.testr.conf new file mode 100644 index 000000000..8396da395 --- /dev/null +++ b/contrib/.testr.conf @@ -0,0 +1,4 @@ +[DEFAULT] +test_command=python -m subunit.run discover -s contrib $LISTOPT $IDOPTION +test_id_option=--load-list $IDFILE +test_list_option=--list diff --git a/contrib/bin/run_tests.py b/contrib/bin/run_tests.py new file mode 100644 index 000000000..4b5290e5f --- /dev/null +++ b/contrib/bin/run_tests.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python +# +# 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. + +import os +import sys + +from testrepository import commands + +CONTRIB_PATH = os.path.abspath(os.path.join(os.path.dirname(__file__), + os.pardir)) +TESTR_PATH = os.path.join(CONTRIB_PATH, ".testrepository") + + +def _run_testr(*args): + return commands.run_argv([sys.argv[0]] + list(args), + sys.stdin, sys.stdout, sys.stderr) + +# initialize the contrib test repository if needed +if not os.path.isdir(TESTR_PATH): + _run_testr('init', '-d', CONTRIB_PATH) +if not _run_testr('run', '-d', CONTRIB_PATH, '--parallel'): + cur_dir = os.getcwd() + os.chdir(CONTRIB_PATH) + print("Slowest Contrib Tests") + _run_testr("slowest") + os.chdir(cur_dir) +else: + sys.exit(1) diff --git a/tox.ini b/tox.ini index 20994643b..7074a1a74 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py26,py27,pep8,contrib +envlist = py26,py27,pep8 minversion = 1.6 skipsdist = True @@ -11,13 +11,7 @@ deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = python setup.py testr --slowest --testr-args='{posargs}' - -[testenv:contrib] -deps = -r{toxinidir}/requirements.txt - -r{toxinidir}/test-requirements.txt -commands = - discover -s contrib/ {posargs} - flake8 contrib + python contrib/bin/run_tests.py [testenv:pep8] commands =