Coverage for books/tests/test_urls.py: 100.00%

21 statements  

« prev     ^ index     » next       coverage.py v7.17.0, created at 2026-10-23 15:55 -0700

1import pytest 1a

2from django.urls import resolve, reverse 1a

3 

4from .factories import BookFactory 1a

5 

6pytestmark = pytest.mark.django_db 1a

7 

8 

9@pytest.fixture 1a

10def book(): 1a

11 return BookFactory() 1a

12 

13 

14def test_book_list_reverse(): 1a

15 """book_list should reverse to /books/.""" 

16 assert reverse("book_list") == "/books/" 1a

17 

18 

19def test_book_list_resolve(): 1a

20 """/books/" should resolve to book_list.""" 

21 assert resolve("/books/").view_name == "book_list" 1a

22 

23 

24def test_book_add_reverse(): 1a

25 """book_add should reverse to /books/add/.""" 

26 assert reverse("book_add") == "/books/add/" 1a

27 

28 

29def test_book_add_resolve(): 1a

30 """/books/add/" should resolve to book_add.""" 

31 assert resolve("/books/add/").view_name == "book_add" 1a

32 

33 

34def test_book_detail_reverse(book): 1a

35 """book_detail should reverse to /books/uuid.""" 

36 url = reverse("book_detail", kwargs={"pk": book.id}) 1a

37 assert url == f"/books/{book.id}/" 1a

38 

39 

40def test_book_detail_resolve(book): 1a

41 """/books/{book.id}/ should resolve to book_detail.""" 

42 url = f"/books/{book.id}/" 1a

43 assert resolve(url).view_name == "book_detail" 1a