FAQ | This is a LIVE service | Changelog

Skip to content
Snippets Groups Projects
Commit 25a1ac3a authored by Dr Abraham Martin's avatar Dr Abraham Martin
Browse files

added django 1.9 support

parent 788215df
Branches run-pipeline
No related tags found
No related merge requests found
django>=1.7
django>=1.7,<1.10
django-jenkins
coverage<4.0
coverage
pylint
pep8>=1.3
pyflakes
......
import logging
import os, sys
import os
import sys
import django
from django.conf import settings
from django.test.runner import DiscoverRunner
DIRNAME = os.path.dirname(__file__)
from django.conf import settings
settings.configure(
DEBUG=False,
DATABASES={'default': {'ENGINE': 'django.db.backends.sqlite3', 'NAME': 'test.db', }},
......@@ -18,7 +20,8 @@ settings.configure(
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'ucamlookup', ),
'ucamlookup',
),
MIDDLEWARE_CLASSES=(
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
......@@ -27,14 +30,35 @@ settings.configure(
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
),
TEMPLATES=[
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
# insert your TEMPLATE_DIRS here
],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
# Insert your TEMPLATE_CONTEXT_PROCESSORS here or use this
# list if you haven't customized them:
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
],
},
},
]
)
logging.basicConfig()
django.setup()
from django.test.runner import DiscoverRunner
test_runner = DiscoverRunner()
failures = test_runner.run_tests(['ucamlookup', ])
if failures:
sys.exit(failures)
\ No newline at end of file
sys.exit(failures)
import os, sys
import os
import sys
from django.core.management import execute_from_command_line
from django.conf import settings
settings.configure(
DEBUG=False,
DATABASES={'default': {'ENGINE': 'django.db.backends.sqlite3', 'NAME': 'test.db', }},
TIME_ZONE='Europe/London',
USE_TZ=True,
ROOT_URLCONF='ucamlookup.urls',
PROJECT_APPS = (
PROJECT_APPS=(
'ucamlookup',
),
INSTALLED_APPS=(
......@@ -18,7 +20,8 @@ settings.configure(
'django.contrib.messages',
'django.contrib.staticfiles',
'ucamlookup',
'django_jenkins', ),
'django_jenkins',
),
MIDDLEWARE_CLASSES=(
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
......@@ -27,15 +30,37 @@ settings.configure(
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
),
JENKINS_TASKS = (
TEMPLATES=[
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
# insert your TEMPLATE_DIRS here
],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
# Insert your TEMPLATE_CONTEXT_PROCESSORS here or use this
# list if you haven't customized them:
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
],
},
},
],
JENKINS_TASKS=(
'django_jenkins.tasks.run_pylint',
# 'django_jenkins.tasks.run_csslint',
'django_jenkins.tasks.run_pep8',
'django_jenkins.tasks.run_pyflakes',
'django_jenkins.tasks.run_sloccount',
),
PEP8_RCFILE = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'jenkins/pep8'),
PYLINT_RCFILE = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'jenkins/pylint'),
PEP8_RCFILE=os.path.join(os.path.dirname(os.path.dirname(__file__)), 'jenkins/pep8'),
PYLINT_RCFILE=os.path.join(os.path.dirname(os.path.dirname(__file__)), 'jenkins/pylint'),
)
execute_from_command_line(sys.argv)
\ No newline at end of file
execute_from_command_line(sys.argv)
from django.db.models.signals import pre_save
from django.dispatch import receiver
from .models import LookupGroup
from utils import *
@receiver(pre_save, sender=User)
def add_name_to_user(instance, **kwargs):
user = instance
if user is not None:
user.last_name = return_visibleName_by_crsid(user.username)[:30]
@receiver(pre_save, sender=LookupGroup)
def add_title_to_group(instance, **kwargs):
group = instance
if group is not None:
group.name = return_title_by_groupid(group.lookup_id)[:80]
default_app_config = 'ucamlookup.apps.UCamLookupConfig'
from django.apps import AppConfig
class UCamLookupConfig(AppConfig):
name = 'ucamlookup'
verbose_name = 'University of Cambridge Django Lookup app'
def ready(self):
super(UCamLookupConfig, self).ready()
import ucamlookup.signals
......@@ -6,4 +6,4 @@ class LookupGroup(models.Model):
lookup_id = models.CharField(max_length=255, unique=True)
def __str__(self):
return "%s (%s)" % (self.name, self.lookup_id)
\ No newline at end of file
return "%s (%s)" % (self.name, self.lookup_id)
from django.contrib.auth.models import User
from django.db.models.signals import pre_save
from django.dispatch import receiver
from .models import LookupGroup
from .utils import return_visibleName_by_crsid, return_title_by_groupid
@receiver(pre_save, sender=User)
def add_name_to_user(instance, **kwargs):
user = instance
if user is not None:
user.last_name = return_visibleName_by_crsid(user.username)[:30]
@receiver(pre_save, sender=LookupGroup)
def add_title_to_group(instance, **kwargs):
group = instance
if group is not None:
group.name = return_title_by_groupid(group.lookup_id)[:80]
......@@ -2,9 +2,10 @@ from django.contrib.auth.models import User
from django.core.exceptions import ValidationError
from django.core.urlresolvers import reverse
from django.test import TestCase
from ucamlookup import user_in_groups, get_users_from_query, return_visibleName_by_crsid, get_groups_from_query, \
from .models import LookupGroup
from .utils import user_in_groups, get_users_from_query, return_visibleName_by_crsid, get_groups_from_query, \
return_title_by_groupid, get_group_ids_of_a_user_in_lookup, get_institutions, get_institution_name_by_id, \
LookupGroup, validate_crsids
validate_crsids
class UcamLookupTests(TestCase):
......@@ -94,11 +95,11 @@ class UcamLookupTests(TestCase):
def test_views_without_login(self):
response = self.client.get(reverse('ucamlookup_find_people'), {'query': 'amc203', 'searchId_u': '1'})
self.assertEqual(response.status_code, 302)
self.assertTrue(response.url.startswith('http://testserver/accounts/login/'))
self.assertTrue(response.url.startswith('/accounts/login/'))
response = self.client.get(reverse('ucamlookup_find_groups'), {'query': 'Information Systems',
'searchId_g': '1'})
self.assertEqual(response.status_code, 302)
self.assertTrue(response.url.startswith('http://testserver/accounts/login/'))
self.assertTrue(response.url.startswith('/accounts/login/'))
def test_findpeople_view(self):
User.objects.create_user(username="amc203", password="test")
......
import django
from django.conf.urls import patterns, url
from views import find_people, find_groups
urlpatterns = patterns('',
url(r'findPeople$', find_people, name='ucamlookup_find_people'),
url(r'findGroups$', find_groups, name='ucamlookup_find_groups'),
)
\ No newline at end of file
if django.VERSION[0] <= 1 and django.VERSION[1] <= 7:
urlpatterns = patterns(
'',
url(r'findPeople$', find_people, name='ucamlookup_find_people'),
url(r'findGroups$', find_groups, name='ucamlookup_find_groups'),
)
else:
urlpatterns = [
url(r'findPeople$', find_people, name='ucamlookup_find_people'),
url(r'findGroups$', find_groups, name='ucamlookup_find_groups'),
]
import re
from django.contrib.auth.models import User
from django.core.exceptions import ValidationError
import re
from ibisclient import *
from ucamlookup import LookupGroup
from ucamlookup.models import LookupGroup
conn = createConnection()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment