Python Mock Side Effect Vs Return Value Based On Criteria