В письменном тесте django, как я могу получить текущего зарегистрированного пользователя?
Например, это тест, который я хочу написать:
def test_author_set_once(self):
self.client.login(username='Adam', password='password')
#create an object and test the author is adam
self.client.login(username='Barry', password='password')
#modify the first object and test that the author has not changed
Итак, я хочу сказать что-то вроде...
self.assertEqual(object.author, self.client.user)
(но я не могу)
То, как я его закодировал в данный момент, выглядит следующим образом:
self.client.login(username='Adam', password='password')
self.user = User.objects.get(username='Adam')
#create an object
self.assertEqual(object.author, self.user)
Это полагается на предположение, что request.user совпадает с конкретным пользовательским объектом. Думаю, все в порядке, но кажется немного неуклюжим.
Во всяком случае, чтобы избежать предположения?