Estoy tratando de construir algunos casos de prueba, y he leído que debes intentar limitar el número de afirmaciones por caso de prueba.
Entonces mi pregunta es, ¿cuál es la mejor manera de probar una función con múltiples entradas? Por ejemplo, tengo una función que analiza una cadena del usuario y devuelve el número de minutos. La cadena puede estar en el formulario "5w6h2d1m", donde w, h, d, mcorresponde al número de semanas, horas, días y minutos.
Si quisiera seguir la '1 afirmación por regla de prueba', ¿tendría que hacer varias pruebas para cada variación de entrada? Eso parece una tontería, así que en cambio tengo algo como:
self.assertEqual(parse_date('5m'), 5)
self.assertEqual(parse_date('5h'), 300)
self.assertEqual(parse_date('5d') ,7200)
self.assertEqual(parse_date('1d4h20m'), 1700)
En el caso de una prueba. ¿Hay una mejor manera?