diff --git a/conf/requirements.pip b/conf/requirements.pip index 857f801..7a40cb2 100644 --- a/conf/requirements.pip +++ b/conf/requirements.pip @@ -1,14 +1,12 @@ -python-memcached==1.48 -pymongo==2.3 -django==1.4.1 -django-compressor==1.2 -django-gravatar==0.1.0 -django-tastypie==0.9.11 -django-social-auth==0.7.7 -django-debug-toolbar==0.9.4 -nltk==2.0.3 -numpy==1.6.2 -south==0.7.6 -lettuce==0.2.12 -django-markitup==1.0.0 -markdown==2.2.0 \ No newline at end of file +pymongo==3.5.1 +django==1.11.6 +django-compressor==2.2 +django-gravatar2==1.4.2 +django-tastypie==0.14.0 +django-debug-toolbar==1.8 +nltk==3.2.4 +numpy==1.13.1 +lettuce==0.2.23 +django-markitup==3.0.0 +markdown==2.6.9 +django-allauth==0.33.0 \ No newline at end of file diff --git a/web/dbpatterns/api/urls.py b/web/dbpatterns/api/urls.py index 25756ae..f338d39 100644 --- a/web/dbpatterns/api/urls.py +++ b/web/dbpatterns/api/urls.py @@ -1,13 +1,13 @@ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from documents.resources import DocumentResource from comments.resources import CommentResource from profiles.resources import UserResource -urlpatterns = patterns('', +urlpatterns = [ url(r'^', include(DocumentResource().urls)), url(r'^', include(CommentResource().urls)), # django views url(r'^users/$', UserResource.as_view()), -) +] diff --git a/web/dbpatterns/blog/migrations/0001_initial.py b/web/dbpatterns/blog/migrations/0001_initial.py index 18e5694..6611d6d 100644 --- a/web/dbpatterns/blog/migrations/0001_initial.py +++ b/web/dbpatterns/blog/migrations/0001_initial.py @@ -1,44 +1,33 @@ # -*- coding: utf-8 -*- -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - - -class Migration(SchemaMigration): - - def forwards(self, orm): - # Adding model 'Post' - db.create_table('blog_post', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('title', self.gf('django.db.models.fields.CharField')(max_length=255)), - ('slug', self.gf('django.db.models.fields.SlugField')(unique=True, max_length=255)), - ('content', self.gf('markitup.fields.MarkupField')(no_rendered_field=True)), - ('date_created', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), - ('date_modified', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, auto_now_add=True, blank=True)), - ('is_published', self.gf('django.db.models.fields.BooleanField')(default=True)), - ('_content_rendered', self.gf('django.db.models.fields.TextField')(blank=True)), - )) - db.send_create_signal('blog', ['Post']) - - - def backwards(self, orm): - # Deleting model 'Post' - db.delete_table('blog_post') - - - models = { - 'blog.post': { - 'Meta': {'ordering': "('-date_created',)", 'object_name': 'Post'}, - '_content_rendered': ('django.db.models.fields.TextField', [], {'blank': 'True'}), - 'content': ('markitup.fields.MarkupField', [], {'no_rendered_field': 'True'}), - 'date_created': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'date_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'auto_now_add': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_published': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'}) - } - } - - complete_apps = ['blog'] \ No newline at end of file +# Generated by Django 1.11.6 on 2017-10-18 21:40 +from __future__ import unicode_literals + +from django.db import migrations, models +import markitup.fields + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Post', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(max_length=255, verbose_name='Name')), + ('slug', models.SlugField(max_length=255, unique=True, verbose_name='Slug')), + ('content', markitup.fields.MarkupField(no_rendered_field=True, verbose_name='Content')), + ('date_created', models.DateTimeField(auto_now_add=True)), + ('date_modified', models.DateTimeField(auto_now=True)), + ('is_published', models.BooleanField(default=True, verbose_name='Published')), + ('_content_rendered', models.TextField(blank=True, editable=False)), + ], + options={ + 'ordering': ('-date_created',), + }, + ), + ] diff --git a/web/dbpatterns/blog/models.py b/web/dbpatterns/blog/models.py index 742e339..fbd60cf 100644 --- a/web/dbpatterns/blog/models.py +++ b/web/dbpatterns/blog/models.py @@ -22,7 +22,7 @@ class Post(models.Model): slug = models.SlugField(_("Slug"), max_length=255, unique=True) content = MarkupField(_("Content")) date_created = models.DateTimeField(auto_now_add=True) - date_modified = models.DateTimeField(auto_now=True, auto_now_add=True) + date_modified = models.DateTimeField(auto_now=True) is_published = models.BooleanField(_("Published"), default=True) objects = models.Manager() diff --git a/web/dbpatterns/blog/urls.py b/web/dbpatterns/blog/urls.py index a0a36df..165b005 100644 --- a/web/dbpatterns/blog/urls.py +++ b/web/dbpatterns/blog/urls.py @@ -1,11 +1,13 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url + +from django.contrib.sitemaps.views import sitemap from blog.sitemaps import BlogSitemap from blog.views import (BlogDetailView, BlogIndexView, BlogPostsRssFeed, BlogPostsAtomFeed) -urlpatterns = patterns('', +urlpatterns = [ # blog urls url(r'^$', BlogIndexView.as_view(), name="blog"), url(r'^(?P[-\w]+)/$', BlogDetailView.as_view(), name="blog_detail"), @@ -15,8 +17,8 @@ url(r'^feed/atom', BlogPostsAtomFeed(), name="blog_atom_feed"), # sitemap - url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', + url(r'^sitemap\.xml$', sitemap, {'sitemaps': { "blog": BlogSitemap() }}, name="blog_sitemap"), -) +] diff --git a/web/dbpatterns/comments/models.py b/web/dbpatterns/comments/models.py index b581156..2d80c10 100644 --- a/web/dbpatterns/comments/models.py +++ b/web/dbpatterns/comments/models.py @@ -3,7 +3,7 @@ from django.contrib.auth.models import User from django.core.urlresolvers import reverse -from gravatar.templatetags.gravatar import gravatar_for_email +from django_gravatar.templatetags.gravatar import gravatar_url from newsfeed.constants import NEWS_TYPE_COMMENT from profiles.models import AnonymousProfile @@ -31,7 +31,7 @@ def profile_url(self): @property def avatar_url(self): """Returns the gravar address of email""" - return gravatar_for_email(self.user.email, size=40) + return gravatar_url(self.user.email, size=40) @property def username(self): diff --git a/web/dbpatterns/dbpatterns/settings.py b/web/dbpatterns/dbpatterns/settings.py index fb2119f..4a0cf6d 100644 --- a/web/dbpatterns/dbpatterns/settings.py +++ b/web/dbpatterns/dbpatterns/settings.py @@ -2,7 +2,6 @@ import os DEBUG = True -TEMPLATE_DEBUG = DEBUG ADMINS = ( # ('Your Name', 'your_email@example.com'), @@ -67,36 +66,24 @@ STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', -# 'django.contrib.staticfiles.finders.DefaultStorageFinder', 'compressor.finders.CompressorFinder', ) -# List of callables that know how to import templates from various sources. -TEMPLATE_LOADERS = ( - 'django.template.loaders.filesystem.Loader', - 'django.template.loaders.app_directories.Loader', -# 'django.template.loaders.eggs.Loader', -) - -MIDDLEWARE_CLASSES = ( +MIDDLEWARE_CLASSES = [ 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware' -) +] ROOT_URLCONF = 'dbpatterns.urls' # Python dotted path to the WSGI application used by Django's runserver. WSGI_APPLICATION = 'dbpatterns.wsgi.application' -TEMPLATE_DIRS = ( - os.path.join(os.path.dirname(__file__), "templates") -) - INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', @@ -107,9 +94,7 @@ 'django.contrib.admin', 'django.contrib.humanize', - 'south', - 'gravatar', - 'social_auth', + 'django_gravatar', 'compressor', 'debug_toolbar', 'lettuce.django', @@ -121,19 +106,24 @@ 'blog', ) -TEMPLATE_CONTEXT_PROCESSORS = ( - 'django.contrib.auth.context_processors.auth', - 'django.core.context_processors.debug', - 'django.core.context_processors.i18n', - 'django.core.context_processors.media', - 'django.core.context_processors.static', - 'django.core.context_processors.tz', - 'django.core.context_processors.csrf', - 'django.contrib.messages.context_processors.messages', - - 'notifications.context_processors.notifications' - -) +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [os.path.join(os.path.dirname(__file__), "templates")], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.core.context_processors.static', + 'django.core.context_processors.i18n', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + 'notifications.context_processors.notifications' + ], + }, + }, +] # A sample logging configuration. The only tangible logging @@ -167,27 +157,8 @@ # Social Auth Settings -AUTHENTICATION_BACKENDS = ( - 'social_auth.backends.contrib.github.GithubBackend', - 'django.contrib.auth.backends.ModelBackend', -) - LOGIN_REDIRECT_URL = '/' -SOCIAL_AUTH_COMPLETE_URL_NAME = 'socialauth_complete' -SOCIAL_AUTH_ASSOCIATE_URL_NAME = 'socialauth_associate_complete' - -SOCIAL_AUTH_PIPELINE = ( - 'social_auth.backends.pipeline.social.social_auth_user', - 'social_auth.backends.pipeline.associate.associate_by_email', - 'social_auth.backends.pipeline.user.get_username', - 'social_auth.backends.pipeline.user.create_user', - 'social_auth.backends.pipeline.social.associate_user', - 'social_auth.backends.pipeline.social.load_extra_data', - 'social_auth.backends.pipeline.user.update_user_details', -) - - # MONGODB Settings MONGODB_DATABASE = "dbpatterns" @@ -214,17 +185,9 @@ "INTERCEPT_REDIRECTS": False } -# Memcached Settings -CACHES = { - 'default': { - 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', - 'LOCATION': '127.0.0.1:11211', - } -} # Testing LETTUCE_SERVER_PORT = 7000 -SOUTH_TESTS_MIGRATE = False # Markitup Settings MARKITUP_SET = 'markitup/sets/markdown' @@ -239,6 +202,6 @@ SOCKETIO_HOST = "http://localhost:8000" try: - from settings_local import * + from settings_local import * # noqa except ImportError: - pass \ No newline at end of file + pass diff --git a/web/dbpatterns/dbpatterns/settings_local.py.ex b/web/dbpatterns/dbpatterns/settings_local.py.ex index 9a2acc2..e955841 100644 --- a/web/dbpatterns/dbpatterns/settings_local.py.ex +++ b/web/dbpatterns/dbpatterns/settings_local.py.ex @@ -1,7 +1,6 @@ import os DEBUG = True -TEMPLATE_DEBUG = True COMPRESS_ENABLED = False @@ -21,4 +20,4 @@ GITHUB_APP_ID = "<<< GITHUB APP ID >>>" GITHUB_API_SECRET = "<<< GITHUB SECRET KEY >>" # Make this unique, and don't share it with anybody. -SECRET_KEY = '<<< SECRET KEY >>>' +SECRET_KEY = 'g3a#n@4)q&9p7fx&uix9+abfi_#l_wr6uk&!plax$6)7*i(9vh' diff --git a/web/dbpatterns/dbpatterns/urls.py b/web/dbpatterns/dbpatterns/urls.py index a160841..ff527de 100644 --- a/web/dbpatterns/dbpatterns/urls.py +++ b/web/dbpatterns/dbpatterns/urls.py @@ -1,11 +1,11 @@ -from django.conf.urls import patterns, include, url +from django.conf.urls import include, url from django.contrib import admin from documents.views import HomeView admin.autodiscover() -urlpatterns = patterns('', +urlpatterns = [ url(r'^$', HomeView.as_view(), name='home'), @@ -28,7 +28,4 @@ url(r'^', include('documents.legacy_urls')), url(r'^admin/', include(admin.site.urls)), - url(r'', include('social_auth.urls')), - - -) +] diff --git a/web/dbpatterns/documents/__init__.py b/web/dbpatterns/documents/__init__.py index b728bff..43bdf05 100644 --- a/web/dbpatterns/documents/__init__.py +++ b/web/dbpatterns/documents/__init__.py @@ -1,7 +1,7 @@ from django.conf import settings from django.utils.functional import SimpleLazyObject -from pymongo import Connection +from pymongo import MongoClient _connection = None @@ -9,7 +9,7 @@ def get_connection(): global _connection if not _connection: - _connection = Connection( + _connection = MongoClient( host=getattr(settings, 'MONGODB_HOST', None), port=getattr(settings, 'MONGODB_PORT', None) ) diff --git a/web/dbpatterns/documents/fields.py b/web/dbpatterns/documents/fields.py index 78a0991..83486fd 100644 --- a/web/dbpatterns/documents/fields.py +++ b/web/dbpatterns/documents/fields.py @@ -7,5 +7,5 @@ class SearchInput(forms.TextInput): def __init__(self, attrs=None, placeholder=None): super(SearchInput, self).__init__(attrs) - if placeholder not is None: + if placeholder is not None: self.attrs["placeholder"] = placeholder diff --git a/web/dbpatterns/documents/legacy_urls.py b/web/dbpatterns/documents/legacy_urls.py index 1663e69..2ba468d 100644 --- a/web/dbpatterns/documents/legacy_urls.py +++ b/web/dbpatterns/documents/legacy_urls.py @@ -1,9 +1,8 @@ -from django.conf.urls import url, patterns +from django.conf.urls import url from django.views.generic import RedirectView -urlpatterns = patterns( - '', - # Legacy URLs +urlpatterns = [ + # Legacy URLs url(r'^my-documents/$', RedirectView.as_view(url="/documents/")), @@ -28,4 +27,4 @@ url="/documents/%(slug)s/fork")), url(r'^star/(?P[-\w]+)/$', RedirectView.as_view( url="/documents/%(slug)s/star")), -) \ No newline at end of file +] diff --git a/web/dbpatterns/documents/urls.py b/web/dbpatterns/documents/urls.py index 276e288..f6ed108 100644 --- a/web/dbpatterns/documents/urls.py +++ b/web/dbpatterns/documents/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from documents.views import (DocumentDetailView, ExportDocumentView, DocumentForksView, DocumentStarsView, @@ -6,8 +6,7 @@ ForkDocumentView, StarDocumentView, SearchDocumentView) -urlpatterns = patterns( - '', +urlpatterns = [ url(r'^$', MyDocumentsView.as_view(), name='my_documents'), url(r'^search$', SearchDocumentView.as_view(), name='search_document'), url(r'^new$', NewDocumentView.as_view(), name='new_document'), @@ -25,4 +24,4 @@ name='fork_document'), url(r'^(?P[-\w]+)/star$', StarDocumentView.as_view(), name='star_document'), -) +] diff --git a/web/dbpatterns/notifications/urls.py b/web/dbpatterns/notifications/urls.py index 7dd1547..3fab27e 100644 --- a/web/dbpatterns/notifications/urls.py +++ b/web/dbpatterns/notifications/urls.py @@ -1,9 +1,9 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from notifications.views import NotificationListView -urlpatterns = patterns('', +urlpatterns = [ url(r'^$', NotificationListView.as_view(), name='notifications'), -) +] diff --git a/web/dbpatterns/profiles/admin.py b/web/dbpatterns/profiles/admin.py index 8708fd7..9f29978 100644 --- a/web/dbpatterns/profiles/admin.py +++ b/web/dbpatterns/profiles/admin.py @@ -2,7 +2,7 @@ from django.contrib.auth.admin import UserAdmin from django.contrib.auth.models import User -from gravatar.templatetags.gravatar import gravatar_for_user +from django_gravatar.templatetags.gravatar import gravatar_url from profiles.models import FollowedProfile @@ -21,7 +21,7 @@ class ProfileAdmin(UserAdmin): inlines = [FollowedProfileInline] def gravatar(self, obj): - return '' % gravatar_for_user(obj) + return '' % gravatar_url(obj) gravatar.allow_tags = True diff --git a/web/dbpatterns/profiles/migrations/0001_initial.py b/web/dbpatterns/profiles/migrations/0001_initial.py index 75560d9..3240aa3 100644 --- a/web/dbpatterns/profiles/migrations/0001_initial.py +++ b/web/dbpatterns/profiles/migrations/0001_initial.py @@ -1,70 +1,27 @@ # -*- coding: utf-8 -*- -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models +# Generated by Django 1.11.6 on 2017-10-18 21:41 +from __future__ import unicode_literals +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion -class Migration(SchemaMigration): - def forwards(self, orm): - # Adding model 'FollowedProfile' - db.create_table('profiles_followedprofile', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('follower', self.gf('django.db.models.fields.related.ForeignKey')(related_name='following', to=orm['auth.User'])), - ('following', self.gf('django.db.models.fields.related.ForeignKey')(related_name='followers', to=orm['auth.User'])), - )) - db.send_create_signal('profiles', ['FollowedProfile']) +class Migration(migrations.Migration): + initial = True - def backwards(self, orm): - # Deleting model 'FollowedProfile' - db.delete_table('profiles_followedprofile') + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] - - models = { - 'auth.group': { - 'Meta': {'object_name': 'Group'}, - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - 'auth.permission': { - 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - 'auth.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'profiles.followedprofile': { - 'Meta': {'object_name': 'FollowedProfile'}, - 'follower': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'following'", 'to': "orm['auth.User']"}), - 'following': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'followers'", 'to': "orm['auth.User']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) - } - } - - complete_apps = ['profiles'] \ No newline at end of file + operations = [ + migrations.CreateModel( + name='FollowedProfile', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('follower', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='following', to=settings.AUTH_USER_MODEL)), + ('following', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='followers', to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/web/dbpatterns/profiles/resources.py b/web/dbpatterns/profiles/resources.py index 5273c7b..6d753ec 100644 --- a/web/dbpatterns/profiles/resources.py +++ b/web/dbpatterns/profiles/resources.py @@ -2,7 +2,7 @@ from django.db.models import Q from django.views.generic import ListView -from gravatar.templatetags.gravatar import gravatar_for_user +from django_gravatar.templatetags.gravatar import gravatar_url from profiles.mixins import JSONResponseMixin @@ -25,7 +25,7 @@ def get_queryset(self): return [dict(id=user.id, label=user.username, - avatar=gravatar_for_user(user, size=40)) for user in users] + avatar=gravatar_url(user, size=40)) for user in users] def render_to_response(self, context, **response_kwargs): return super(UserResource, self).render_to_response( diff --git a/web/dbpatterns/profiles/urls.py b/web/dbpatterns/profiles/urls.py index adf17d9..0ab557f 100644 --- a/web/dbpatterns/profiles/urls.py +++ b/web/dbpatterns/profiles/urls.py @@ -1,10 +1,10 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from django.views.generic import TemplateView from profiles.views import (RegistrationView, LoginView, LogoutView, ProfileDetailView) -urlpatterns = patterns('', +urlpatterns = [ url(r'^login/$', LoginView.as_view( template_name="auth/login.html"), name='auth_login'), url(r'^logout/$', LogoutView.as_view(), name='auth_logout'), @@ -14,4 +14,4 @@ template_name="auth/complete.html"), name='auth_registration_complete'), url(r'^profile/(?P[\w\._-]+)/$', ProfileDetailView.as_view( template_name="auth/profile.html"), name='auth_profile'), -) +] diff --git a/web/dbpatterns/terrain.py b/web/dbpatterns/terrain.py index 1d4949f..3fdcf68 100644 --- a/web/dbpatterns/terrain.py +++ b/web/dbpatterns/terrain.py @@ -1,70 +1,70 @@ -import logging -import os -import sys +# import logging +# import os +# import sys -from django.conf import settings -from django.core.management import call_command -from django.test.simple import DjangoTestSuiteRunner +# from django.conf import settings +# from django.core.management import call_command +# from django.test.runner import DiscoverRunner -from lettuce import * +# from lettuce import * -from documents.models import Document -from newsfeed.models import Entry -from notifications.models import Notification +# from documents.models import Document +# from newsfeed.models import Entry +# from notifications.models import Notification -@before.all -def switch_to_test_database(): - """ - Switching to the test database - """ - logging.info("Setting up a test database ...\n") +# @before.all +# def switch_to_test_database(): +# """ +# Switching to the test database +# """ +# logging.info("Setting up a test database ...\n") - try: - from south.management.commands import patch_for_test_db_setup +# try: +# from south.management.commands import patch_for_test_db_setup - patch_for_test_db_setup() - except ImportError: - pass +# patch_for_test_db_setup() +# except ImportError: +# pass - world.test_runner = DjangoTestSuiteRunner(interactive=False) - world.test_runner.setup_test_environment() - world.test_db = world.test_runner.setup_databases() - call_command('syncdb', **{ - 'settings': settings.SETTINGS_MODULE, - 'interactive': False, - 'verbosity': 0}) +# world.test_runner = DiscoverRunner(interactive=False) +# world.test_runner.setup_test_environment() +# world.test_db = world.test_runner.setup_databases() +# call_command('syncdb', **{ +# 'settings': settings.SETTINGS_MODULE, +# 'interactive': False, +# 'verbosity': 0}) - # Reload mongodb database - settings.MONGODB_DATABASE = settings.MONGODB_TEST_DATABASE - for model in [Document, Entry, Notification]: - model.objects.load() - model.objects.collection.remove() +# # Reload mongodb database +# settings.MONGODB_DATABASE = settings.MONGODB_TEST_DATABASE +# for model in [Document, Entry, Notification]: +# model.objects.load() +# model.objects.collection.remove() -@after.all -def after_all(total): - logging.info("Destroy test database ...\n") +# @after.all +# def after_all(total): +# logging.info("Destroy test database ...\n") - # Destroy database. - world.test_runner.teardown_databases(world.test_db) +# # Destroy database. +# world.test_runner.teardown_databases(world.test_db) - # Tear Down the test environment. - world.test_runner.teardown_test_environment() +# # Tear Down the test environment. +# world.test_runner.teardown_test_environment() -@after.each_scenario -def before_each_feature(scenario): - logging.info("Flusing db ... \n") +# @after.each_scenario +# def before_each_feature(scenario): +# logging.info("Flusing db ... \n") - call_command('flush', **{ - 'settings': settings.SETTINGS_MODULE, - 'interactive': False}) +# call_command('flush', **{ +# 'settings': settings.SETTINGS_MODULE, +# 'interactive': False}) -def setup_test_directory(): - sys.path.append(os.path.join(os.path.dirname(__file__), "../../tests")) - __import__("steps") +# def setup_test_directory(): +# sys.path.append(os.path.join(os.path.dirname(__file__), "../../tests")) +# __import__("steps") -setup_test_directory() \ No newline at end of file +# setup_test_directory()