-
-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
7 changed files
with
341 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,100 @@ | ||
// Реализация шагов BDD-фич/сценариев c помощью фреймворка https://github.com/artbear/1bdd | ||
|
||
Перем БДД; //контекст фреймворка 1bdd | ||
|
||
// Метод выдает список шагов, реализованных в данном файле-шагов | ||
Функция ПолучитьСписокШагов(КонтекстФреймворкаBDD) Экспорт | ||
БДД = КонтекстФреймворкаBDD; | ||
|
||
ВсеШаги = Новый Массив; | ||
ВсеШаги.Добавить("ЯПолучаюВыводСтатусаЧерезКоманду"); | ||
ВсеШаги.Добавить("ЯМодифицируюВременныйФайл"); | ||
ВсеШаги.Добавить("ЯИзменяюГитомИмяВременногоФайлаНа"); | ||
ВсеШаги.Добавить("ЯУдаляюВременныйФайл"); | ||
ВсеШаги.Добавить("ЯПолучаюМассивФайловКДобавлению"); | ||
ВсеШаги.Добавить("ЯПолучаюМассивФайловВнеИндекса"); | ||
ВсеШаги.Добавить("ЯПолучаюМассивФайловКУдалению"); | ||
ВсеШаги.Добавить("ЯПолучаюМассивНеослеживаемыхФайлов"); | ||
ВсеШаги.Добавить("МассивФайловСодержит"); | ||
|
||
Возврат ВсеШаги; | ||
КонецФункции | ||
|
||
// Реализация шагов | ||
|
||
// Процедура выполняется перед запуском каждого сценария | ||
Процедура ПередЗапускомСценария(Знач Узел) Экспорт | ||
|
||
КонецПроцедуры | ||
|
||
// Процедура выполняется после завершения каждого сценария | ||
Процедура ПослеЗапускаСценария(Знач Узел) Экспорт | ||
|
||
КонецПроцедуры | ||
|
||
//Я получаю вывод Статуса через команду | ||
Процедура ЯПолучаюВыводСтатусаЧерезКоманду() Экспорт | ||
ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий"); | ||
ГитРепозиторий.ДанныеСтатуса().Получить(); | ||
КонецПроцедуры | ||
|
||
//Я получаю Массив файлов к добавлению | ||
Процедура ЯПолучаюМассивФайловКДобавлению() Экспорт | ||
ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий"); | ||
ТаблицаСтатусовМассивФайлов = ГитРепозиторий.ДанныеСтатуса().КДобавлению(); | ||
БДД.СохранитьВКонтекст("ТаблицаСтатусовМассивФайлов", ТаблицаСтатусовМассивФайлов); | ||
КонецПроцедуры | ||
|
||
//Я получаю Массив файлов вне индекса | ||
Процедура ЯПолучаюМассивФайловВнеИндекса() Экспорт | ||
ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий"); | ||
ТаблицаСтатусовМассивФайлов = ГитРепозиторий.ДанныеСтатуса().ВнеИндекса(); | ||
БДД.СохранитьВКонтекст("ТаблицаСтатусовМассивФайлов", ТаблицаСтатусовМассивФайлов); | ||
КонецПроцедуры | ||
|
||
//Я получаю Массив файлов к удалению | ||
Процедура ЯПолучаюМассивФайловКУдалению() Экспорт | ||
ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий"); | ||
ТаблицаСтатусовМассивФайлов = ГитРепозиторий.ДанныеСтатуса().КУдалению(); | ||
БДД.СохранитьВКонтекст("ТаблицаСтатусовМассивФайлов", ТаблицаСтатусовМассивФайлов); | ||
КонецПроцедуры | ||
|
||
//Я получаю Массив неослеживаемых файлов | ||
Процедура ЯПолучаюМассивНеослеживаемыхФайлов() Экспорт | ||
ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий"); | ||
ТаблицаСтатусовМассивФайлов = ГитРепозиторий.ДанныеСтатуса().НеОтслеживаются(); | ||
БДД.СохранитьВКонтекст("ТаблицаСтатусовМассивФайлов", ТаблицаСтатусовМассивФайлов); | ||
КонецПроцедуры | ||
|
||
//Массив файлов содержит | ||
Процедура МассивФайловСодержит(ИмяФайла) Экспорт | ||
ТаблицаСтатусовМассивФайлов = БДД.ПолучитьИзКонтекста("ТаблицаСтатусовМассивФайлов"); | ||
Ожидаем.Что(ТаблицаСтатусовМассивФайлов).Содержит(ИмяФайла); | ||
КонецПроцедуры | ||
|
||
//Я модифицирую временный файл | ||
Процедура ЯМодифицируюВременныйФайл() Экспорт | ||
ВременныйФайл = БДД.ПолучитьИзКонтекста("ВременныйФайл"); | ||
ЗаписьФайла = Новый ЗаписьТекста(ВременныйФайл); | ||
ЗаписьФайла.ЗаписатьСтроку("Модификация"); | ||
ЗаписьФайла.Закрыть(); | ||
КонецПроцедуры | ||
|
||
//Я удаляю временный файл | ||
Процедура ЯУдаляюВременныйФайл() Экспорт | ||
ВременныйФайл = БДД.ПолучитьИзКонтекста("ВременныйФайл"); | ||
УдалитьФайлы(ВременныйФайл); | ||
КонецПроцедуры | ||
|
||
//Я изменяю имя временного файла на "tempХ.tmp" | ||
Процедура ЯИзменяюГитомИмяВременногоФайлаНа(ИмяФайла) Экспорт | ||
ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий"); | ||
ВременныйФайл = БДД.ПолучитьИзКонтекста("ВременныйФайл"); | ||
Файл = Новый Файл(ВременныйФайл); | ||
ПараметрыКоманды = Новый Массив(); | ||
ПараметрыКоманды.Добавить("mv"); | ||
ПараметрыКоманды.Добавить("""" + Файл.Имя + """"); | ||
ПараметрыКоманды.Добавить("""" + ИмяФайла + """"); | ||
ГитРепозиторий.ВыполнитьКоманду(ПараметрыКоманды); | ||
БДД.СохранитьВКонтекст("ВременныйФайл", ИмяФайла); | ||
КонецПроцедуры |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
# language: ru | ||
|
||
Функциональность: Получение таблицы состояний файлов | ||
|
||
Как разработчик | ||
Я хочу иметь возможность получать статусы файлов в/вне индекса в виде таблицы | ||
Чтобы использовать их состояние для последующей обработки | ||
|
||
Контекст: | ||
Допустим Я создаю новый объект ГитРепозиторий | ||
И Я создаю временный каталог и сохраняю его в контекст | ||
И Я инициализирую репозиторий во временном каталоге | ||
|
||
Сценарий: Я добавляю новый файл и проверяю его статусы | ||
Допустим Я создаю временный файл "temp.tmp" во временном каталоге и сохраняю его в контекст | ||
|
||
И Я получаю вывод Статуса через команду | ||
Тогда Вывод команды содержит "?? temp.tmp" | ||
|
||
И Я получаю Массив неослеживаемых файлов | ||
Тогда Массив файлов содержит "temp.tmp" | ||
|
||
Также Я добавляю временный файл в индекс | ||
И Я получаю вывод Статуса через команду | ||
Тогда Вывод команды содержит "A temp.tmp" | ||
И Я получаю Массив файлов к добавлению | ||
Тогда Массив файлов содержит "temp.tmp" | ||
|
||
Также Я фиксирую изменения с сообщением "Добавлен тестовый файл" | ||
И Я модифицирую временный файл | ||
И Я получаю вывод Статуса через команду | ||
Тогда Вывод команды содержит " M temp.tmp" | ||
И Я получаю Массив файлов вне индекса | ||
Тогда Массив файлов содержит "temp.tmp" | ||
|
||
Также Я фиксирую изменения с сообщением "Изменен тестовый файл" | ||
И Я удаляю временный файл | ||
И Я получаю вывод Статуса через команду | ||
Тогда Вывод команды содержит " D temp.tmp" | ||
И Я добавляю временный файл в индекс | ||
И Я получаю вывод Статуса через команду | ||
Тогда Вывод команды содержит "D temp.tmp" | ||
И Я получаю Массив файлов к удалению | ||
Тогда Массив файлов содержит "temp.tmp" | ||
|
||
Сценарий: Добавление файла с пробелами в имени и получении его статусов | ||
Допустим Я создаю временный файл "temp 2.tmp" во временном каталоге и сохраняю его в контекст | ||
|
||
И Я получаю вывод Статуса через команду | ||
Тогда Вывод команды содержит '?? "temp 2.tmp"' | ||
|
||
И Я получаю Массив неослеживаемых файлов | ||
Тогда Массив файлов содержит "temp 2.tmp" | ||
|
||
Также Я добавляю временный файл в индекс | ||
И Я фиксирую изменения с сообщением "Изменен тестовый файл" | ||
И Я изменяю гитом имя временного файла на "temp 3.tmp" | ||
И Я добавляю временный файл в индекс | ||
И Я получаю вывод Статуса через команду | ||
Тогда Вывод команды содержит 'R "temp 2.tmp" -> "temp 3.tmp"' | ||
И Я получаю Массив файлов к удалению | ||
Тогда Массив файлов содержит "temp 2.tmp" | ||
И Я получаю Массив файлов к добавлению | ||
Тогда Массив файлов содержит "temp 3.tmp" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.