|
@@ -9,7 +9,7 @@ from django.utils.six import StringIO
|
|
from misago.categories.models import Category
|
|
from misago.categories.models import Category
|
|
from misago.conf import settings
|
|
from misago.conf import settings
|
|
from misago.readtracker.management.commands import clearreadtracker
|
|
from misago.readtracker.management.commands import clearreadtracker
|
|
-from misago.readtracker.models import CategoryRead, ThreadRead
|
|
|
|
|
|
+from misago.readtracker.models import PostRead
|
|
from misago.threads import testutils
|
|
from misago.threads import testutils
|
|
|
|
|
|
|
|
|
|
@@ -33,47 +33,22 @@ class ClearReadTrackerTests(TestCase):
|
|
|
|
|
|
self.assertEqual(command_output, "No expired entries were found")
|
|
self.assertEqual(command_output, "No expired entries were found")
|
|
|
|
|
|
- def test_delete_expired_category_entries(self):
|
|
|
|
- """test deletes one expired category tracker, but spares the other"""
|
|
|
|
- existing = CategoryRead.objects.create(
|
|
|
|
- user=self.user_a,
|
|
|
|
- category=self.category,
|
|
|
|
- last_read_on=timezone.now() - timedelta(days=settings.MISAGO_READTRACKER_CUTOFF / 4)
|
|
|
|
- )
|
|
|
|
-
|
|
|
|
- deleted = CategoryRead.objects.create(
|
|
|
|
- user=self.user_b,
|
|
|
|
- category=self.category,
|
|
|
|
- last_read_on=timezone.now() - timedelta(days=settings.MISAGO_READTRACKER_CUTOFF * 2)
|
|
|
|
- )
|
|
|
|
-
|
|
|
|
- command = clearreadtracker.Command()
|
|
|
|
-
|
|
|
|
- out = StringIO()
|
|
|
|
- call_command(command, stdout=out)
|
|
|
|
- command_output = out.getvalue().strip()
|
|
|
|
-
|
|
|
|
- self.assertEqual(command_output, "Deleted 1 expired entries")
|
|
|
|
-
|
|
|
|
- CategoryRead.objects.get(pk=existing.pk)
|
|
|
|
- with self.assertRaises(CategoryRead.DoesNotExist):
|
|
|
|
- CategoryRead.objects.get(pk=deleted.pk)
|
|
|
|
-
|
|
|
|
- def test_delete_expired_thread(self):
|
|
|
|
- """test deletes one expired thread tracker, but spares the other"""
|
|
|
|
|
|
+ def test_delete_expired_entries(self):
|
|
|
|
+ """test deletes one expired tracker entry, but spares the other"""
|
|
thread = testutils.post_thread(self.category)
|
|
thread = testutils.post_thread(self.category)
|
|
|
|
|
|
- existing = ThreadRead.objects.create(
|
|
|
|
|
|
+ existing = PostRead.objects.create(
|
|
user=self.user_a,
|
|
user=self.user_a,
|
|
category=self.category,
|
|
category=self.category,
|
|
thread=thread,
|
|
thread=thread,
|
|
|
|
+ post=thread.first_post,
|
|
last_read_on=timezone.now() - timedelta(days=settings.MISAGO_READTRACKER_CUTOFF / 4)
|
|
last_read_on=timezone.now() - timedelta(days=settings.MISAGO_READTRACKER_CUTOFF / 4)
|
|
)
|
|
)
|
|
-
|
|
|
|
- deleted = ThreadRead.objects.create(
|
|
|
|
|
|
+ deleted = PostRead.objects.create(
|
|
user=self.user_b,
|
|
user=self.user_b,
|
|
category=self.category,
|
|
category=self.category,
|
|
thread=thread,
|
|
thread=thread,
|
|
|
|
+ post=thread.first_post,
|
|
last_read_on=timezone.now() - timedelta(days=settings.MISAGO_READTRACKER_CUTOFF * 2)
|
|
last_read_on=timezone.now() - timedelta(days=settings.MISAGO_READTRACKER_CUTOFF * 2)
|
|
)
|
|
)
|
|
|
|
|
|
@@ -85,6 +60,6 @@ class ClearReadTrackerTests(TestCase):
|
|
|
|
|
|
self.assertEqual(command_output, "Deleted 1 expired entries")
|
|
self.assertEqual(command_output, "Deleted 1 expired entries")
|
|
|
|
|
|
- ThreadRead.objects.get(pk=existing.pk)
|
|
|
|
- with self.assertRaises(ThreadRead.DoesNotExist):
|
|
|
|
- ThreadRead.objects.get(pk=deleted.pk)
|
|
|
|
|
|
+ PostRead.objects.get(pk=existing.pk)
|
|
|
|
+ with self.assertRaises(PostRead.DoesNotExist):
|
|
|
|
+ PostRead.objects.get(pk=deleted.pk)
|