blob: 28148330032510ee34dcc0929387e78c72848274 [file] [log] [blame]
beierlma1f627a2021-03-23 16:04:34 -04001#######################################################################################
2# Copyright ETSI Contributors and Others.
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
13# implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#######################################################################################
17
18[tox]
garciadeblas7a9e0312023-12-11 22:24:46 +010019envlist = black, cover, flake8, pylint, rflint, safety
beierlma1f627a2021-03-23 16:04:34 -040020
21[tox:jenkins]
22toxworkdir = /tmp/.tox
23
24[testenv]
25usedevelop = True
garciadeblasb9dfe032023-05-10 17:25:47 +020026basepython = python3.10
beierlma1f627a2021-03-23 16:04:34 -040027setenv = VIRTUAL_ENV={envdir}
28 PYTHONDONTWRITEBYTECODE = 1
29deps = -r{toxinidir}/requirements.txt
garciadeblasb9dfe032023-05-10 17:25:47 +020030parallel_show_output = true
beierlma1f627a2021-03-23 16:04:34 -040031
32#######################################################################################
33[testenv:black]
34deps = black
35skip_install = true
36commands =
garciadeblasb9dfe032023-05-10 17:25:47 +020037 black --check --diff robot-systest --fast
beierlma1f627a2021-03-23 16:04:34 -040038
39
40#######################################################################################
41[testenv:cover]
42commands =
43 sh -c 'echo No unit tests'
garciadeblas3d7579c2023-04-18 15:04:57 +020044allowlist_externals = sh
beierlma1f627a2021-03-23 16:04:34 -040045
46
47#######################################################################################
48[testenv:flake8]
49deps = flake8
50commands =
51 flake8 robot-systest
52
53
54#######################################################################################
55[testenv:pylint]
56deps = {[testenv]deps}
57 -r{toxinidir}/requirements-dev.txt
58 pylint
59commands =
garciadeblas7a9e0312023-12-11 22:24:46 +010060 pylint -E robot-systest
61
62
63#######################################################################################
64[testenv:rflint]
65changedir = {toxinidir}/robot-systest
66deps = {[testenv]deps}
67 -r{toxinidir}/requirements-dev.txt
garciadeblas3df13fd2024-08-07 09:42:45 +020068 robotframework-lint==1.1
garciadeblas1d053372025-10-01 12:52:33 +020069 robotframework-robocop==5.9.0
garciadeblas7a9e0312023-12-11 22:24:46 +010070commands =
71 rflint --ignore LineTooLong --ignore TooFewTestSteps --ignore TooManyTestCases \
72 --ignore TooManyTestSteps --ignore TooFewKeywordSteps \
73 testsuite lib resources
garciadeblase6c5b4f2024-12-16 14:51:07 +010074 robocop --configure return_status:quality_gate:E=0:W=0:I=0 --exclude 050*,0701,032*,092*,093* .
beierlma1f627a2021-03-23 16:04:34 -040075
76
77#######################################################################################
78[testenv:safety]
79setenv =
80 LC_ALL=C.UTF-8
81 LANG=C.UTF-8
82deps = {[testenv]deps}
83 safety
84commands =
85 - safety check --full-report
86
87
88#######################################################################################
89[testenv:pip-compile]
garciadeblasb9dfe032023-05-10 17:25:47 +020090deps = pip-tools==6.13.0
beierlme5368252022-01-13 13:24:08 -050091skip_install = true
garciadeblas3d7579c2023-04-18 15:04:57 +020092allowlist_externals = bash
beierlme5368252022-01-13 13:24:08 -050093 [
beierlma1f627a2021-03-23 16:04:34 -040094commands =
beierlme5368252022-01-13 13:24:08 -050095 - bash -c "for file in requirements*.in ; do \
96 UNSAFE="" ; \
97 if [[ $file =~ 'dist' ]] ; then UNSAFE='--allow-unsafe' ; fi ; \
garciadeblasb9dfe032023-05-10 17:25:47 +020098 pip-compile --resolver=backtracking -rU --no-header $UNSAFE $file ;\
beierlme5368252022-01-13 13:24:08 -050099 out=`echo $file | sed 's/.in/.txt/'` ; \
100 sed -i -e '1 e head -16 tox.ini' $out ;\
101 done"
beierlma1f627a2021-03-23 16:04:34 -0400102
103
104#######################################################################################
105[flake8]
106ignore =
107 W291,
108 W293,
109 E123,
110 E125,
111 E226,
112 E241
113exclude =
114 .git,
115 __pycache__,
116 .tox,
117max-line-length = 120
118show-source = True
119builtins = _