blob: b0b15d21fb5b82cbd9aa508b3fdcd614b90dc874 [file] [log] [blame]
Borjan Tchakaloff7a70e552018-08-02 16:26:34 +02001# tox (https://tox.readthedocs.io/) is a tool for running tests
2# in multiple virtualenvs. This configuration file will run the
3# test suite on all supported python versions. To use it, "pip install tox"
4# and then run "tox" from this directory.
5
6[tox]
7envlist = py35
8# There is no proper way to install the app for now (i.e. setup.py)
9skipsdist = True
10
11[testenv]
12deps =
13 -rrequirements.txt
14 psycopg2
15commands =
16 python manage.py test
17
18# Linters
19[testenv:flake8]
20deps =
21 -rrequirements-dev-flake8.txt
22commands =
23 flake8 crashreports crashreport_stats hiccup
24
25[testenv:pylint]
26deps =
27 -rrequirements.txt
28 -rrequirements-dev-pylint.txt
29commands =
30 pylint crashreports crashreport_stats hiccup
31
32[testenv:linters]
33deps =
34 {[testenv:flake8]deps}
35 {[testenv:pylint]deps}
36commands =
37 {[testenv:flake8]commands}
38 {[testenv:pylint]commands}
39
40# Flake8 configuration
41[flake8]
42format = ${cyan}%(path)s${reset}:${yellow_bold}%(row)d${reset}:${green_bold}%(col)d${reset}: ${red_bold}%(code)s${reset} %(text)s
Borjan Tchakaloff7a70e552018-08-02 16:26:34 +020043max-complexity = 10
Mitja Nikolaus959e2d62018-08-21 17:51:09 +020044max-line-length = 80
Mitja Nikolausd1995062018-07-30 14:10:27 +020045
46# Documentation
47# Shared commands for both docs options
48[docs]
49swagger_version = 1.3.3
50commands =
51 python manage.py generate_swagger --overwrite documentation/hiccup-api.json
52 wget -nc https://jcenter.bintray.com/io/github/swagger2markup/swagger2markup-cli/{[docs]swagger_version}/swagger2markup-cli-{[docs]swagger_version}.jar
53whitelist_externals=
54 java
55 wget
56
57# Create markdown docs
58[testenv:docs]
59deps = {[testenv]deps}
60commands =
61 {[docs]commands}
62 java -jar swagger2markup-cli-{[docs]swagger_version}.jar convert \
63 -f documentation/api-endpoints \
64 -i documentation/hiccup-api.json \
65 -c documentation/swagger.properties
66whitelist_externals = {[docs]whitelist_externals}
67
68# Create HTML docs
69[testenv:docs-html]
70deps = {[testenv]deps}
71commands =
72 {[docs]commands}
73 java -jar swagger2markup-cli-{[docs]swagger_version}.jar convert \
74 -f documentation/api-endpoints \
75 -i documentation/hiccup-api.json \
76 -c documentation/swagger-asciidoc.properties
77 asciidoctor documentation/api-endpoints.adoc
78whitelist_externals =
79 {[docs]whitelist_externals}
80 asciidoctor