Coverage for posts/tests/test_core.py: 100.00%

0 statements  

« prev     ^ index     » next       coverage.py v7.9.1, created at 2025-06-24 10:40 -0700

1""" 

2Note: The following are tests used prior to creating PostFactory 

3 

4from django.contrib.auth import get_user_model 

5from django.urls import reverse 

6from rest_framework import status 

7from rest_framework.test import APITestCase 

8 

9from .models import Post 

10 

11 

12class BlogTests(APITestCase): 

13 @classmethod 

14 def setUpTestData(cls): 

15 cls.user = get_user_model().objects.create_user( 

16 username="blogreader", password="T3stP@s5123" 

17 ) 

18 

19 cls.post = Post.objects.create( 

20 author=cls.user, title="Blog title", body="Nice Body content..." 

21 ) 

22 

23 def test_blog_content(self): 

24 post = Post.objects.get(id=1) 

25 author = f"{post.author}" 

26 title = f"{post.title}" 

27 body = f"{post.body}" 

28 self.assertEqual(author, "blogreader") 

29 self.assertEqual(title, "Blog title") 

30 self.assertEqual(body, "Nice Body content...") 

31 

32 def test__str__(self): 

33 post = Post.objects.get(id=1) 

34 assert post.__str__() == post.title 

35 assert str(post) == post.title 

36 

37 def test_api_listview(self): 

38 self.client.login(username="blogreader", password="T3stP@s5123") 

39 response = self.client.get(reverse("post_list")) 

40 self.assertEqual(response.status_code, status.HTTP_200_OK) 

41 self.assertEqual(Post.objects.count(), 1) 

42 # self.assertContains(response, self.post) 

43 

44 def test_api_logged_out_deny_listview_access(self): 

45 response = self.client.get(reverse("post_list")) 

46 self.assertEqual(response.status_code, status.HTTP_200_OK) 

47 # self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) 

48 

49 def test_api_detailview(self): 

50 self.client.login(username="blogreader", password="T3stP@s5123") 

51 response = self.client.get( 

52 reverse("post_detail", kwargs={"pk": self.post.id}), format="json" 

53 ) 

54 self.assertEqual(response.status_code, status.HTTP_200_OK) 

55 self.assertEqual(Post.objects.count(), 1) 

56 self.assertContains(response, "Nice Body content...") 

57"""