Комититься нужно как можно чаще, при проверке будет учитываться содержательность сообщений коммита и порции которыми коммиты осуществляются, время по задаче будет оцениваться как время между первым(инициализационным коммитом и последним)
Утилита может выводить дерево каталогов и файлов.
- На вход первым параметром принимает путь к каталогу.
- Если вторым параметром указана опция -f, то необходимо выводить файлы.
В качестве примера можно смотреть на вывод линуксовой утилиты tree.
- Реализация на Node.JS
- Код должен быть покрыт unit-тестами.
- Нельзя использовать никакие зависимости кроме фреймворков для тестирования.
- Код реализации должен быть помещен в класс в отдельном файле, код с запуском утилиты должен быть помещен в другой файл.
- Для простоты тестирования рекомендую создать файловую структуру или взять структуру из этого репозитория. Тесты можно писать с учетом созданной структуры. Однако использование виртуальной файловой системы не возбраняется.
- Результаты должны быть отсортированы по алфавиту.
- Идеальным вариантом будет использование композиции.
├── tree.php (423b)
├── Tree.php (1487b)
├── TreeTest.php (1986b)
└── data
├── dist
│ ├── css
│ │ └── app.css (14b)
│ ├── html
│ │ └── index.html (15b)
│ └── js
│ └── app.js (13b)
├── empty.txt (empty)
└── src
├── vue
│ └── main.js (20b)
└── zzz.txt (21b)
└── data
├── dist
│ ├── css
│ ├── html
│ └── js
└── src
└── vue