[pyar] Testeando metodo llamado con queryset

Leandro Moreno moreno.leandro.g en gmail.com
Mar Ago 20 09:23:21 -03 2019


Gracias por contestar, Ariel.

Ya habia visto ese post en SO, lamentablemente no me servia esa solucion
porque no tenia control sobre el input del metodo testeado.

De cualquier forma, pude solucionarlo. Me di cuenta que la respuesta estaba
en la pregunta que escribi. El test era viejo, y mockeaba el metodo
testeado, lo cual decidí sacar el mock y testear que luego que el metodo es
llamado, el objeto está en el estado que deberia estar. Y listo.

Gracias.



Leandro Moreno
Full Stack Developer


El mar., 20 ago. 2019 a las 8:14, Ariel Gerardo Ríos (<
arielgerardorios en gmail.com>) escribió:

> Hola Leandro: tenés un método dentro de la vista que sanitice el input? O
> le estás pasando los query params directo? Yo testearía el método de
> sanitización con diferentes conjuntos de datos para validar que se exige el
> dominio de la aplicación.
>
> Buscando rápidamente en Google encontré ésto:
> https://stackoverflow.com/a/17685136/1819550, capaz se ajusta más a tu
> escenario.
>
> Saludos!
>
> El lun., 19 ago. 2019 13:04, Leandro Moreno <moreno.leandro.g en gmail.com>
> escribió:
>
>> Hola gente.
>>
>> Pregunto en la lista porque no se me ocurre ninguna solucion que no sea
>> modificar la implementacion del test. Pero estoy seguro que a mas de a uno
>> le debe haber pasado algo similar.
>>
>> Tengo un django test que testea, valga la redundancia, que un metodo haya
>> sido llamado con un queryset (antes era una lista, asi que no habia
>> problema). La cosa es que como bien saben, por mas que dos querysets tengan
>> el mismo contenido, no son iguales, PERO, podria usar set() y listo.
>>
>> Hasta ahi todo bien, el drama es que desde el test no puedo modificar el *input
>> *del metodo en cuestion. Podria, pero es usar mocks por todos lados, y
>> los mocks son mala palabra.
>>
>> Bueno, el test en cuestion, esta checkeando lo siguiente:
>>
>> self.my_method.assert_called_once_with(queryset_here)
>>
>> Existe alguna forma de poner algo ahi para que matchee con el queryset
>> que se está pasando efectivamente a la llamada del metodo?
>>
>> Gracias.
>>
>>
>>
>> Leandro Moreno
>> Full Stack Developer
>> _______________________________________________
>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>> Sitio web: http://www.python.org.ar/
>>
>> Para administrar la lista (o desuscribirse) entrar a
>> http://listas.python.org.ar/listinfo/pyar
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>
> _______________________________________________
> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
> Sitio web: http://www.python.org.ar/
>
> Para administrar la lista (o desuscribirse) entrar a
> http://listas.python.org.ar/listinfo/pyar
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20190820/71fe2297/attachment.html>


Más información sobre la lista de distribución pyar