from django.contrib.auth.models import User from django.test import TestCase from django.urls import reverse from shop.tests.mixins import CreateProductsMixin class TestUserInfo(TestCase, CreateProductsMixin): def setUp(self): self.user = User.objects.create_user('vader', 'darth@vader.com', 'ihatesand') def test_update_user_info(self): self.client.force_login(self.user) response = self.client.get(reverse('web:user_info_component')) assert response.status_code == 200 data = {'first_name': 'Anakin', 'last_name': 'Skywalker', 'email': 'anakin@skywalker.com'} response = self.client.post(reverse('web:user_info_component'), data) assert response.status_code == 200 self.user.refresh_from_db() assert self.user.first_name == data.get('first_name') assert self.user.last_name == data.get('last_name') assert self.user.email == data.get('email')