Задать вопрос
@nurzhannogerbek

Что еще добавить в юнит тест для функции сортировки?

Здравствуйте! Помогите пожалуйста разобраться.

На странице выводится список названий статей. Пользователь может перетаскивать их и сортировать на свое усмотрение. Использовал JQuery UI. Подобное поведение осуществляет данная вьюха (см. ниже).

Вопрос в следующем. Мог бы кто-нибудь помочь составить юнит тест на данную вьюху. C юнит тестированием мало имел дело. На данный момент сделал лишь проверку status_code. Было бы интерестно узнать ваши мнения. Буду благодарен любой помощи!

views.py:
from braces.views import CsrfExemptMixin, JsonRequestResponseMixin

class ArticleSortingView(CsrfExemptMixin, JsonRequestResponseMixin, FormView):
    def post(self, request, *args, **kwargs):
        for pk, idx in self.request_json.items():
            Slide.objects.filter(pk=pk).update(idx=idx)
        return self.render_json_response({'saved': 'OK'})


tests.py:
class ArticleViewTestCase(TestCase):
    def setUp(self):
        self.client = Client()
        self.credentials = {'username': 'user', 'password': 'password'}
        self.user = User.objects.create_user(**self.credentials)

    def test_sorting_article(self):
        self.assertTrue(self.user)

        logged_in = self.client.login(**self.credentials)
        self.assertTrue(logged_in)

        response = self.client.post(reverse("article:article_sorting"), follow=True)
        self.assertEqual(response.status_code, 200)
  • Вопрос задан
  • 420 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 1
Assargin
@Assargin
Перед ответом смотрю наличие ✔ в ваших вопросах
  • в setUp создайте несколько объектов Slide
  • добавьте в вызов
    self.client.post(reverse("article:article_sorting"), follow=True)
    json, который сменит сортировку этьм объектам
  • добавьте ещё одну проверку, помимо статуса (и, возможно, json ответа), что объекты Slide сменили свою сортировку
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы