У меня есть функция, которая вызывает исключение, если размер файла слишком большой (> 1 МБ). Я бы хотел проверить эту функцию без использования реального изображения. Я знаю, что можно издеваться над файловыми объектами с помощью mock_open, но как я могу придать этому поддельному файлу размер?Как мне высмеять файловый объект с заданным размером?
Вот функция, я хочу, чтобы тест:
def _check_image_size(img_path):
megabyte = 1048576
if os.path.getsize(img_path) > megabyte:
raise ValueError("Image must be less than or equal to 1MB in size.")
Так просто повторить вопрос по-другому: как я проверить эту функцию без использования реального файла больше 1 МБ?
P.S. Должен ли я даже написать тест для этой функции? Я очень новый разработчик, у которого нет большого опыта. Я иду за борт, желая проверить это?
Около двух экземпляров, но по крайней мере применимо: http://stackoverflow.com/questions/19672138/how-do-i-mock-the-filesystem-in-python-unit-tests. Это покрывает большую часть того, что есть (и что я считаю добавлением) своим ответом. – chepner