Coverage for cheese/cheeses/tests/test_urls.py: 100.00%

21 statements  

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

1import pytest 

2from django.urls import resolve, reverse 

3 

4from .factories import CheeseFactory 

5 

6pytestmark = pytest.mark.django_db 

7 

8 

9@pytest.fixture 

10def cheese(): 

11 return CheeseFactory() 

12 

13 

14def test_list_reverse(): 

15 """cheeses:list should reverse to /cheeses/.""" 

16 assert reverse("cheeses:list") == "/cheeses/" 1d

17 

18 

19def test_list_resolve(): 

20 """/cheeses/ should resolve to cheeses:list.""" 

21 assert resolve("/cheeses/").view_name == "cheeses:list" 1e

22 

23 

24def test_add_reverse(): 

25 """cheeses:add should reverse to /cheeses/add/.""" 

26 assert reverse("cheeses:add") == "/cheeses/add/" 1f

27 

28 

29def test_add_resolve(): 

30 """/cheeses/add/ should resolve to cheeses:add.""" 

31 assert resolve("/cheeses/add/").view_name == "cheeses:add" 1g

32 

33 

34def test_detail_reverse(cheese): 

35 """cheeses:detail should reverse to /cheeses/cheeseslug/.""" 

36 url = reverse("cheeses:detail", kwargs={"slug": cheese.slug}) 1b

37 assert url == f"/cheeses/{cheese.slug}/" 1b

38 

39 

40def test_detail_resolve(cheese): 

41 """/cheeses/cheeseslug should reverse to cheeses:detail.""" 

42 url = f"/cheeses/{cheese.slug}/" 1c

43 assert resolve(url).view_name == "cheeses:detail" 1c