Closed lorenzodidomenic closed 6 months ago
Ciao Ragazzi, vorrei far emergere un punto importante riguardo alla logica aggiunta in questa pull request.
L'intento dei test è verificare che la funzione si comporti come previsto in situazioni diverse. Introdurre un parametro come testing
per saltare completamente la logica della funzione potrebbe compromettere l'integrità dei test stessi.
Se la funzione è progettata per essere testata in un certo modo, l'aggiunta di un parametro per evitarne la logica potrebbe rendere i test inefficaci o addirittura inutili.
Vi consiglio di rivedere l'approccio usato e trovare un modo per 'mokkare' l'oggetto update
così da testare correttamente le funzioni.
Ciao Ragazzi, vorrei far emergere un punto importante riguardo alla logica aggiunta in questa pull request. L'intento dei test è verificare che la funzione si comporti come previsto in situazioni diverse. Introdurre un parametro come
testing
per saltare completamente la logica della funzione potrebbe compromettere l'integrità dei test stessi. Se la funzione è progettata per essere testata in un certo modo, l'aggiunta di un parametro per evitarne la logica potrebbe rendere i test inefficaci o addirittura inutili.Vi consiglio di rivedere l'approccio usato e trovare un modo per 'mokkare' l'oggetto
update
così da testare correttamente le funzioni.
Ecco un breve esempio di come potete usare pytest_mock
per mokkare l'oggetto update
:
from pytest_mock import MockerFixture
def example_test(mocker: MockerFixture):
update = mocker.Mock()
update.message.reply_text = mocker.Mock()
funzione_start(update,....)
update.message.reply_text.assert_called_once_with("MESSAGE TO ASSERT")
Queste sono le modifiche apportate al codice da @lorenzodidomenic come richiesto nella #18