У меня есть функция, которая использует пакет requests
, делает запрос, который перехватывает requests.ConnectionError
.
def get(self, url):
try:
return requests.get(url).json()
except requests.ConnectionError:
return None
Я хочу высмеять ответ из пакета запросов, который этот пост описывает очень хорошо. Это все прекрасно, но я хочу написать модульный тест, который также поднимает requests.ConnectionError
, что можно сделать интуитивно с помощью этой небольшой модификации макета, показанной выше:
if args[0] == 'http://someurl.com/test.json':
return MockResponse({"key1": "value1"}, 200)
else:
raise requests.ConnectionError
Это требует импорта requests
модуль, чтобы вызвать это указанное c исключение. Есть ли способ смоделировать requests.ConnectionError
, чтобы вы могли поднять его без импорта requests
и чтобы он по-прежнему перехватывался предложением except
в исходной функции?