diff --git "a/features/step_definitions/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.os" "b/features/step_definitions/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.os" index 5e22647..3bf1b8b 100644 --- "a/features/step_definitions/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.os" +++ "b/features/step_definitions/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.os" @@ -9,6 +9,7 @@ ВсеШаги = Новый Массив; + ВсеШаги.Добавить("ЯДобавляюПараметрыДляКоманды"); ВсеШаги.Добавить("ЯВыполняюКомандуЧерезКомандныйПроцессорСистемы"); ВсеШаги.Добавить("ЯВыполняюКомандуБезКомандногоПроцессораСистемы"); ВсеШаги.Добавить("ЯУстанавливаюОжидаемыйКодВозвратаДляКоманды"); @@ -88,6 +89,17 @@ Команда.ПоказыватьВыводНемедленно(Ложь); КонецПроцедуры +//Я добавляю параметры для команды "oscript" +//| -version | +//| -encoding=utf-8 | +Процедура ЯДобавляюПараметрыДляКоманды(Знач ИмяИлиТекстКоманды, Знач ТаблицаПараметров) Экспорт + //TODO перенести шаг в библиотеку 1bdd + Команда = ПолучитьКомандуИзКонтекста(ИмяИлиТекстКоманды); + + // ПараметрКоманды = ЗаменитьШаблоныВПараметрахКоманды(ПараметрКоманды);//TODO раскомментировать код внутри 1bdd + МассивПараметров = ТаблицаПараметров.ВыгрузитьКолонку(0); + Команда.ДобавитьПараметры(МассивПараметров); +КонецПроцедуры // { Служебные функции diff --git "a/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.feature" "b/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.feature" index 757405b..09f06e4 100644 --- "a/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.feature" +++ "b/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\232\320\276\320\274\320\260\320\275\320\264\321\213.feature" @@ -23,6 +23,13 @@ И Вывод команды "git" содержит "version" И Код возврата команды "git" равен 0 +Сценарий: Выполнение команды с массивом параметров + Когда Я добавляю параметры для команды "oscript" + | -version | + | -encoding=utf-8 | + И Я выполняю команду "oscript" + Тогда я вижу в консоли строку подобно "(\d+\.){3}\d+" + Сценарий: Выполнение команды через командный процессор системы Когда Я выполняю команду "oscript" через командный процессор системы Тогда Вывод команды "oscript" содержит "1Script Execution Engine" diff --git "a/src/\320\232\320\276\320\274\320\260\320\275\320\264\320\260.os" "b/src/\320\232\320\276\320\274\320\260\320\275\320\264\320\260.os" index 3b48686..4c7c1ec 100644 --- "a/src/\320\232\320\276\320\274\320\260\320\275\320\264\320\260.os" +++ "b/src/\320\232\320\276\320\274\320\260\320\275\320\264\320\260.os" @@ -58,7 +58,7 @@ Процедура УстановитьКоманду(Знач ПутьКоманды) Экспорт Приложение = ПутьКоманды; ИспользуетсяЕдинаяСтрокаЗапуска = Ложь; -КонецПроцедуры // УстановитьКоманду() +КонецПроцедуры // Установить строку запуска команды. // В этом случае обрамления кавычками не выполняется. @@ -69,7 +69,7 @@ Процедура УстановитьСтрокуЗапуска(Знач СтрокаЗапуска) Экспорт Приложение = СтрокаЗапуска; ИспользуетсяЕдинаяСтрокаЗапуска = Истина; -КонецПроцедуры // УстановитьКоманду() +КонецПроцедуры // Получить путь команды. // @@ -87,7 +87,18 @@ // Процедура ДобавитьПараметр(Знач Параметр) Экспорт Параметры.Добавить(Параметр); -КонецПроцедуры // УстановитьКоманду() +КонецПроцедуры + +// Добавить параметры команды. +// +// Параметры: +// Массив - массив параметров +// +Процедура ДобавитьПараметры(Знач МассивПараметров) Экспорт + Для каждого Параметр Из МассивПараметров Цикл + Параметры.Добавить(Параметр); + КонецЦикла; +КонецПроцедуры // Установить новые параметры команды. // Может использовать для очистки параметров. Для этого нужно передать пустую строку @@ -98,7 +109,7 @@ Процедура УстановитьПараметры(Знач СтрокаПараметров) Экспорт Параметры = Новый Массив; Параметры.Добавить(СтрокаПараметров); -КонецПроцедуры // УстановитьКоманду() +КонецПроцедуры // Получить вывод выполненной команды. //