Package: checker21
checker21 v0.2.5aУстановка и запуск:$ pip3 install checker21 -UДля установки на школьных компьютерах потребуется добавить checker21 в переменную окружения PATH.$ echo 'PATH="`dirname ~/any`/Library/Python/3.7/bin:${PATH}"; export PATH' > ~/.checker21Запуск производится внутри папки с проектом.$ checker21 test [project name]На школьных компьютерах команда checker21 может быть не доступна.
Нам нужно активировать PATH, чтобы команда заработала.$ source ~/.checker21Доступные проекты для тестированияlibftget_next_line (gnl)printfПример использования чекера запуска$ git clone [url] some_folder
$ cd some_folder
$ checker21 test gnlЧекеры:Возможен запуск конкретного чекера. По умолчанию запускаются все.
Для запуска конкретного чекера нужно указать его имя:$ checker21 test [project name] [check name]Для многих проектов доступны чекеры общего назначения:filesnorminettefiles проверят репозиторий на наличие запрещённых файлов.norminette запускает проверку нормы только для файлов из репозитория и
раскрашивает результаты проверки.Libft чекер:Для тестирования libft используется libft-unit-test, split, libft-testerhttps://github.com/alelievr/libft-unit-testhttps://github.com/Ysoroko/FT_SPLIT_TESTERhttps://github.com/Tripouille/libftTesterGetNextLine чекер:Для тестирования gnl используется gnltester и gnl-war-machinehttps://github.com/Tripouille/gnlTesterhttps://github.com/PavelICS/gnl-war-machine-v2019Printf чекер:Для тестирования printf используется pfthttps://github.com/gavinfielder/pftРабота с norminette:В версии 0.2 появилась расширенная возможность по работе с нормой.Для работы этого функционала требуется установка оригинального norminette.checker21 в отличие от классического norminette добавляет:подствеку результатовкеширование проверок (перепроверяются только последние изменённые файлы)проверка только файлов, добавленных в репозиторий (при его наличие)отображение только строк с ошибкамиминимальная статистика по нормеавтоматическое исправление ряда базовых, но частых ошибокЗапуск проверки нормы проекта в текущей директории$ checker21 norminetteПроверка нормы в директории /home/delyn/projects/minishell$ checker21 norminette -p /home/delyn/projects/minishellЕсли что всегда доступен --help, хоть он пока и не очень подробныйДля очистки кеша, на всякий случай перед финальной проверкой, чтоб убедиться, что у вас всё идеально.
Добавьте простоclear, где угодно.$ checker21 norminette clear
$ checker21 norminette clear -p /home/delyn/projects/minishell
$ checker21 norminette -p /home/delyn/projects/minishell clearДля отображения только ошибок (сокрытие файлов с надписью OK) нужно добавитьerrors.Например,$ checker21 norminette -p /home/delyn/projects/minishell errorsДля просмотра статистики добавляемstats$ checker21 norminette -p /home/delyn/projects/minishell statsАвтоматическое исправление ошибок от norminette:⚠ Предварительно нужно проверить проект на норму, исправление ошибок работает с кешем.⚠ Убедитесь, что вы закоммитили все файлы и можете, если что их восстановить. Данный режим находится в стадии тестирования, и в нём могут быть баги, которые могут подпортить ваш код.⚠ Команду нужно запускать несколько раз, т.к. норма сложная штука, за один проход всё не исправить.⚠ После автоматических изменений соберите и проверьте, что ваш проект запускается.
Я проверяю корректность работы программы через создание и просмотр изменений в коммите.
Там сразу видно напортачила программа или нет. Сообщение о баге пишите мне (delyn), приложив файл с ошибкой.
А сам файл придётся подправить ручками по старинке.Для запуска автоматического исправления ошибок надо добавитьfix.
Чтоб checker21 автоматически мог вставлять хедеры в ваши файлы
используйте --user=delyn (не забудьте своего пользака подставить ;)Например,$ checker21 norminette -p /home/delyn/projects/minishell --user=delyn fix