diff --git a/.gitignore b/.gitignore index 178a9ee1..cfb9dd8b 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ env/ .DS_Store tags *.aux +.coverage diff --git a/.travis.yml b/.travis.yml index b6a2b0a7..b17a6857 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,3 +12,5 @@ install: - gem install mdl script: - make all +after_success: + - coveralls diff --git a/Makefile b/Makefile index 5670ff4e..42888d2b 100644 --- a/Makefile +++ b/Makefile @@ -14,6 +14,7 @@ syntax: mdl --rules ~MD036 etc test: cd backend && python manage.py test - cd sniffer && python test_sniff.py + cd sniffer && nosetests --with-coverage --cover-package=app,sniffer cd realtime && npm run test cd client && npm run test + coverage combine backend/.coverage sniffer/.coverage diff --git a/backend/backend/settings.py b/backend/backend/settings.py index cf075be1..4f517f48 100644 --- a/backend/backend/settings.py +++ b/backend/backend/settings.py @@ -38,6 +38,7 @@ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', + 'django_nose' ] MIDDLEWARE_CLASSES = [ @@ -162,3 +163,12 @@ } } } + +# Testing settings + +TEST_RUNNER = 'django_nose.NoseTestSuiteRunner' + +NOSE_ARGS = [ + '--with-coverage', + '--cover-package=breach' +] diff --git a/backend/requirements.txt b/backend/requirements.txt index 8103a5b5..41d93664 100644 --- a/backend/requirements.txt +++ b/backend/requirements.txt @@ -2,6 +2,9 @@ Django==1.9.2 PyYAML==3.11 argh==0.26.1 argparse==1.2.1 +coverage==4.2 +coveralls==1.1 +django-nose==1.4.4 funcsigs==0.4 mock==1.3.0 pathtools==0.1.2 diff --git a/sniffer/requirements.txt b/sniffer/requirements.txt index de67d52f..e650d012 100644 --- a/sniffer/requirements.txt +++ b/sniffer/requirements.txt @@ -2,3 +2,4 @@ Flask==0.10.1 scapy==2.3.2 tl.testing==0.5 mock==1.3.0 +nose==1.3.7