# ==================================================================================
#       Copyright (c) 2020 Nokia
#       Copyright (c) 2020 AT&T Intellectual Property.
#
#   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 = code,flake8,docs,docs-linkcheck
minversion = 2.0

[testenv:code]
basepython = python3.10
deps=
    pytest
    coverage
    pytest-cov
    six
setenv =
    LD_LIBRARY_PATH = /usr/local/lib/:/usr/local/lib64
    RMR_SEED_RT = tests/fixtures/test_local.rt
    RMR_ASYNC_CONN = 0
commands =
    # add -s flag after pytest to show logs immediately instead of delaying
    pytest --cov ricxappframe --cov-report xml --cov-report term-missing --cov-report html --cov-fail-under=70 --junitxml=/tmp/tests.xml
    coverage xml -i

[testenv:flake8]
basepython = python3.10
skip_install = true
deps = flake8
commands = flake8 setup.py ricxappframe tests

[flake8]
extend-ignore = E501,E741,E731
exclude = ricxappframe/entities,ricxappframe/subsclient

[testenv:clm]
# use pip to gather dependencies with versions for CLM analysis
whitelist_externals = sh
commands = sh -c 'pip freeze > requirements.txt'

# doc jobs
[testenv:docs]
whitelist_externals = echo
skipsdist = true
basepython = python3
setenv =
    LD_LIBRARY_PATH = /usr/local/lib/:/usr/local/lib64
deps = sphinx
       sphinx-rtd-theme
       sphinxcontrib-httpdomain
       recommonmark
       lfdocs-conf
       numpydoc
       inotify_simple
       mdclogpy
       msgpack
       ricsdl
       protobuf
       inotify
       urllib3~=1.26.15

allowlist_externals = echo

commands =
    sphinx-build -W -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
    echo "Generated docs available in {toxinidir}/docs/_build/html"

[testenv:docs-linkcheck]
skipsdist = true
basepython = python3
setenv =
    LD_LIBRARY_PATH = /usr/local/lib/:/usr/local/lib64
deps = sphinx
       sphinx-rtd-theme
       sphinxcontrib-httpdomain
       recommonmark
       lfdocs-conf
       numpydoc
       inotify_simple
       mdclogpy
       msgpack
       ricsdl
       urllib3~=1.26.15
commands = sphinx-build -W -b linkcheck -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/linkcheck
