-
Notifications
You must be signed in to change notification settings - Fork 13
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
9 changed files
with
373 additions
and
37 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,101 @@ | ||
// Реализация шагов BDD-фич/сценариев c помощью фреймворка https://github.com/artbear/1bdd | ||
#Использовать "../.." | ||
|
||
Перем БДД; //контекст фреймворка 1bdd | ||
|
||
// Метод выдает список шагов, реализованных в данном файле-шагов | ||
Функция ПолучитьСписокШагов(КонтекстФреймворкаBDD) Экспорт | ||
БДД = КонтекстФреймворкаBDD; | ||
|
||
ВсеШаги = Новый Массив; | ||
|
||
ВсеШаги.Добавить("ЯСоздаюКомандныйФайл"); | ||
ВсеШаги.Добавить("ЯДобавляюСтрокуВКомандныйФайл"); | ||
ВсеШаги.Добавить("ЯСообщаюСодержимоеКомандногоФайла"); | ||
ВсеШаги.Добавить("ЯВыполняюКомандныйФайл"); | ||
ВсеШаги.Добавить("ВыводКомандногоФайлаСодержит"); | ||
ВсеШаги.Добавить("КодВозвратаКомандногоФайлаРавен"); | ||
|
||
Возврат ВсеШаги; | ||
КонецФункции | ||
|
||
// Реализация шагов | ||
|
||
// Процедура выполняется перед запуском каждого сценария | ||
Процедура ПередЗапускомСценария(Знач Узел) Экспорт | ||
|
||
КонецПроцедуры | ||
|
||
// Процедура выполняется после завершения каждого сценария | ||
Процедура ПослеЗапускаСценария(Знач Узел) Экспорт | ||
|
||
КонецПроцедуры | ||
|
||
//Я создаю командный файл | ||
Процедура ЯСоздаюКомандныйФайл() Экспорт | ||
КомандныйФайл = Новый КомандныйФайл; | ||
КомандныйФайл.Создать(); | ||
БДД.СохранитьВКонтекст("КомандныйФайл", КомандныйФайл); | ||
КонецПроцедуры | ||
|
||
//я добавляю строку "echo командный файл" в командный файл | ||
Процедура ЯДобавляюСтрокуВКомандныйФайл(Знач СтрокаКоманды) Экспорт | ||
КомандныйФайл = БДД.ПолучитьИзКонтекста("КомандныйФайл"); | ||
|
||
КомандныйФайл.ДобавитьКоманду(СтрокаКоманды); | ||
КонецПроцедуры | ||
|
||
//Я выполняю командный файл | ||
Процедура ЯВыполняюКомандныйФайл() Экспорт | ||
КомандныйФайл = БДД.ПолучитьИзКонтекста("КомандныйФайл"); | ||
|
||
КомандныйФайл.Выполнить(); | ||
КонецПроцедуры | ||
|
||
//Я сообщаю содержимое файла "ИмяФайла" | ||
Процедура ЯСообщаюСодержимоеФайла(Знач ИмяФайла) Экспорт | ||
ВывестиТекстФайла(ИмяФайла); | ||
КонецПроцедуры | ||
|
||
//Я сообщаю содержимое командного файла | ||
Процедура ЯСообщаюСодержимоеКомандногоФайла() Экспорт | ||
КомандныйФайл = БДД.ПолучитьИзКонтекста("КомандныйФайл"); | ||
|
||
ТекстФайла = КомандныйФайл.ПолучитьТекстФайла(); | ||
Сообщить(ТекстФайла); | ||
КонецПроцедуры | ||
|
||
//Вывод командного файла содержит "командный файл" | ||
Процедура ВыводКомандногоФайлаСодержит(Знач ОжидаемыйВыводКоманды) Экспорт | ||
КомандныйФайл = БДД.ПолучитьИзКонтекста("КомандныйФайл"); | ||
|
||
ВыводКоманды = КомандныйФайл.ПолучитьВывод(); | ||
Ожидаем.Что(ВыводКоманды).Содержит(ОжидаемыйВыводКоманды); | ||
КонецПроцедуры | ||
|
||
//Код возврата командного файла равен 0 | ||
Процедура КодВозвратаКомандногоФайлаРавен(Знач ОжидаемыйКодВозврата) Экспорт | ||
КомандныйФайл = БДД.ПолучитьИзКонтекста("КомандныйФайл"); | ||
|
||
Ожидаем.Что(КомандныйФайл.ПолучитьКодВозврата(), "Код возврата").Равно(ОжидаемыйКодВозврата); | ||
КонецПроцедуры | ||
|
||
|
||
Процедура ВывестиТекстФайла(Знач ИмяФайла, Знач Кодировка = Неопределено) | ||
|
||
Файл = Новый Файл(ИмяФайла); | ||
Если НЕ Файл.Существует() Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
Если Кодировка = Неопределено Тогда | ||
Кодировка = "utf-8"; | ||
КонецЕсли; | ||
|
||
ЧТ = Новый ЧтениеТекста(ИмяФайла, Кодировка); | ||
СтрокаФайла = ЧТ.Прочитать(); | ||
ЧТ.Закрыть(); | ||
|
||
Сообщить(СтрокаФайла); | ||
|
||
КонецПроцедуры |
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,17 @@ | ||
# language: ru | ||
|
||
Функциональность: Выполнение командных файлов | ||
|
||
Как разработчик | ||
Я хочу иметь возможность создавать и выполнять командные файлы | ||
Чтобы я мог проще автоматизировать больше действий на OneScript | ||
|
||
Сценарий: Выполнение простого командного файла | ||
Допустим Я включаю отладку библиотеки "commands" | ||
Когда Я создаю командный файл | ||
И Я добавляю строку "chcp 1251" в командный файл | ||
И Я добавляю строку "echo командный файл" в командный файл | ||
И Я сообщаю содержимое командного файла | ||
И Я выполняю командный файл | ||
Тогда Вывод командного файла содержит "командный файл" | ||
И Код возврата командного файла равен 0 |
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 |
---|---|---|
@@ -1,3 +1,4 @@ | ||
<package-def> | ||
<class name="Команда" file="src/Классы/Команда.os"/> | ||
<package-def> | ||
<class name="Команда" file="src/Команда.os"/> | ||
<class name="КомандныйФайл" file="src/КомандныйФайл.os"/> | ||
</package-def> |
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 |
---|---|---|
@@ -1,10 +1,8 @@ | ||
| ||
Описание.Имя("commands") | ||
.Версия("0.1") | ||
.Версия("0.5") | ||
.ЗависитОт("logos") | ||
.ЗависитОт("asserts") | ||
.ЗависитОт("cmdline") | ||
.ЗависитОт("tempfiles") | ||
.ВключитьФайл("src") | ||
.ВключитьФайл("tests"); | ||
.ВключитьФайл("features"); |
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,36 @@ | ||
# commands | ||
|
||
## Библиотека для упрощения работы c запуском различных приложений и командных файлов (cmd, bat, bash) из oscript. | ||
|
||
Позволяет выполнять рутинные операции по запуску приложений и командных файлов системы. | ||
|
||
Пример работы: | ||
```bsl | ||
Команда = Новый Команда; | ||
Команда.УстановитьКоманду("oscript"); | ||
Команда.ДобавитьПараметр("-version"); | ||
КодВозврата = Команда.Выполнить(); | ||
Сообщить(КодВозврата); | ||
Сообщить(Команда.ПолучитьВывод()); | ||
``` | ||
|
||
или запуск командного файла | ||
```bsl | ||
КомандныйФайл = Новый КомандныйФайл; | ||
КомандныйФайл.Создать(); | ||
КомандныйФайл.ДобавитьКоманду("@echo off"); | ||
КомандныйФайл.ДобавитьКоманду("oscript -version"); | ||
Сообщить(КомандныйФайл.ПолучитьСодержимоеФайла()); | ||
КодВозврата = КомандныйФайл.Выполнить(); | ||
Сообщить(КодВозврата); | ||
Сообщить(КомандныйФайл.ПолучитьВывод()); | ||
``` | ||
|
||
Так же описание функциональности содержится в папке `features`. В прилагающихся `step_definitions` можно подсмотреть больше примеров. |
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.