OpenSlides/fabfile.py

59 lines
1.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Fabric file for OpenSlides developers.
:copyright: 20112013 by OpenSlides team, see AUTHORS.
:license: GNU GPL, see LICENSE for more details.
"""
import os
import webbrowser
from fabric.api import local
from fabric.contrib import django
def test(module='tests'):
"""
Runs all unit tests for OpenSlides using coverage. The settings file
in the tests directory is used, therefor the environment
variable DJANGO_SETTINGS_MODULE is set to 'tests.settings'.
"""
django.settings_module('tests.settings')
local('coverage run ./manage.py test %s' % module)
def coverage():
"""
Runs all tests and builds the coverage html files. The index of these
files is opened in the end.
"""
test()
local('coverage html')
webbrowser.open(os.path.join(os.path.dirname(__file__), 'htmlcov', 'index.html'))
def pep8():
"""
Checks for PEP 8 errors in openslides and in tests.
"""
local('pep8 --max-line-length=150 --exclude="urls.py," --statistics openslides')
local('pep8 --max-line-length=150 --statistics tests')
def prepare_commit():
"""
Does everything before a commit should be done. At the moment it
does the same as travis_ci()
"""
travis_ci()
def travis_ci():
"""
Command that is run by Travis CI.
"""
test()
pep8()