Тестовый клиент Django не проходит аутентификацию между классами
Я пытаюсь создать общий тестовый пример для нашего проекта django, но клиент, который вошел в систему во время setUp, очевидно, выходит из системы, когда фактически использует класс в тесте.
class DefaultTestCase(TestCase):
@classmethod
def setUpTestData(self):
from user.models import User
self.user, _ = User.objects.get_or_create(
email='demo@test.org'
)
self.pw = get_random_string(16)
self.user.set_password(self.pw)
self.user.save()
cl = Client()
cl.login(email=self.user.email, password=self.pw)
self.client = cl
print(self.client.get('/api/me/').content)
class TestMe(DefaultTestCase):
def test_setup(self):
print(self.client.get('/api/me/').content)
Первая печать действительно возвращает правильный результат, но вторая печать (test_setup
) возвращает b'{"message":"Authentication credentials were not provided.","status":401,"error":true}'
. Почему так? Я проверил, что пользователь и пароль одинаковы в TestMe
и это так, но клиент, похоже, меняется в промежутке.