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

35 statements  

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

1from django.test import TestCase 

2from django.urls import resolve, reverse 

3 

4from ..views import ( 

5 AboutPageView, 

6 ContactView, 

7 HomePageView, 

8 SuccessView, 

9) 

10 

11 

12class HomePageTests(TestCase): 

13 def setUp(self): 

14 url = reverse("home") 

15 self.response = self.client.get(url) 

16 

17 """ 

18 def test_homepage_status_code(self): 

19 self.assertEqual(self.response.status_code, 200) 

20 

21 def test_homepage_template(self): 

22 self.assertTemplateUsed(self.response, "pages/home.html") 

23 

24 def test_homepage_contains_correct_html(self): 

25 self.assertContains(self.response, "Bits o' News app") 

26 

27 def test_homepage_does_not_contain_incorrect_html(self): 

28 self.assertNotContains(self.response, "Not the Homepage") 

29 """ 

30 

31 def test_homepage_url_resolves_homepageview(self): 

32 view = resolve("/") 1b

33 self.assertEqual( 1b

34 view.func.__name__, 

35 HomePageView.as_view().__name__, 

36 ) 

37 

38 

39class AboutPageTests(TestCase): 

40 def setUp(self): 

41 url = reverse("about") 

42 self.response = self.client.get(url) 

43 

44 """ 

45 def test_about_page_status_code(self): 

46 self.assertEqual(self.response.status_code, 200) 

47 

48 def test_about_page_template(self): 

49 self.assertTemplateUsed(self.response, "pages/about.html") 

50 

51 def test_about_page_contains_correct_html(self): 

52 self.assertContains(self.response, "About Page") 

53 

54 def test_about_page_does_not_contain_incorrect_html(self): 

55 self.assertNotContains(self.response, "Not the About page") 

56 """ 

57 

58 def test_about_page_url_resolves_about_pageview(self): 

59 view = resolve("/about/") 1c

60 self.assertEqual( 1c

61 view.func.__name__, 

62 AboutPageView.as_view().__name__, 

63 ) 

64 

65 

66class ContactViewTests(TestCase): 

67 def setUp(self): 

68 url = reverse("contact") 

69 self.response = self.client.get(url) 

70 

71 """ 

72 def test_contact_page_status_code(self): 

73 self.assertEqual(self.response.status_code, 200) 

74 

75 def test_contact_page_url_resolves_contactpageview(self): 

76 view = resolve("/contact/") 

77 self.assertEqual( 

78 view.func.__name__, 

79 ContactView.__name__, 

80 ) 

81 

82 def test_contact_page_template(self): 

83 self.assertTemplateUsed(self.response, "pages/contact.html") 

84 

85 def test_contact_page_contains_correct_html(self): 

86 self.assertContains(self.response, "Contact Us") 

87 

88 def test_contact_page_does_not_contain_incorrect_html(self): 

89 self.assertNotContains(self.response, "Home Page") 

90 """ 

91 

92 def test_contact_page_url_resolves_contactpageview(self): 

93 view = resolve("/contact/") 1d

94 self.assertEqual( 1d

95 view.func.__name__, 

96 ContactView.__name__, 

97 ) 

98 

99 

100class SuccessViewTests(TestCase): 

101 def setUp(self): 

102 url = reverse("success") 

103 self.response = self.client.get(url) 

104 

105 """ 

106 def test_success_page_status_code(self): 

107 self.assertEqual(self.response.status_code, 200) 

108 

109 def test_success_page_template(self): 

110 self.assertTemplateUsed(self.response, "pages/success.html") 

111 

112 def test_success_page_contains_correct_html(self): 

113 self.assertContains( 

114 self.response, 

115 "Thank you for your message.", 

116 ) 

117 

118 def test_success_page_does_not_contain_incorrect_html(self): 

119 self.assertNotContains(self.response, "Please Go Away") 

120 """ 

121 

122 def test_success_page_url_resolves_success_page_view(self): 

123 view = resolve("/success/") 1e

124 self.assertEqual( 1e

125 view.func.__name__, 

126 SuccessView.__name__, 

127 )