mirror of
https://github.com/bia-technologies/precommit4onec.git
synced 2024-11-24 08:32:25 +02:00
57 lines
4.8 KiB
Gherkin
57 lines
4.8 KiB
Gherkin
# language: ru
|
|
|
|
Функциональность: Установка прекоммита
|
|
|
|
Как разработчик
|
|
Я хочу иметь возможность устанавкливать precommit4onec в мой репозиторий
|
|
Чтобы автоматически выполять обработку исходников перед фиксацией изменений в репозитории
|
|
|
|
Контекст:
|
|
Допустим Я очищаю параметры команды "oscript" в контексте
|
|
И я включаю отладку лога с именем "oscript.app.precommit4onec"
|
|
И я создаю временный каталог и запоминаю его как "КаталогРепозиториев"
|
|
И я переключаюсь во временный каталог "КаталогРепозиториев"
|
|
И я создаю новый репозиторий "rep1" в каталоге "КаталогРепозиториев" и запоминаю его как "Репозиторий1"
|
|
И я создаю новый репозиторий "rep2" в каталоге "КаталогРепозиториев" и запоминаю его как "Репозиторий2"
|
|
|
|
Сценарий: Установка precommit4onec в репозиторий
|
|
Когда Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os install rep1"
|
|
Тогда Код возврата команды "oscript" равен 0
|
|
И Я сообщаю вывод команды "oscript"
|
|
И Вывод команды "oscript" содержит "precommit4onec v1.22.1"
|
|
И Вывод команды "oscript" содержит "Pre-commit hook для rep1 создан"
|
|
И В каталоге ".git/hooks" репозитория "Репозиторий1" есть файл "pre-commit"
|
|
|
|
Сценарий: precommit4onec не устанавливается в пустой каталог
|
|
Когда я создаю временный каталог и запоминаю его как "ПустойКаталог"
|
|
И я переключаюсь во временный каталог "ПустойКаталог"
|
|
И Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os install ./"
|
|
Тогда Код возврата команды "oscript" равен 0
|
|
И Я сообщаю вывод команды "oscript"
|
|
И Вывод команды "oscript" содержит "precommit4onec v1.22.1"
|
|
И Вывод команды "oscript" содержит "не является репозиторием git"
|
|
|
|
Сценарий: Установка precommit4onec во вложенные каталоги
|
|
Когда Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os install ./ -r"
|
|
Тогда Код возврата команды "oscript" равен 0
|
|
И Я сообщаю вывод команды "oscript"
|
|
И Вывод команды "oscript" содержит "precommit4onec v1.22.1"
|
|
И В каталоге ".git/hooks" репозитория "Репозиторий1" есть файл "pre-commit"
|
|
И В каталоге ".git/hooks" репозитория "Репозиторий2" есть файл "pre-commit"
|
|
|
|
Сценарий: Рекурсивная установка precommit4oneсне корректно обрабатывает папки не репо
|
|
Когда Я создаю каталог "!_test1" внутри каталога "КаталогРепозиториев"
|
|
И Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os install ./ -r"
|
|
Тогда Код возврата команды "oscript" равен 0
|
|
И Я сообщаю вывод команды "oscript"
|
|
И Вывод команды "oscript" содержит "не является репозиторием git"
|
|
|
|
Сценарий: Рекурсивная установка precommit4oneс выполняется, когда папке с репозиториями есть папки не репо
|
|
Когда Я создаю каталог "!_test1" внутри каталога "КаталогРепозиториев"
|
|
И Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os install ./ -r"
|
|
Тогда Код возврата команды "oscript" равен 0
|
|
И Я сообщаю вывод команды "oscript"
|
|
И Вывод команды "oscript" содержит "precommit4onec v1.22.1"
|
|
И В каталоге ".git/hooks" репозитория "Репозиторий1" есть файл "pre-commit"
|
|
И В каталоге ".git/hooks" репозитория "Репозиторий2" есть файл "pre-commit"
|