Skip to content

Commit

Permalink
Add unittests for most of the models
Browse files Browse the repository at this point in the history
  • Loading branch information
Ninjaclasher committed Jun 3, 2020
1 parent c6e7a38 commit ffc9bb8
Show file tree
Hide file tree
Showing 7 changed files with 1,272 additions and 0 deletions.
Empty file added judge/models/tests/__init__.py
Empty file.
67 changes: 67 additions & 0 deletions judge/models/tests/test_blogpost.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
from django.test import TestCase

from judge.models.tests.util import CommonDataMixin, create_blogpost


class BlogPostTestCase(CommonDataMixin, TestCase):
@classmethod
def setUpTestData(self):
super().setUpTestData()
self.basic_blogpost = create_blogpost(
title='basic',
authors=('staff_blogpost_edit_own',),
)

self.visible_blogpost = create_blogpost(
title='visible',
visible=True,
)

def test_basic_blogpost(self):
self.assertEqual(str(self.basic_blogpost), self.basic_blogpost.title)

def test_basic_blogpost_methods(self):
data = {
'superuser': {
'can_see': self.assertTrue,
'is_editable_by': self.assertTrue,
},
'staff_blogpost_edit_own': {
'can_see': self.assertTrue,
'is_editable_by': self.assertTrue,
},
'staff_blogpost_edit_all': {
'can_see': self.assertTrue,
'is_editable_by': self.assertTrue,
},
'normal': {
'can_see': self.assertFalse,
'is_editable_by': self.assertFalse,
},
'anonymous': {
'can_see': self.assertFalse,
'is_editable_by': self.assertFalse,
},
}
self._test_object(self.basic_blogpost, data)

def test_visible_blogpost_methods(self):
data = {
'superuser': {
'can_see': self.assertTrue,
'is_editable_by': self.assertTrue,
},
'staff_blogpost_edit_own': {
'can_see': self.assertTrue,
'is_editable_by': self.assertFalse,
},
'normal': {
'can_see': self.assertTrue,
'is_editable_by': self.assertFalse,
},
'anonymous': {
'can_see': self.assertTrue,
'is_editable_by': self.assertFalse,
},
}
self._test_object(self.visible_blogpost, data)
Loading

0 comments on commit ffc9bb8

Please sign in to comment.