Джанго. Тестирование форм
Всем привет! Тестирую форму редактирования поста. Необходимо добавить проверку, что если у поста при редактировании изменили группу, то этот пост перестанет отображаться на старой странице группы. Подскажите пожалуйста, как это можно реализовать? Ниже прилагаю часть кода
class PostFormTests(TestCase):
def setUp(self):
self.guest_client = Client()
self.user = User.objects.create_user(username='test_name')
self.authorized_client = Client()
self.authorized_client.force_login(self.user)
self.post = Post.objects.create(
text='Тестовый пост',
author=self.user,
)
self.group = Group.objects.create(
title='Тестовая группа',
description='Тестовое описание',
slug='test_slug'
)
def test_edit_post(self):
"""Проверка редактирования поста."""
self.post = Post.objects.create(
text='Тестовый текст',
author=self.user,
group=self.group
)
old_text = self.post
self.group_2 = Group.objects.create(
title='Тестовая группа_2',
slug='test_slug_2',
description='Тестовое описание_2')
form_data = {'text': 'Текст',
'group': self.group_2.id}
response = self.authorized_client.post(reverse(
'posts:post_edit', kwargs={'post_id': old_text.id}),
data=form_data,
follow=True
)
self.assertEqual(response.status_code, HTTPStatus.OK)
error_name1 = 'Данные поста не совпадают'
self.assertTrue(Post.objects.filter(
group=self.group_2.id,
author=self.user,
pub_date=self.post.pub_date).exists(), error_name1
)
error_name1 = 'Пользователь не может изменить пост'
self.assertNotEqual(old_text.text, form_data['text'], error_name1)
error_name2 = 'Пользователь не может изменить группу поста'
self.assertNotEqual(old_text.group, form_data['group'], error_name2)