testutils.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. from django.utils import timezone
  2. from misago.threads.models import Thread, Post, Change, Checkpoint
  3. def create_thread(forum):
  4. thread = Thread()
  5. thread.forum = forum
  6. thread.name = 'Test Thread'
  7. thread.slug = 'test-thread'
  8. thread.start = timezone.now()
  9. thread.last = timezone.now()
  10. thread.save(force_insert=True)
  11. return thread
  12. def create_post(thread, user):
  13. now = timezone.now()
  14. post = Post()
  15. post.forum = thread.forum
  16. post.thread = thread
  17. post.date = now
  18. post.user = user
  19. post.user_name = user.username
  20. post.ip = '127.0.0.1'
  21. post.agent = 'No matter'
  22. post.post = 'No matter'
  23. post.post_preparsed = 'No matter'
  24. post.save(force_insert=True)
  25. if not thread.start_post:
  26. thread.start = now
  27. thread.start_post = post
  28. thread.start_poster = user
  29. thread.start_poster_name = user.username
  30. thread.start_poster_slug = user.username_slug
  31. thread.last = now
  32. thread.last_post = post
  33. thread.last_poster = user
  34. thread.last_poster_name = user.username
  35. thread.last_poster_slug = user.username_slug
  36. thread.save(force_update=True)
  37. return post