En una prueba django escrita, ¿cómo puedo obtener el usuario registrado actualmente?django - obtener usuario registrado en el cliente de prueba
Por ejemplo, esta es la prueba de que quiero escribir:
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
así que quiero ser capaz de decir algo como ...
self.assertEqual(object.author, self.client.user)
(pero no puedo)
la forma en que he codificado por el momento es la siguiente:
self.client.login(username='Adam', password='password')
self.user = User.objects.get(username='Adam')
#create an object
self.assertEqual(object.author, self.user)
Esto se basa en la suposición de que request.user es el mismo que un objeto de usuario particular. Supongo que está bien, pero parece un poco torpe.
¿Hay alguna forma de evitar la suposición?
Mi respuesta no tiene usuario en el diccionario de solicitudes. – powlo
Lo mismo aquí. No existe. –
Bien amigos. Agregué esta respuesta ** 2 AÑOS ** atrás. Como era de esperar, Django aparentemente ha cambiado * solo un poco * desde entonces (como 3, contarlos, 3 revisiones principales). Esa no es una razón para comenzar a rechazar mi respuesta. http://stackoverflow.com/privileges/vote-down –