Test project
Task: Необходимо сделать консольную утилиту, которая:
- Принимает следующие параметры: стартовая папка, названия действия, путь к файлу с результатами (по умолчанию results.txt).
- Проходит по всем вложенным папкам и для каждого файла, который находятся в папке в зависимости от параметра "название действия": a. all - для всех файлов запоминает путь к файлу, относительно параметра "стартовая папка". b. срр - для всех файлов с расширением срр (*.срр) запоминает путь к файлу, относительно параметра "стартовая папка", и добавляет к нему строку " /". c. reversed1 - для всех файлов запоминает путь к файлу, относительно параметра "стартовая папка", при этом строка пути должна быть преобразована таким образом, чтобы она читалась от имени файла до родительского каталога (например, f\bla\ra\t.dat -> t.dat\ra\bla\f). d. reversed2 - для всех файлов запоминает путь к файлу, относительно параметра "стартовая папка", при этом строка пути должна быть перевернута (например, f\bla\ra\t.dat -> tad.t\ar\alb\f).
- Все полученные данные должны быть записаны в результирующий текстовый файл, каждая строка которого содержит обработанное имя файла.
Пример использования: _toolname.exe c:\some-dir all Реализовать с ООП подходом обработчик в виде отдельных классов, которые объединены общим интерфейсом. Использовать можно любые библиотеки (nuget). Написать необходимые unit tests. Использовать Dependency injection. Проход по папкам должен выполняться асинхронно (async/await).