Тестирование в django, бд sqlite, python

В тесте def test_сhecking_post_fields(self) хочу в списке запросов оставить только имена url, а сам запрос переместить в цикл. Но не понимаю как это сделать, потому что у меня последний запрос отличается .context от предыдущих.

from django.test import Client, TestCase
from django.urls import reverse

from posts.models import Post, Group, User
from posts.views import POSTS_PER_PAGE


POST_INDEX_URL = reverse("posts:index")
POST_CREATE_URL = reverse("posts:post_create")
USER_1 = "Andrew"
USER_2 = "Andrew2"
PROFILE = reverse("posts:profile", kwargs={"username": USER_1})
PROFILE_2 = reverse("posts:profile", kwargs={"username": USER_2})
SECOND_PAGE_OF_POSTS = 3
POSTS_COUNT = POSTS_PER_PAGE + SECOND_PAGE_OF_POSTS
SLUG_1 = "test-slug"
SLUG_2 = "test-slug2"
GROUP_POSTS_URL = reverse("posts:group_posts", kwargs={"slug": SLUG_1})
GROUP_POSTS_URL_2 = reverse("posts:group_posts", kwargs={"slug": SLUG_2})


class PostPagesTests(TestCase):
    @classmethod
    def setUpClass(cls):
        super().setUpClass()
        cls.user = User.objects.create_user(username=USER_1)
        cls.user2 = User.objects.create_user(username=USER_2)
        cls.group = Group.objects.create(
            title="Тестовый заголовок",
            description="Тестовое описание",
            slug=SLUG_1,
        )
        cls.group2 = Group.objects.create(
            title="Тестовый заголовок 2",
            description="Тестовое описание 2",
            slug=SLUG_2,
        )
        cls.post = Post.objects.create(
            author=cls.user, text="Тестовый пост", group=cls.group
        )
        cls.POST_DETAIL_URL = reverse(
            "posts:post_detail", kwargs={"post_id": cls.post.id}
        )
        cls.POST_EDIT_URL = reverse(
            "posts:post_edit", kwargs={"post_id": cls.post.id}
        )

    def setUp(self):
        self.author = Client()
        self.author.force_login(self.user)
        self.another = Client()
        self.another.force_login(self.user2)

    def test_сhecking_post_fields(self):
        """Проверка полей постов на страницах"""
        self.URLS = [
            self.author.get(POST_INDEX_URL).context["page_obj"][0],
            self.author.get(GROUP_POSTS_URL).context["page_obj"][0],
            self.author.get(PROFILE).context["page_obj"][0],
            self.author.get(self.POST_DETAIL_URL).context["post"],
        ]
        for response in self.URLS:
            post = response
            self.assertEqual(post.author, self.user)
            self.assertEqual(post.text, self.post.text)
            self.assertEqual(post.group, self.post.group)
            self.assertEqual(post.pk, self.post.pk)
Вернуться на верх