Integrate pytest testing.

This commit is contained in:
David Shrewsbury
2012-09-13 16:25:53 -04:00
parent 1180557cf8
commit c05150bfca
5 changed files with 39 additions and 8 deletions

1
.gitignore vendored
View File

@@ -3,3 +3,4 @@
*.egg-info
dist
build
.cache

View File

@@ -1,4 +1,2 @@
[nosetests]
verbosity=2
detailed-errors=1
where=tests
[pytest]
addopts = --verbose

View File

@@ -1,4 +1,32 @@
# Copyright 2012 Hewlett-Packard Development Company, L.P.
#
# 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 setuptools
from setuptools.command.test import test as TestCommand
class PyTest(TestCommand):
def finalize_options(self):
TestCommand.finalize_options(self)
self.test_args = []
self.test_suite = True
def run_tests(self):
#import here, cause outside the eggs aren't loaded
import pytest
pytest.main(self.test_args)
setuptools.setup(
name="lbaas_worker",
@@ -7,11 +35,12 @@ setuptools.setup(
author="David Shrewsbury",
author_email="shrewsbury.dave@gmail.com",
packages=setuptools.find_packages(exclude=["*.tests"]),
test_suite='nose.collector',
entry_points={
'console_scripts': [
'lbaas_worker = lbaas_worker.worker:main'
]
},
cmdclass={'test': PyTest},
tests_require=['pytest-pep8'],
install_requires=['gearman', 'python-daemon'],
)

View File

@@ -1 +1 @@
nose
pytest-pep8

View File

@@ -1,7 +1,10 @@
[tox]
envlist = py27
envlist = py27,pep8
[testenv]
deps = -r{toxinidir}/tools/pip-requires
-r{toxinidir}/tools/test-requires
commands = nosetests
commands = py.test
[testenv:pep8]
commands = py.test --pep8 -k pep8 --clearcache