Тестирование Updateview в Django не обновляет объект
Я пишу тесты для своих представлений и застрял на UpdateView и POST-запросе. Для этого простого теста я пытаюсь просто изменить first_name, но утверждение не проходит. Что я делаю неправильно?
Тест:
class TestEmployeesUpdateView(TestCase):
def setUp(self):
self.test_user = User.objects.create_user(
username='test_user', email=
'testuser@test.com', password='Testing12345')
self.test_employee = Employee.objects.create(
first_name='Bob', last_name='Smith', user=self.test_user, position='SM',
birthday=date(year=1995, month=3, day=20),
hire_date=date(year=2019, month=2, day=15),
address='...',
)
self.client = Client()
def test_updateview_post(self):
self.client.force_login(user=self.test_user)
response = self.client.post(reverse('employees:employee-update', kwargs={'pk': self.test_employee.pk}), {'frist_name': 'John'})
self.test_employee.refresh_from_db()
self.assertEqual(self.test_employee.first_name, 'John')
Вид:
class EmployeesUpdateView(LoginRequiredMixin, UpdateView):
model = Employee
template_name = 'employees/employee_details.html'
form_class = EmployeeUpdateForm
И ошибка:
FAIL: test_updateview_post (employees.tests.test_views.TestEmployeesUpdateView)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/main/dev/project1/employees/tests/test_views.py", line 63, in test_updateview_post
self.assertEqual(self.test_employee.first_name, 'John')
AssertionError: 'Bob' != 'John'
- Bob
+ John