test_event_model.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. from django.contrib.auth import get_user_model
  2. from django.test import TestCase
  3. from django.utils import timezone
  4. from misago.categories.models import Category
  5. from misago.threads.checksums import is_event_valid, update_event_checksum
  6. from misago.threads.models import Thread, Event
  7. class EventModelTests(TestCase):
  8. def setUp(self):
  9. User = get_user_model()
  10. self.user = User.objects.create_user("Bob", "bob@bob.com", "Pass.123")
  11. datetime = timezone.now()
  12. self.category = Category.objects.all_categories()[:1][0]
  13. self.thread = Thread(
  14. category=self.category,
  15. started_on=datetime,
  16. starter_name='Tester',
  17. starter_slug='tester',
  18. last_post_on=datetime,
  19. last_poster_name='Tester',
  20. last_poster_slug='tester'
  21. )
  22. self.thread.set_title("Test thread")
  23. self.thread.save()
  24. def test_is_event_valid(self):
  25. """event is_valid flag returns valid value"""
  26. event = Event.objects.create(
  27. category=self.category,
  28. thread=self.thread,
  29. author=self.user,
  30. message="Lorem ipsum",
  31. author_name=self.user.username,
  32. author_slug=self.user.slug
  33. )
  34. update_event_checksum(event)
  35. self.assertTrue(is_event_valid(event))
  36. self.assertTrue(event.is_valid)
  37. event.message = "Ipsum lorem"
  38. self.assertFalse(is_event_valid(event))
  39. self.assertFalse(event.is_valid)