diff --git a/AUTHORS b/AUTHORS index 2b6ca325ece..a33102a1a32 100644 --- a/AUTHORS +++ b/AUTHORS @@ -3,4 +3,4 @@ Muhammad Shoaib Afzal Wali Mushtaq Ali Christina Roberts - +Dennis Jen diff --git a/edx_proctoring/__init__.py b/edx_proctoring/__init__.py index f2a35070d33..33c5edc0a54 100644 --- a/edx_proctoring/__init__.py +++ b/edx_proctoring/__init__.py @@ -4,6 +4,6 @@ from __future__ import absolute_import -__version__ = '0.18.1' +__version__ = '0.18.2' default_app_config = 'edx_proctoring.apps.EdxProctoringConfig' # pylint: disable=invalid-name diff --git a/edx_proctoring/management/commands/set_attempt_status.py b/edx_proctoring/management/commands/set_attempt_status.py index fe4f5467261..ee17089ceee 100644 --- a/edx_proctoring/management/commands/set_attempt_status.py +++ b/edx_proctoring/management/commands/set_attempt_status.py @@ -4,9 +4,7 @@ from __future__ import absolute_import -from optparse import make_option - -from django.core.management.base import BaseCommand +from django.core.management.base import BaseCommand, CommandError from edx_proctoring.models import ProctoredExamStudentAttemptStatus @@ -16,20 +14,28 @@ class Command(BaseCommand): Django Management command to force a background check of all possible notifications """ - option_list = BaseCommand.option_list + ( - make_option('-e', '--exam', - metavar='EXAM_ID', - dest='exam_id', - help='exam_id to change'), - make_option('-u', '--user', - metavar='USER', - dest='user_id', - help="user_id of user to affect"), - make_option('-t', '--to', - metavar='TO_STATUS', - dest='to_status', - help='the status to set'), - ) + def add_arguments(self, parser): + parser.add_argument( + '-e', + '--exam', + metavar='EXAM_ID', + dest='exam_id', + help='exam_id to change', + ) + parser.add_argument( + '-u', + '--user', + metavar='USER', + dest='user_id', + help='user_id of user to affect', + ) + parser.add_argument( + '-t', + '--to', + metavar='TO_STATUS', + dest='to_status', + help='the status to set', + ) def handle(self, *args, **options): """ @@ -56,7 +62,7 @@ def handle(self, *args, **options): print msg if not ProctoredExamStudentAttemptStatus.is_valid_status(to_status): - raise Exception('{to_status} is not a valid attempt status!'.format(to_status=to_status)) + raise CommandError('{to_status} is not a valid attempt status!'.format(to_status=to_status)) # get exam, this will throw exception if does not exist, so let it bomb out get_exam_by_id(exam_id) diff --git a/edx_proctoring/urls.py b/edx_proctoring/urls.py index ea13843538b..eb628c42622 100644 --- a/edx_proctoring/urls.py +++ b/edx_proctoring/urls.py @@ -5,12 +5,11 @@ from __future__ import absolute_import from django.conf import settings -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from edx_proctoring import views, callbacks -urlpatterns = patterns( # pylint: disable=invalid-name - '', +urlpatterns = [ url( r'edx_proctoring/v1/proctored_exam/exam$', views.ProctoredExamView.as_view(), @@ -89,4 +88,4 @@ name='edx_proctoring.anonymous.proctoring_review_callback' ), url(r'^', include('rest_framework.urls', namespace='rest_framework')) -) +] diff --git a/test_settings.py b/test_settings.py index ddc2eaf37f1..c00b13e6141 100644 --- a/test_settings.py +++ b/test_settings.py @@ -100,3 +100,10 @@ DEFAULT_FROM_EMAIL = 'no-reply@example.com' CONTACT_EMAIL = 'info@edx.org' TECH_SUPPORT_EMAIL = 'technical@example.com' + +########## TEMPLATE CONFIGURATION +TEMPLATES = [{ + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'APP_DIRS': True, +}] +########## END TEMPLATE CONFIGURATION diff --git a/tox.ini b/tox.ini index e7830469895..586400c0bce 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = {py27}-django{18} +envlist = {py27}-django{18,111} [doc8] max-line-length = 120 @@ -21,8 +21,7 @@ setenv = DJANGO_SETTINGS_MODULE = test_settings deps = django18: Django>=1.8,<1.9 - django19: Django>=1.9,<1.10 - django110: Django>=1.10,<1.11 + django111: Django>=1.11,<2.0 -rrequirements/test.txt commands = coverage run ./manage.py test {posargs}