Open furmaniak opened 8 years ago
import requests
def custom_post(url, data=None, **kwargs):
# Check if data is provided and if it's iterable (e.g., a list or dictionary)
if data is not None and not isinstance(data, (list, dict)):
raise TypeError("data must be an iterable (e.g., list or dictionary)")
return requests.post(url, data=data, **kwargs)
I ran into this issue today, where everything worked in tests but failed when not mocked.
Compare to
This is because 2.0 becomes the value of
data
, which must be iterable inrequests
, but can be anything in_fake_send
, Putting in a type check fordata
would at least fix this (perhaps most common variant) even if it's not perfect