Тестирование представления на основе класса Django, которое возвращает JsonReponse - PullRequest
0 голосов
/ 12 июля 2020

Как правильно протестировать представление Django на основе класса, которое возвращает тип JsonResponse. Например, начало моего класса выглядит так:

class MyView(LoginRequiredMixin, View):

    def get(self, request):

        return JsonResponse({
            "status": 200,
            "message": "message to return."
        })

У меня похожие функции «отправить» и «удалить». URL /myview связан с этим представлением. Когда я пытаюсь сделать что-то вроде этого:

c = Client()
response = c.get('/myview')

'response' - это тип HttpResponsePermanentRedirect, и я не уверен, как из него можно получить данные JSON.

EDIT - I авторизуйтесь в настройке теста

1 Ответ

1 голос
/ 12 июля 2020

Я думаю, вам просто нужно добавить завершающий sla sh к вашему URL

c.get('/myview/')

, если APPEND_SLASH включен (и я думаю, что Django включает его по умолчанию), любой request без конечного sla sh сгенерирует перенаправление на URL с конечным sla sh

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