Django модульное тестирование Rest Framework для запроса PUT - PullRequest
0 голосов
/ 15 апреля 2020

"test_put_method_success" показывает ошибку Assertion: 404! = 200. Как ее решить? ......................

class BasicTest(APITestCase):
    def setUp(self):
        self.client = Client()
        self.user = User(username="admin", email="admin@gmail.com")
        self.user.is_staff = True
        self.user.set_password('admin')
        self.user.save()


    def test_put_method_success(self):
        url = "http://127.0.0.1:8000/settings/modules/1/"
        data = {
            'modulename': "Module test update",
            'activation_status': "Active"
        }

        self.assertTrue(self.client.login(username="admin", password="admin"))
        response = self.client.put(url, data, format='json')
        print(response.status_code)
        self.assertEqual(response.status_code, status.HTTP_200_OK)

urls.py

from rest_framework import routers

router = routers.DefaultRouter()
router.register('modules', views.ModuleView)

urlpatterns = [
    path('', include(router.urls)),
]

1 Ответ

0 голосов
/ 15 апреля 2020

По умолчанию DRF PUT не создает экземпляр. Вам нужно выполнить несколько дополнительных шагов, как указано в документации .

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