У меня есть класс, который выполняет операции с файлом на диске. Более точно он перемещается по каталогу, читает все файлы с заданным суффиксом и выполняет некоторые операции над данными, а затем выводит их в новый файл.
Я немного сомневаюсь в том, как создать unittest для этого класса. Я думаю, что метод установки создает временный каталог и временные файлы в /tmp/somefolder, но я подозреваю, что это плохая идея по нескольким причинам (разработчики используют окна, разрешения файлов и т.д.).
Еще одна идея заключалась в том, чтобы издеваться над классами, которые я использую для записи и чтения на диск, путем инкапсуляции классов с использованием интерфейса, а затем предоставления макетного объекта, но он кажется немного беспорядочным.Каким будет стандартный способ решения этой проблемы?