-
Notifications
You must be signed in to change notification settings - Fork 124
/
Makefile
50 lines (38 loc) · 1.38 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
###
# test, coverage and lint
###
PYTEST_JUNIT_ARGS = --junitxml=tests_xml/tests.xml
PYTEST_COV_ARGS = \
--cov --cov-config=.coveragerc --cov-report html:coverage \
--cov-report xml:coverage.xml --cov-report term:skip-covered
PYTEST_ARGS = $(PYTEST_JUNIT_ARGS) $(PYTEST_COV_ARGS)
.PHONY : help
help: ## Use one of the following instructions:
@fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sed -e 's/\\$$//' | sed -e 's/##//'
.PHONY : lint
lint : ## Static code analysis with Pylint
pylint -ry climada > pylint.log || true
.PHONY : unit_test
unit_test : ## Unit tests execution with coverage and xml reports
pytest $(PYTEST_ARGS) --ignore=climada/test climada/
.PHONY : install_test
install_test : ## Test installation was successful
pytest $(PYTEST_JUNIT_ARGS) --pyargs climada.engine.test.test_cost_benefit \
climada.engine.test.test_impact
.PHONY : data_test
data_test : ## Test data APIs
python script/jenkins/test_data_api.py
.PHONY : notebook_test
notebook_test : ## Test notebooks in doc/tutorial
python script/jenkins/test_notebooks.py report
.PHONY : integ_test
integ_test : ## Integration tests execution with xml reports
pytest $(PYTEST_ARGS) climada/test/
.PHONY : test
test : ## Unit and integration tests execution with coverage and xml reports
pytest $(PYTEST_ARGS) climada/
.PHONY : ci-clean
ci-clean :
rm -rf tests_xml
rm pylint.log coverage.xml
rm -r coverage