Как я могу написать модульный тест с нумерацией страниц в Django - PullRequest
0 голосов
/ 31 мая 2019

Я хочу написать модульные тесты для моего проекта в django rest framwork, но я не могу сравнить мои res.data с моим serializer.data. Это мой json для одного объекта. Бренд:

{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "url": "http://localhost:8000/shops/tags/1/",
      "id": 1,
      "name": "PS4",
      "link": "https://www.playstation.com"
    }
  ]
}

Этомой юнит-тест:

BRANDS_URL = reverse('brands-list')
    def test_retrieve_brand_list(self):
        """Test retrieving a list of brands"""
        Brand.objects.create(name='Bestbuy', link='https://bestbuy.ca')
        Brand.objects.create(name='Amazon', link='https://amazon.ca')
        res = self.client.get(BRANDS_URL)

        brands = Brand.objects.all().order_by('-name')

        context = {'request': RequestFactory().get('/')}
        serializer = BrandsSerializer(brands, context=context, many=True)

        self.assertEqual(res.status_code, status.HTTP_200_OK)
        self.assertEqual(res.data, serializer.data)

Мой сериализатор:

class BrandsSerializer(serializers.HyperlinkedModelSerializer):

    class Meta:
        model = Brand
        fields = ('url', 'id', 'name', 'link')

Как мне добавить счетчик, следующий, предыдущий и результаты в мой serializer.data?Как я могу иметь serializer.data, как res.data?Я немного растерялся, не могу найти решение

1 Ответ

0 голосов
/ 08 июня 2019

Вы можете попробовать это:

*self.assertEqual(res.data['results'], serializer.data)* 

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...