# Copyright 2018 Telefonica S.A.
#
# 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.

[tox]
envlist = flake8
toxworkdir={toxinidir}/../.tox

[testenv]
basepython = python3
install_command = python3 -m pip install -r requirements.txt -U {opts} {packages}

[testenv:flake8]
basepython = python3
deps = flake8
commands = flake8 osm_roclient --max-line-length 120 \
    --exclude .svn,CVS,.gz,.git,__pycache__,.tox,local,temp --ignore W291,W293,E226,W504

[testenv:unittest]
basepython = python3
commands = python3 -m unittest osm_roclient.tests

[testenv:build]
basepython = python3
deps = stdeb
       setuptools-version-command
commands = python3 setup.py --command-packages=stdeb.command bdist_deb

