From cc17df7a1c6aa9567ad9379cbe30b2b416088ab8 Mon Sep 17 00:00:00 2001 From: Kalil de Lima Date: Tue, 12 May 2020 10:06:35 -0300 Subject: [PATCH 1/2] build passing tests failing --- credits/models.py | 6 +- drip/admin.py | 6 +- drip/drips.py | 2 +- drip/migrations/0001_initial.py | 128 ------------------ ...__add_field_drip_from_email_name__add_f.py | 119 ---------------- ...0003_auto__add_field_drip_message_class.py | 94 ------------- drip/migrations/__init__.py | 0 drip/models.py | 18 ++- drip/tests.py | 2 +- drip/utils.py | 2 +- requirements.txt | 1 - test_urls.py | 7 +- testsettings.py | 26 +++- 13 files changed, 55 insertions(+), 356 deletions(-) delete mode 100644 drip/migrations/0001_initial.py delete mode 100644 drip/migrations/0002_auto__add_field_drip_from_email__add_field_drip_from_email_name__add_f.py delete mode 100644 drip/migrations/0003_auto__add_field_drip_message_class.py delete mode 100644 drip/migrations/__init__.py diff --git a/credits/models.py b/credits/models.py index dd847f6..bc307a5 100644 --- a/credits/models.py +++ b/credits/models.py @@ -6,7 +6,11 @@ class Profile(models.Model): """ For testing, track the number of "credits". """ - user = models.OneToOneField('auth.User', related_name='profile') + user = models.OneToOneField( + 'auth.User', + related_name='profile', + on_delete=models.CASCADE, + ) credits = models.PositiveIntegerField(default=0) diff --git a/drip/admin.py b/drip/admin.py index 9c1d5a1..387d7af 100644 --- a/drip/admin.py +++ b/drip/admin.py @@ -87,9 +87,9 @@ def change_view(self, request, object_id, extra_context=None): request, object_id, extra_context=self.build_extra_context(extra_context)) def get_urls(self): - from django.conf.urls import patterns, url + from django.conf.urls import url urls = super(DripAdmin, self).get_urls() - my_urls = patterns('', + my_urls = [ url( r'^(?P[\d]+)/timeline/(?P[\d]+)/(?P[\d]+)/$', self.av(self.timeline), @@ -100,7 +100,7 @@ def get_urls(self): self.av(self.view_drip_email), name='view_drip_email' ) - ) + ] return my_urls + urls admin.site.register(Drip, DripAdmin) diff --git a/drip/drips.py b/drip/drips.py index 87b27aa..499caa4 100644 --- a/drip/drips.py +++ b/drip/drips.py @@ -4,7 +4,7 @@ from django.conf import settings from django.db.models import Q from django.template import Context, Template -from django.utils.importlib import import_module +from importlib import import_module from django.core.mail import EmailMultiAlternatives from django.utils.html import strip_tags diff --git a/drip/migrations/0001_initial.py b/drip/migrations/0001_initial.py deleted file mode 100644 index 914041f..0000000 --- a/drip/migrations/0001_initial.py +++ /dev/null @@ -1,128 +0,0 @@ -# -*- 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 'Drip' - db.create_table('drip_drip', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), - ('lastchanged', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), - ('name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)), - ('enabled', self.gf('django.db.models.fields.BooleanField')(default=False)), - ('subject_template', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - ('body_html_template', self.gf('django.db.models.fields.TextField')(null=True, blank=True)), - )) - db.send_create_signal('drip', ['Drip']) - - # Adding model 'SentDrip' - db.create_table('drip_sentdrip', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), - ('drip', self.gf('django.db.models.fields.related.ForeignKey')(related_name='sent_drips', to=orm['drip.Drip'])), - ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='sent_drips', to=orm['auth.User'])), - ('subject', self.gf('django.db.models.fields.TextField')()), - ('body', self.gf('django.db.models.fields.TextField')()), - )) - db.send_create_signal('drip', ['SentDrip']) - - # Adding model 'QuerySetRule' - db.create_table('drip_querysetrule', ( - ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('date', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), - ('lastchanged', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), - ('drip', self.gf('django.db.models.fields.related.ForeignKey')(related_name='queryset_rules', to=orm['drip.Drip'])), - ('method_type', self.gf('django.db.models.fields.CharField')(default='filter', max_length=12)), - ('field_name', self.gf('django.db.models.fields.CharField')(max_length=128)), - ('lookup_type', self.gf('django.db.models.fields.CharField')(default='exact', max_length=12)), - ('field_value', self.gf('django.db.models.fields.CharField')(max_length=255)), - )) - db.send_create_signal('drip', ['QuerySetRule']) - - - def backwards(self, orm): - # Deleting model 'Drip' - db.delete_table('drip_drip') - - # Deleting model 'SentDrip' - db.delete_table('drip_sentdrip') - - # Deleting model 'QuerySetRule' - db.delete_table('drip_querysetrule') - - - 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'}) - }, - 'drip.drip': { - 'Meta': {'object_name': 'Drip'}, - 'body_html_template': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'enabled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lastchanged': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'subject_template': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}) - }, - 'drip.querysetrule': { - 'Meta': {'object_name': 'QuerySetRule'}, - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'drip': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'queryset_rules'", 'to': "orm['drip.Drip']"}), - 'field_name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'field_value': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lastchanged': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), - 'lookup_type': ('django.db.models.fields.CharField', [], {'default': "'exact'", 'max_length': '12'}), - 'method_type': ('django.db.models.fields.CharField', [], {'default': "'filter'", 'max_length': '12'}) - }, - 'drip.sentdrip': { - 'Meta': {'object_name': 'SentDrip'}, - 'body': ('django.db.models.fields.TextField', [], {}), - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'drip': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sent_drips'", 'to': "orm['drip.Drip']"}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'subject': ('django.db.models.fields.TextField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sent_drips'", 'to': "orm['auth.User']"}) - } - } - - complete_apps = ['drip'] diff --git a/drip/migrations/0002_auto__add_field_drip_from_email__add_field_drip_from_email_name__add_f.py b/drip/migrations/0002_auto__add_field_drip_from_email__add_field_drip_from_email_name__add_f.py deleted file mode 100644 index f287ae7..0000000 --- a/drip/migrations/0002_auto__add_field_drip_from_email__add_field_drip_from_email_name__add_f.py +++ /dev/null @@ -1,119 +0,0 @@ -# -*- 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 field 'Drip.from_email' - db.add_column('drip_drip', 'from_email', - self.gf('django.db.models.fields.EmailField')(max_length=75, null=True, blank=True), - keep_default=False) - - # Adding field 'Drip.from_email_name' - db.add_column('drip_drip', 'from_email_name', - self.gf('django.db.models.fields.CharField')(max_length=150, null=True, blank=True), - keep_default=False) - - # Adding field 'SentDrip.from_email' - db.add_column('drip_sentdrip', 'from_email', - self.gf('django.db.models.fields.EmailField')(default=None, max_length=75, null=True), - keep_default=False) - - # Adding field 'SentDrip.from_email_name' - db.add_column('drip_sentdrip', 'from_email_name', - self.gf('django.db.models.fields.CharField')(default=None, max_length=150, null=True), - keep_default=False) - - - def backwards(self, orm): - # Deleting field 'Drip.from_email' - db.delete_column('drip_drip', 'from_email') - - # Deleting field 'Drip.from_email_name' - db.delete_column('drip_drip', 'from_email_name') - - # Deleting field 'SentDrip.from_email' - db.delete_column('drip_sentdrip', 'from_email') - - # Deleting field 'SentDrip.from_email_name' - db.delete_column('drip_sentdrip', 'from_email_name') - - - 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'}) - }, - 'drip.drip': { - 'Meta': {'object_name': 'Drip'}, - 'body_html_template': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'enabled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'from_email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}), - 'from_email_name': ('django.db.models.fields.CharField', [], {'max_length': '150', 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lastchanged': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'subject_template': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}) - }, - 'drip.querysetrule': { - 'Meta': {'object_name': 'QuerySetRule'}, - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'drip': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'queryset_rules'", 'to': "orm['drip.Drip']"}), - 'field_name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'field_value': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lastchanged': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), - 'lookup_type': ('django.db.models.fields.CharField', [], {'default': "'exact'", 'max_length': '12'}), - 'method_type': ('django.db.models.fields.CharField', [], {'default': "'filter'", 'max_length': '12'}) - }, - 'drip.sentdrip': { - 'Meta': {'object_name': 'SentDrip'}, - 'body': ('django.db.models.fields.TextField', [], {}), - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'drip': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sent_drips'", 'to': "orm['drip.Drip']"}), - 'from_email': ('django.db.models.fields.EmailField', [], {'default': 'None', 'max_length': '75', 'null': 'True'}), - 'from_email_name': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '150', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'subject': ('django.db.models.fields.TextField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sent_drips'", 'to': "orm['auth.User']"}) - } - } - - complete_apps = ['drip'] \ No newline at end of file diff --git a/drip/migrations/0003_auto__add_field_drip_message_class.py b/drip/migrations/0003_auto__add_field_drip_message_class.py deleted file mode 100644 index 5851455..0000000 --- a/drip/migrations/0003_auto__add_field_drip_message_class.py +++ /dev/null @@ -1,94 +0,0 @@ -# -*- 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 field 'Drip.message_class' - db.add_column('drip_drip', 'message_class', - self.gf('django.db.models.fields.CharField')(default='default', max_length=120, blank=True), - keep_default=False) - - def backwards(self, orm): - # Deleting field 'Drip.message_class' - db.delete_column('drip_drip', 'message_class') - - 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'}) - }, - 'drip.drip': { - 'Meta': {'object_name': 'Drip'}, - 'body_html_template': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'enabled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'from_email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}), - 'from_email_name': ('django.db.models.fields.CharField', [], {'max_length': '150', 'null': 'True', 'blank': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lastchanged': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), - 'message_class': ('django.db.models.fields.CharField', [], {'default': "'default'", 'max_length': '120', 'blank': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}), - 'subject_template': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}) - }, - 'drip.querysetrule': { - 'Meta': {'object_name': 'QuerySetRule'}, - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'drip': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'queryset_rules'", 'to': "orm['drip.Drip']"}), - 'field_name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'field_value': ('django.db.models.fields.CharField', [], {'max_length': '255'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lastchanged': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), - 'lookup_type': ('django.db.models.fields.CharField', [], {'default': "'exact'", 'max_length': '12'}), - 'method_type': ('django.db.models.fields.CharField', [], {'default': "'filter'", 'max_length': '12'}) - }, - 'drip.sentdrip': { - 'Meta': {'object_name': 'SentDrip'}, - 'body': ('django.db.models.fields.TextField', [], {}), - 'date': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'drip': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sent_drips'", 'to': "orm['drip.Drip']"}), - 'from_email': ('django.db.models.fields.EmailField', [], {'default': 'None', 'max_length': '75', 'null': 'True'}), - 'from_email_name': ('django.db.models.fields.CharField', [], {'default': 'None', 'max_length': '150', 'null': 'True'}), - 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'subject': ('django.db.models.fields.TextField', [], {}), - 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sent_drips'", 'to': "orm['auth.User']"}) - } - } - - complete_apps = ['drip'] \ No newline at end of file diff --git a/drip/migrations/__init__.py b/drip/migrations/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/drip/models.py b/drip/models.py index 94fa400..4d8a3b1 100644 --- a/drip/models.py +++ b/drip/models.py @@ -54,8 +54,16 @@ class SentDrip(models.Model): """ date = models.DateTimeField(auto_now_add=True) - drip = models.ForeignKey('drip.Drip', related_name='sent_drips') - user = models.ForeignKey(getattr(settings, 'AUTH_USER_MODEL', 'auth.User'), related_name='sent_drips') + drip = models.ForeignKey( + 'drip.Drip', + related_name='sent_drips', + on_delete=models.CASCADE, + ) + user = models.ForeignKey( + getattr(settings, 'AUTH_USER_MODEL', 'auth.User'), + related_name='sent_drips', + on_delete=models.CASCADE, + ) subject = models.TextField() body = models.TextField() @@ -94,7 +102,11 @@ class QuerySetRule(models.Model): date = models.DateTimeField(auto_now_add=True) lastchanged = models.DateTimeField(auto_now=True) - drip = models.ForeignKey(Drip, related_name='queryset_rules') + drip = models.ForeignKey( + Drip, + related_name='queryset_rules', + on_delete=models.CASCADE, + ) method_type = models.CharField(max_length=12, default='filter', choices=METHOD_TYPES) field_name = models.CharField(max_length=128, verbose_name='Field name of User') diff --git a/drip/tests.py b/drip/tests.py index 948d3a2..e63379d 100644 --- a/drip/tests.py +++ b/drip/tests.py @@ -3,7 +3,7 @@ from django.test import TestCase from django.test.client import RequestFactory from django.core.exceptions import ValidationError -from django.core.urlresolvers import resolve, reverse +from django.urls import resolve, reverse from django.core import mail from django.conf import settings from django.utils import timezone diff --git a/drip/utils.py b/drip/utils.py index 7bb2fe6..b55a471 100644 --- a/drip/utils.py +++ b/drip/utils.py @@ -2,7 +2,7 @@ from django.db import models from django.db.models import ForeignKey, OneToOneField, ManyToManyField -from django.db.models.related import RelatedObject +from django.db.models.fields.related import ForeignObjectRel as RelatedObject # taking a nod from python-requests and skipping six _ver = sys.version_info diff --git a/requirements.txt b/requirements.txt index 932bd37..ede7e65 100755 --- a/requirements.txt +++ b/requirements.txt @@ -4,4 +4,3 @@ django-timedeltafield==0.7.2 # development Sphinx==1.1.3 -South==1.0 diff --git a/test_urls.py b/test_urls.py index 9920823..587bce5 100644 --- a/test_urls.py +++ b/test_urls.py @@ -1,6 +1,7 @@ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from django.contrib import admin admin.autodiscover() -urlpatterns = patterns("", - url(r'^admin/', include(admin.site.urls))) +urlpatterns = [ + url(r'^admin/', admin.site.urls), +] diff --git a/testsettings.py b/testsettings.py index 0713522..791e6a7 100755 --- a/testsettings.py +++ b/testsettings.py @@ -21,6 +21,7 @@ 'django.contrib.sessions', 'django.contrib.contenttypes', 'django.contrib.staticfiles', + 'django.contrib.messages', 'drip', @@ -28,7 +29,7 @@ 'credits', ) -MIDDLEWARE_CLASSES = ( +MIDDLEWARE = ( 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', @@ -37,6 +38,29 @@ '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', + ], + }, + }, +] + USE_TZ = True TIME_ZONE = 'UTC' From f17f8f81986d8fc4760e9c5d0ef5c3e7c580eceb Mon Sep 17 00:00:00 2001 From: Kalil de Lima Date: Mon, 18 May 2020 16:06:11 -0300 Subject: [PATCH 2/2] fix template loader issues in tests --- drip/templates/admin/drip/SentDrip/change_form.html | 1 - drip/templates/admin/drip/change_form.html | 4 ++-- drip/templates/drip/timeline.html | 6 +++--- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/drip/templates/admin/drip/SentDrip/change_form.html b/drip/templates/admin/drip/SentDrip/change_form.html index a57983b..c6ce003 100644 --- a/drip/templates/admin/drip/SentDrip/change_form.html +++ b/drip/templates/admin/drip/SentDrip/change_form.html @@ -1,6 +1,5 @@ {% extends "admin/change_form.html" %} {% load i18n admin_static admin_list %} -{% load url from future %} {% load admin_urls %} {% block object-tools-items %} diff --git a/drip/templates/admin/drip/change_form.html b/drip/templates/admin/drip/change_form.html index 56fe9a6..9b3bdbc 100644 --- a/drip/templates/admin/drip/change_form.html +++ b/drip/templates/admin/drip/change_form.html @@ -1,6 +1,6 @@ {% extends "admin/change_form.html" %} -{% load i18n admin_static admin_list %} -{% load url from future %} +{% load static %} +{% load i18n admin_list %} {% load admin_urls %} {% block object-tools-items %} diff --git a/drip/templates/drip/timeline.html b/drip/templates/drip/timeline.html index be50bb2..49e3184 100644 --- a/drip/templates/drip/timeline.html +++ b/drip/templates/drip/timeline.html @@ -1,6 +1,6 @@ {% extends "admin/base_site.html" %} -{% load i18n admin_static admin_modify %} -{% load url from future %} +{% load static %} +{% load i18n admin_modify %} {% load admin_urls %} {% block title %}Viewing Timeline for {{ drip.name }}{% endblock title %} @@ -19,4 +19,4 @@

{{ drip.name }} Schedule:

{% endif %} {% endfor %} -{% endblock content %} \ No newline at end of file +{% endblock content %}