From 0ad32a6849f5c4e94de3429dfd95300244e4a24e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Mon, 19 Jan 2015 16:37:50 +0100 Subject: [PATCH] Add tox and drone issue4431 review6771002 --- .drone.yml | 9 +++++++++ setup.py | 8 ++++++++ tox.ini | 16 ++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 .drone.yml create mode 100644 tox.ini diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000000..a4d2595986 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,9 @@ +image: python2.7 +env: + - POSTGRESQL_URI=postgresql://postgres@127.0.0.1:5432/ + - MYSQL_URI=mysql://root@127.0.0.1:3306/ +script: + - pip install tox + - tox -e sqlite,postgresql +services: + - postgres diff --git a/setup.py b/setup.py index ffcd106002..2fae0939c3 100644 --- a/setup.py +++ b/setup.py @@ -47,6 +47,12 @@ for dep in info.get('depends', []): requires.append(get_require_version('trytond_%s' % dep)) requires.append(get_require_version('trytond')) +tests_require = [get_require_version('proteus')] +dependency_links = [] +if minor_version % 2: + # Add development index for testing with proteus + dependency_links.append('https://trydevpi.tryton.org/%s.%s') + setup(name=name, version=version, description='Tryton module for accounting', @@ -91,6 +97,7 @@ setup(name=name, ], license='GPL-3', install_requires=requires, + dependency_links=dependency_links, zip_safe=False, entry_points=""" [trytond.modules] @@ -98,4 +105,5 @@ setup(name=name, """, test_suite='tests', test_loader='trytond.test_loader:Loader', + tests_require=tests_require, ) diff --git a/tox.ini b/tox.ini new file mode 100644 index 0000000000..e213af00e6 --- /dev/null +++ b/tox.ini @@ -0,0 +1,16 @@ +[tox] +envlist = py27-{sqlite,postgresql,mysql} + +[testenv] +commands = {envpython} setup.py test +deps = + postgresql: psycopg2 >= 2.0 + mysql: MySQL-python +setenv = + sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://} + postgresql: TRYTOND_DATABASE_URI={env:POSTGRESQL_URI:postgresql://} + mysql: TRYTOND_DATABASE_URI={env:MYSQL_URI:mysql://} + sqlite: DB_NAME={env:SQLITE_NAME::memory:} + postgresql: DB_NAME={env:POSTGRESQL_NAME:test} + mysql: DB_NAME={env:MYSQL_NAME:test} +install_command = pip install --pre --find-links https://trydevpi.tryton.org/ {opts} {packages}