Coverage for books/tests/test_views.py: 100.00%
21 statements
« prev ^ index » next coverage.py v7.9.1, created at 2025-06-14 19:27 -0700
« prev ^ index » next coverage.py v7.9.1, created at 2025-06-14 19:27 -0700
1from django.test import TestCase
2from django.urls import reverse
4from ..models import Book
7class BookTests(TestCase):
8 @classmethod
9 def setUpTestData(cls):
10 cls.book = Book.objects.create(
11 title="Code Complete",
12 subtitle="A handbook of software construction",
13 author="Steve McConnell",
14 pages="952",
15 publisher="Microsoft Press",
16 pubdate="2004-03-29",
17 price="65.72",
18 isbn="0735619670",
19 )
21 def test_book_content(self):
22 self.assertEqual(self.book.title, "Code Complete") 1b
23 self.assertEqual(self.book.subtitle, "A handbook of software construction") 1b
24 self.assertEqual(self.book.author, "Steve McConnell") 1b
25 self.assertEqual(self.book.pages, "952") 1b
26 self.assertEqual(self.book.publisher, "Microsoft Press") 1b
27 self.assertEqual(self.book.pubdate, "2004-03-29") 1b
28 self.assertEqual(self.book.price, "65.72") 1b
29 self.assertEqual(self.book.isbn, "0735619670") 1b
31 def test_book_listview(self):
32 response = self.client.get(reverse("booklist")) 1c
33 self.assertEqual(response.status_code, 200) 1c
34 self.assertContains(response, "A handbook of software construction") 1c
35 self.assertTemplateUsed(response, "books/book_list.html") 1c