Я пишу блок-тесты для своих просмотров api. Сейчас я столкнулся с проблемой, что я не могу размещать списки, используя testclient
предоставленную django-restframwork
:Как опубликовать список с django-restframework testclient
Мой взгляд выглядит следующим образом:
@detail_route(methods=['post'])
def dosomestuff(self, request, slug, *args, **kwargs):
watchlist = request.data.get('watchlist', [])
sortedoutlist = request.data.get('sortedoutlist', [])
# create some objects
...
return Response('success'), status=status.HTTP_201_CREATED)
Объектами JSon я отправляю к этой конечной точке обычно выглядит следующим образом:
{"watchlist": [32, 12, 23], "sortedoutlist": [1, 2,3 ]}
Теперь я создал TestCase для этой точки зрения:
class MyTestCase(APITestCase):
def test_dosomestuff(self):
url = reverse('dosomestuff')
data = {'watchlist': [32, 12, 23],
'sortedoutlist': [1, 2,3 ]}
r = self.client.post(url, data)
self.assertEqual(r.status_code, status.HTTP_201_CREATED)
Проблема заключается в том, что watchlist
и sortedoutlist
получили в представлении нет lists
, но int
содержащий последнее значение переданного списка (список наблюдения является 23 и sortedoutlist равно 3.
Что я здесь делаю неправильно? Как я могу публиковать списки в тестовом файле?
Спасибо! Это помогло. – ilse2005