Fix #294 -- Blacklist for slug validation (#325)

* Fix #294 - blacklist for slug validation

* Fix #294 - blacklist for slug validation

* fix for failing test
This commit is contained in:
Christopher Dambamuromo
2016-11-21 10:57:52 +00:00
committed by Raphael Michel
parent 4820a8423f
commit 9662b956ed
5 changed files with 82 additions and 2 deletions

View File

@@ -1,3 +1,4 @@
import datetime
import sys
from datetime import timedelta
@@ -601,6 +602,16 @@ class EventTest(TestCase):
self.assertIn('presale_end', str(context.exception))
def test_slug_validation(self):
event = Event(
organizer=self.organizer, name='Download', slug='download',
date_from=datetime.datetime(2013, 12, 26, tzinfo=datetime.timezone.utc)
)
with self.assertRaises(ValidationError) as context:
event.full_clean()
self.assertIn('slug', str(context.exception))
class CachedFileTestCase(TestCase):
def test_file_handling(self):

View File

@@ -2,6 +2,7 @@ import datetime
from decimal import Decimal
from django.core import mail
from django.core.exceptions import ValidationError
from django.test import TestCase
from django.utils.timezone import now
from tests.base import SoupTest
@@ -469,3 +470,19 @@ class TestResendLink(EventTestMixin, SoupTest):
self.assertEqual(len(mail.outbox), 1)
self.assertIn('DUMMY1', mail.outbox[0].body)
self.assertIn('DUMMY2', mail.outbox[0].body)
class EventSlugBlacklistValidatorTest(EventTestMixin, SoupTest):
def test_slug_validation(self):
event = Event(
organizer=self.orga,
name='download',
slug='download',
date_from=datetime.datetime(2013, 12, 26, tzinfo=datetime.timezone.utc),
live=True
)
with self.assertRaises(ValidationError):
if event.full_clean():
event.save()
self.assertEqual(Event.objects.filter(name='download').count(), 0)