diff --git a/.coveragerc b/.coveragerc new file mode 100644 index 0000000000..ed8dd1d86e --- /dev/null +++ b/.coveragerc @@ -0,0 +1,5 @@ +[run] +source = ./InvenTree +omit = + # Do not run coverage on migration files + */migrations/* \ No newline at end of file diff --git a/.gitignore b/.gitignore index ead4b16409..ec0bae4220 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,7 @@ InvenTree/media # Ignore PyCharm project configuration .idea/ + +# Coverage reports +.coverage +htmlcov/ \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 09f5fa6f2d..c386329854 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,3 +15,6 @@ before_install: script: - make test - make style + +after_success: + - coveralls \ No newline at end of file diff --git a/Makefile b/Makefile index 1c603e178e..831ab4ff3a 100644 --- a/Makefile +++ b/Makefile @@ -11,8 +11,11 @@ style: flake8 InvenTree --ignore=C901,E501 test: + # Perform Django system checks python InvenTree/manage.py check - python InvenTree/manage.py test --noinput + + # Run the test framework (through coverage script) + coverage run InvenTree/manage.py test migrate: python InvenTree/manage.py makemigrations company @@ -31,8 +34,5 @@ setup: install migrate setup_ci: pip install -U -r requirements/build.txt -develop: - pip install -U -r requirements/dev.txt - superuser: python InvenTree/manage.py createsuperuser diff --git a/requirements/build.txt b/requirements/build.txt index c400442ceb..9ec2467668 100644 --- a/requirements/build.txt +++ b/requirements/build.txt @@ -1,2 +1,4 @@ -r base.txt flake8==3.3.0 +coverage>=4.5.3 +python-coveralls==2.9.1 \ No newline at end of file