Sto provando ad avere un oggetto Mock che restituisce determinati valori in base all'input fornito. Ho cercato alcuni esempi su SO e per qualche motivo non riesco ancora a farlo funzionare. Ecco cosa ho adesso.Oggetto patch Python con un effect_effetto
class EmailChecker():
def is_email_correct(email):
some regex to determine if email is valid, returns either True or False
def my_side_effect(**args):
if args[0] == '1':
return True
else:
return False
myMock = mock.patch.object(EmailChecker, 'is_email_correct', side_effect=my_side_effect)
Tuttavia, non sembra funzionare. Cosa mi manca qui?
Qual è il 'func'? – falsetru
Perché '** args' invece di' * args'? – falsetru
'** args' verifica gli argomenti delle parole chiave,' * args' verifica gli argomenti posizionali. Così come @falsetru menziona, probabilmente vuoi '* args'. –