1
0
mirror of https://github.com/alei1180/curlone.git synced 2025-10-08 23:51:52 +02:00

fix: Исправить формирование кода для коннектора с множественными опциями -F name=<file<N> (#241)

This commit is contained in:
Dmitry Ivanov
2025-10-05 22:40:12 +03:00
committed by GitHub
parent d06565762f
commit c7e6edab88
4 changed files with 531 additions and 499 deletions

View File

@@ -398,10 +398,10 @@
Для Каждого ИмяПеременнойФайла Из МассивПеременныхФайлов Цикл
КонструкторДанных.ДобавитьСтроку(
"%1[%2].Добавить(%3));",
"%1[%2].{t(Массив.Добавить)}(%3);",
ИмяПараметра,
КонструкторДанных.ПараметрВСтроку(ИмяПоля),
КонструкторДанных.ПараметрВСтроку(ИмяПеременнойФайла)
ИмяПеременнойФайла
);
КонецЦикла;

View File

@@ -0,0 +1,52 @@
#Использовать asserts
Перем _КонвертерКомандыCURL;
Перем _ГенераторПоУмолчанию;
Процедура ПриСозданииОбъекта(КонвертерКомандыCURL, ГенераторПоУмолчанию)
_КонвертерКомандыCURL = КонвертерКомандыCURL;
_ГенераторПоУмолчанию = ГенераторПоУмолчанию;
КонецПроцедуры
Процедура Проверить(КонсольнаяКоманда, ПрограммныйКод, Генератор = Неопределено) Экспорт
Если Генератор = Неопределено Тогда
Генератор = _ГенераторПоУмолчанию;
КонецЕсли;
// Результат конвертации
Ошибки = Неопределено;
_КонвертерКомандыCURL.УстановитьЯзыкПеревода("ru");
Результат = _КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки);
Ожидаем.Что(Результат, КонсольнаяКоманда).Равно(ПрограммныйКод);
Ожидаем.Что(Ошибки, КонсольнаяКоманда).Не_().Заполнено();
// Перевод
Если СодержитРусскиеБуквы(КонсольнаяКоманда) Тогда
Возврат;
КонецЕсли;
_КонвертерКомандыCURL.УстановитьЯзыкПеревода("en");
РезультатПеревода = _КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки);
Сообщение = СтрШаблон("Перевод %1:
|%2", КонсольнаяКоманда, РезультатПеревода);
Ожидаем.Что(РезультатПеревода).Не_().Содержит("{t(");
Ожидаем.Что(СодержитРусскиеБуквы(РезультатПеревода), Сообщение).ЭтоЛожь();
КонецПроцедуры
Функция СодержитРусскиеБуквы(Строка)
Алфавит = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"; // BSLLS:Typo-off
Для Порядок = 1 По СтрДлина(Алфавит) Цикл
Если СтрНайти(Строка, Сред(Алфавит, Порядок, 1)) > 0 Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
Возврат Ложь;
КонецФункции

View File

@@ -4,15 +4,18 @@
#Использовать asserts
#Использовать "../src/core"
#Использовать "helpers"
Перем КонвертерКомандыCURL; // КонвертерКомандыCURL
Перем ГенераторПоУмолчанию; // ГенераторПрограммногоКода1С
Перем ВалидаторКонвертацииКоманды; // ВалидаторКонвертацииКоманды
&Инициализация
Процедура ПередЗапускомТестов() Экспорт
КонвертерКомандыCURL = Новый КонвертерКомандыCURL();
ГенераторПоУмолчанию = Новый ГенераторПрограммногоКода1С();
ВалидаторКонвертацииКоманды = Новый ВалидаторКонвертацииКоманды(КонвертерКомандыCURL, ГенераторПоУмолчанию);
КонецПроцедуры
@@ -237,7 +240,7 @@
);
Для Каждого Строка Из ТестовыеДанные Цикл
ПроверитьКонвертациюБезОшибок(Строка.Ключ, Строка.Значение);
ВалидаторКонвертацииКоманды.Проверить(Строка.Ключ, Строка.Значение);
КонецЦикла;
КонецПроцедуры
@@ -262,7 +265,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -287,7 +290,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -301,7 +304,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -354,7 +357,7 @@
);
Для Каждого Строка Из ТестовыеДанные Цикл
ПроверитьКонвертациюБезОшибок(Строка.Ключ, Строка.Значение);
ВалидаторКонвертацииКоманды.Проверить(Строка.Ключ, Строка.Значение);
КонецЦикла;
КонецПроцедуры
@@ -426,7 +429,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -462,7 +465,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -480,7 +483,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -509,7 +512,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -524,7 +527,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""PUT"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -547,7 +550,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""PUT"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -601,7 +604,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""PUT"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -623,7 +626,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -643,7 +646,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -677,7 +680,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -713,7 +716,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -736,7 +739,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -757,7 +760,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -784,7 +787,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -811,7 +814,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""HEAD"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -836,7 +839,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -850,7 +853,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -866,7 +869,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -889,7 +892,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -912,7 +915,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -929,7 +932,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -946,7 +949,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -964,7 +967,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -982,7 +985,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1014,7 +1017,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1032,7 +1035,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1052,7 +1055,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1066,7 +1069,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""file.html"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1089,7 +1092,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""page2.html"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1119,7 +1122,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1149,7 +1152,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""index.html"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1179,7 +1182,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""/some/path/file.html"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1193,7 +1196,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""/some/path/about.html"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1261,7 +1264,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""/some/path\file.html"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1278,7 +1281,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1302,7 +1305,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1321,7 +1324,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1340,7 +1343,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1370,7 +1373,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1384,7 +1387,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1412,7 +1415,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1431,7 +1434,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1452,7 +1455,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1479,7 +1482,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1496,7 +1499,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1513,7 +1516,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1527,7 +1530,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1544,7 +1547,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1586,7 +1589,7 @@
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1599,7 +1602,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1614,7 +1617,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1627,7 +1630,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1643,7 +1646,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1656,7 +1659,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1669,7 +1672,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1702,7 +1705,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1720,7 +1723,7 @@
|
|Соединение.Получить(""/file.txt"", ""path/to/file"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1733,7 +1736,7 @@
|
|Соединение.Записать(""path/to/file.txt"", ""/newfile.txt"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1746,7 +1749,7 @@
|
|Соединение.Записать(""path/to/file.txt"", ""/file.txt"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1759,7 +1762,7 @@
|
|Соединение.Записать(""path/to/file.txt"", ""/dir/file.txt"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1772,7 +1775,7 @@
|
|Файлы = Соединение.НайтиФайлы(""/dir"", ""*"");";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1785,7 +1788,7 @@
|
|Файл = Соединение.НайтиФайлы(""/dir/file.txt"")[0];";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод);
КонецПроцедуры
@@ -1983,6 +1986,43 @@
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"
);
ТестовыеДанные.Вставить(
"curl http://example.com/ -F story=<hugefile1.txt -F story=<hugefile2.txt",
"ЧтениеТекста = Новый ЧтениеТекста(""hugefile1.txt"");
|ТекстовыеДанныеФайла_1 = ЧтениеТекста.Прочитать();
|
|ЧтениеТекста = Новый ЧтениеТекста(""hugefile2.txt"");
|ТекстовыеДанныеФайла_2 = ЧтениеТекста.Прочитать();
|
|РазделительMultipart = СтрЗаменить(Новый УникальныйИдентификатор, ""-"", """");
|
|Заголовки = Новый Соответствие();
|Заголовки.Вставить(""Content-Type"", ""multipart/form-data; boundary="" + РазделительMultipart);
|
|Соединение = Новый HTTPСоединение(""example.com"", 80);
|HTTPЗапрос = Новый HTTPЗапрос(""/"", Заголовки);
|Поток = HTTPЗапрос.ПолучитьТелоКакПоток();
|
|РазделительСтрок = Символы.ВК + Символы.ПС;
|ЗаписьДанных = Новый ЗаписьДанных(Поток, , , """", """");
|// Начало story
|ЗаписьДанных.ЗаписатьСтроку(""--"" + РазделительMultipart + РазделительСтрок);
|ЗаписьДанных.ЗаписатьСтроку(""Content-Disposition: form-data; name=""""story"""""" + РазделительСтрок);
|ЗаписьДанных.ЗаписатьСтроку(РазделительСтрок);
|ЗаписьДанных.ЗаписатьСтроку(ТекстовыеДанныеФайла_1 + РазделительСтрок);
|// Конец story
|// Начало story
|ЗаписьДанных.ЗаписатьСтроку(""--"" + РазделительMultipart + РазделительСтрок);
|ЗаписьДанных.ЗаписатьСтроку(""Content-Disposition: form-data; name=""""story"""""" + РазделительСтрок);
|ЗаписьДанных.ЗаписатьСтроку(РазделительСтрок);
|ЗаписьДанных.ЗаписатьСтроку(ТекстовыеДанныеФайла_2 + РазделительСтрок);
|// Конец story
|ЗаписьДанных.ЗаписатьСтроку(""--"" + РазделительMultipart + ""--"" + РазделительСтрок);
|ЗаписьДанных.Закрыть();
|
|HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"
);
ТестовыеДанные.Вставить(
"curl http://example7.com/ -F 'web=@index.html;type=text/html'",
"РазделительMultipart = СтрЗаменить(Новый УникальныйИдентификатор, ""-"", """");
@@ -2364,7 +2404,7 @@
);
Для Каждого Строка Из ТестовыеДанные Цикл
ПроверитьКонвертациюБезОшибок(Строка.Ключ, Строка.Значение);
ВалидаторКонвертацииКоманды.Проверить(Строка.Ключ, Строка.Значение);
КонецЦикла;
КонецПроцедуры
@@ -2408,7 +2448,7 @@
|Результат = ПрочитатьJSON(ЧтениеJSON, Истина);
|Поток.Закрыть();";
ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод, Генератор);
ВалидаторКонвертацииКоманды.Проверить(КонсольнаяКоманда, ПрограммныйКод, Генератор);
КонецПроцедуры
@@ -2712,48 +2752,7 @@
);
Для Каждого Строка Из ТестовыеДанные Цикл
ПроверитьКонвертациюБезОшибок(Строка.Ключ, Строка.Значение);
ВалидаторКонвертацииКоманды.Проверить(Строка.Ключ, Строка.Значение);
КонецЦикла;
КонецПроцедуры
Процедура ПроверитьКонвертациюБезОшибок(КонсольнаяКоманда, ПрограммныйКод, Генератор = Неопределено)
Если Генератор = Неопределено Тогда
Генератор = ГенераторПоУмолчанию;
КонецЕсли;
// Результат конвертации
Ошибки = Неопределено;
КонвертерКомандыCURL.УстановитьЯзыкПеревода("ru");
Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки);
Ожидаем.Что(Результат, КонсольнаяКоманда).Равно(ПрограммныйКод);
Ожидаем.Что(Ошибки, КонсольнаяКоманда).Не_().Заполнено();
// Перевод
Если СодержитРусскиеБуквы(КонсольнаяКоманда) Тогда
Возврат;
КонецЕсли;
КонвертерКомандыCURL.УстановитьЯзыкПеревода("en");
РезультатПеревода = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки);
Ожидаем.Что(РезультатПеревода).Не_().Содержит("{t(");
Ожидаем.Что(СодержитРусскиеБуквы(РезультатПеревода), "Перевод").ЭтоЛожь();
КонецПроцедуры
Функция СодержитРусскиеБуквы(Строка)
Алфавит = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"; // BSLLS:Typo-off
Для Порядок = 1 По СтрДлина(Алфавит) Цикл
Если СтрНайти(Строка, Сред(Алфавит, Порядок, 1)) > 0 Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
Возврат Ложь;
КонецФункции