Coverage for snippets/tests/test_views.py: 100.00%

28 statements  

« prev     ^ index     » next       coverage.py v7.9.1, created at 2025-06-29 13:21 -0700

1from django.contrib.auth import get_user_model 

2from django.urls import reverse # noqa:F401 

3from rest_framework import status # noqa:F401 

4from rest_framework.test import APITestCase 

5 

6from ..models import Snippet 

7 

8 

9class SnippetTests(APITestCase): 

10 @classmethod 

11 def setUpTestData(cls): 

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

13 username="snippet_user", password="T3stP@s5123" 

14 ) 

15 

16 cls.snippet = Snippet.objects.create( 

17 owner=cls.user, 

18 title="Snippet title", 

19 code="print('Hello World')", 

20 linenos=False, 

21 language="python", 

22 style="friendly", 

23 ) 

24 

25 def test__str__(self): 

26 # snippet = Snippet.objects.get(id=1) 

27 assert self.snippet.__str__() == self.snippet.title 1d

28 assert str(self.snippet) == self.snippet.title 1d

29 

30 def test_blog_content(self): 

31 # snippet = Snippet.objects.get(id=1) 

32 # owner = f"{snippet.owner}" 

33 # title = f"{snippet.title}" 

34 # code = f"{snippet.code}" 

35 # self.assertEqual(self.snippet.owner, "snippet_user") 

36 # self.assertEqual(self.user, "snippet_user") 

37 self.assertEqual(self.snippet.title, "Snippet title") 1e

38 self.assertEqual(self.snippet.code, "print('Hello World')") 1e

39 

40 def test_api_listview(self): 

41 self.client.login(username="snippet_user", password="T3stP@s5123") 1c

42 response = self.client.get(reverse("snippet-list")) 1c

43 self.assertEqual(response.status_code, status.HTTP_200_OK) 1c

44 self.assertEqual(Snippet.objects.count(), 1) 1c

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

46 

47 """ 

48 def test_api_logged_out_deny_listview_access(self): 

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

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

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

52 """ 

53 

54 def test_api_detailview(self): 

55 self.client.login(username="snippet_user", password="T3stP@s5123") 1b

56 response = self.client.get( 1b

57 reverse("snippet-detail", kwargs={"pk": self.snippet.id}), 

58 format="json", 

59 ) 

60 self.assertEqual(response.status_code, status.HTTP_200_OK) 1b

61 self.assertEqual(Snippet.objects.count(), 1) 1b

62 self.assertContains(response, "Hello World") 1b