From b4ae31d884e1a85f875d67d5ee07d8a86fce0c69 Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Sat, 18 Jan 2025 22:46:24 +0300 Subject: [PATCH 1/6] =?UTF-8?q?test:=20=D0=9E=D0=B4=D0=BD=D0=BE=D0=BA?= =?UTF-8?q?=D1=80=D0=B0=D1=82=D0=BD=D0=BE=D0=B5=20=D1=81=D0=BE=D0=B7=D0=B4?= =?UTF-8?q?=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=BA=D1=82?= =?UTF-8?q?=D0=B0=20=D0=9A=D0=BE=D0=BD=D0=B2=D0=B5=D1=80=D1=82=D0=B5=D1=80?= =?UTF-8?q?=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8BCURL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\320\276\320\264\320\2601\320\241_test.os" | 223 +++++++----------- ...0\272\321\202\320\276\321\200HTTP_test.os" | 145 +++++------- ...0\260\320\275\320\264\321\213CURL_test.os" | 19 +- 3 files changed, 145 insertions(+), 242 deletions(-) diff --git "a/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241_test.os" "b/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241_test.os" index 5e2fbd5..5251905 100644 --- "a/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241_test.os" +++ "b/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241_test.os" @@ -1,6 +1,17 @@ #Использовать asserts #Использовать ".." +Перем КонвертерКомандыCURL; // см. КонвертерКомандыCURL +Перем Генератор; // см. ГенераторПрограммногоКода1С + +&Инициализация +Процедура ПередЗапускомТестов() Экспорт + + КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); + Генератор = Новый ГенераторПрограммногоКода1С(); + +КонецПроцедуры + &Тест Процедура ТестДолжен_ПроверитьЗаголовки() Экспорт @@ -19,8 +30,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -47,8 +57,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -64,8 +73,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -81,8 +89,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -128,8 +135,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -167,8 +173,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -188,8 +193,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -220,8 +224,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -238,8 +241,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""PUT"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -264,8 +266,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""PUT"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -297,8 +298,7 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С(), Ошибки); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки); Ожидаем.Что(Результат).Равно(ПрограммныйКод); Ожидаем.Что(Ошибки).Заполнено(); @@ -320,8 +320,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""PUT"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -345,8 +344,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -368,8 +366,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -406,8 +403,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -445,8 +441,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -471,8 +466,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -495,8 +489,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -525,8 +518,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -555,8 +547,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""HEAD"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -583,8 +574,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -600,8 +590,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -619,8 +608,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -645,8 +633,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -671,8 +658,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -691,8 +677,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -711,8 +696,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -732,8 +716,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -754,8 +737,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -790,8 +772,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -811,8 +792,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -834,8 +814,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -851,8 +830,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""file.html"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -877,8 +855,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""page2.html"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -910,8 +887,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -943,8 +919,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""index.html"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -957,8 +932,7 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); Ожидаем.Что(Ошибки).Заполнено(); @@ -981,8 +955,7 @@ |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""/some/path/file.html"");"; ПрограммныйКод = СтрЗаменить(ПрограммныйКод, "/some/path/", КаталогСохраненияОС + ПолучитьРазделительПути()); - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1002,8 +975,7 @@ |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос, ""/some/path/about.html"");"; ПрограммныйКод = СтрЗаменить(ПрограммныйКод, "/some/path/", КаталогСохраненияОС + ПолучитьРазделительПути()); - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1022,8 +994,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1049,8 +1020,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1071,8 +1041,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1093,8 +1062,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1107,10 +1075,7 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, - Новый ГенераторПрограммногоКода1С(), - Ошибки); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); Ожидаем.Что(Ошибки).Заполнено(); @@ -1129,8 +1094,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1146,8 +1110,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1177,8 +1140,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1199,8 +1161,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1223,8 +1184,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1253,8 +1213,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""POST"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1273,8 +1232,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1293,8 +1251,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1310,8 +1267,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1330,8 +1286,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1375,8 +1330,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1395,8 +1349,7 @@ | |HTTPОтвет = Соединение.ВызватьHTTPМетод(""GET"", HTTPЗапрос);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1411,8 +1364,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1429,8 +1381,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1445,8 +1396,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1464,8 +1414,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1480,8 +1429,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1496,8 +1444,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1514,8 +1461,7 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С(), Ошибки); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки); Ожидаем.Что(Результат).Равно(ПрограммныйКод); Ожидаем.Что(Ошибки).Заполнено(); @@ -1533,8 +1479,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1554,8 +1499,7 @@ | |Соединение.Получить(""/file.txt"", ""path/to/file"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1570,8 +1514,7 @@ | |Соединение.Записать(""path/to/file.txt"", ""/newfile.txt"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1586,8 +1529,7 @@ | |Соединение.Записать(""path/to/file.txt"", ""/file.txt"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1602,8 +1544,7 @@ | |Соединение.Записать(""path/to/file.txt"", ""/dir/file.txt"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1618,8 +1559,7 @@ | |Файлы = Соединение.НайтиФайлы(""/dir"", ""*"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -1634,8 +1574,7 @@ | |Файл = Соединение.НайтиФайлы(""/dir/file.txt"")[0];"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКода1С()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); diff --git "a/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP_test.os" "b/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP_test.os" index e8f3054..ddfd8a0 100644 --- "a/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP_test.os" +++ "b/tests/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP_test.os" @@ -1,6 +1,17 @@ #Использовать asserts #Использовать ".." +Перем КонвертерКомандыCURL; // см. КонвертерКомандыCURL +Перем Генератор; // см. ГенераторПрограммногоКодаКоннекторHTTP + +&Инициализация +Процедура ПередЗапускомТестов() Экспорт + + КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); + Генератор = Новый ГенераторПрограммногоКодаКоннекторHTTP(); + +КонецПроцедуры + &Тест Процедура ТестДолжен_ПроверитьЗаголовки() Экспорт @@ -19,8 +30,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -47,8 +57,7 @@ | |Результат = КоннекторHTTP.Get(""http://example2.com/page2"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -61,8 +70,7 @@ ПрограммныйКод = "Результат = КоннекторHTTP.Post(""http://example.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -80,8 +88,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -120,8 +127,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", Данные);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -148,8 +154,7 @@ |// Запрос 2. http://example2.com |Результат = КоннекторHTTP.Post(""http://example2.com"", Данные);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -165,8 +170,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", ТекстовыеДанныеФайла_1);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -190,8 +194,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", Данные);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -205,8 +208,7 @@ ПрограммныйКод = "Данные = Новый ДвоичныеДанные(""path/to/file.txt""); |Результат = КоннекторHTTP.Put(""http://example.com/file.txt"", Данные);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -225,8 +227,7 @@ |Данные = Новый ДвоичныеДанные(""path/to/file2.txt""); |Результат = КоннекторHTTP.Put(""http://example.com/file2.txt"", Данные);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -252,8 +253,7 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP(), Ошибки); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки); Ожидаем.Что(Результат).Равно(ПрограммныйКод); Ожидаем.Что(Ошибки).Заполнено(); @@ -276,8 +276,7 @@ |// Запрос 2. http://example2.com |Результат = КоннекторHTTP.Get(""http://example2.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -307,8 +306,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", Данные);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -334,8 +332,7 @@ |// Запрос 4. http://example4.com |Результат = КоннекторHTTP.Get(""http://example4.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -357,8 +354,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com?param1=value¶m2=value2&"" + ТекстовыеДанныеФайла_1);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -378,8 +374,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com?"" + ТекстовыеДанныеФайла_1);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -405,8 +400,7 @@ | |Результат = КоннекторHTTP.Get(URL);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -429,8 +423,7 @@ | |Результат = КоннекторHTTP.Head(""http://example2.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -443,8 +436,7 @@ ПрограммныйКод = "Результат = КоннекторHTTP.Options(""http://example.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -465,8 +457,7 @@ | |Результат = КоннекторHTTP.Get(""http://example2.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -479,8 +470,7 @@ ПрограммныйКод = "Результат = КоннекторHTTP.Get(""http://example.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -496,8 +486,7 @@ | |Результат = КоннекторHTTP.Get(""https://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -513,8 +502,7 @@ | |Результат = КоннекторHTTP.Get(""https://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -531,8 +519,7 @@ | |Результат = КоннекторHTTP.Get(""https://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -564,8 +551,7 @@ | |Результат = КоннекторHTTP.Get(URL);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -582,8 +568,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com?"" + ТекстовыеДанныеФайла_1);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -609,8 +594,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", ТекстовыеДанныеФайла_1, ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -629,8 +613,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -656,8 +639,7 @@ | |Результат = КоннекторHTTP.Get(""http://example2.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -678,8 +660,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -700,8 +681,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -714,10 +694,7 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, - Новый ГенераторПрограммногоКодаКоннекторHTTP(), - Ошибки); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); Ожидаем.Что(Ошибки).Заполнено(); @@ -736,8 +713,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -750,8 +726,7 @@ ПрограммныйКод = "Результат = КоннекторHTTP.Get(""http://example.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -780,8 +755,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", Данные, ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -801,8 +775,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", ""{""""drink"""": """"coffe""""}"", ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -824,8 +797,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", ""{""""drink"""": """"coffe""""}"", ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -853,8 +825,7 @@ | |Результат = КоннекторHTTP.Post(""http://example.com"", Данные, ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -873,8 +844,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -893,8 +863,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -907,8 +876,7 @@ ПрограммныйКод = "Результат = КоннекторHTTP.Get(""http://example.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -927,8 +895,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -965,8 +932,7 @@ | |Результат = КоннекторHTTP.Get(""http://example3.com"");"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -984,8 +950,7 @@ | |Результат = КоннекторHTTP.Get(""http://example.com"", , ДополнительныеПараметры);"; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); - Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Новый ГенераторПрограммногоКодаКоннекторHTTP()); + Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда, Генератор); Ожидаем.Что(Результат).Равно(ПрограммныйКод); diff --git "a/tests/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL_test.os" "b/tests/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL_test.os" index 22b56b4..d3ac8d3 100644 --- "a/tests/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL_test.os" +++ "b/tests/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL_test.os" @@ -1,6 +1,15 @@ #Использовать asserts #Использовать ".." +Перем КонвертерКомандыCURL; // см. КонвертерКомандыCURL + +&Инициализация +Процедура ПередЗапускомТестов() Экспорт + + КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); + +КонецПроцедуры + &Тест Процедура ТестДолжен_ПроверитьОшибкуКомандаДолжнаНачинатьсяСCurl() Экспорт @@ -8,7 +17,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); @@ -25,7 +33,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); @@ -42,7 +49,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); @@ -64,7 +70,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Равно(ПрограммныйКод); @@ -81,7 +86,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); @@ -98,7 +102,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); @@ -123,7 +126,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); @@ -150,7 +152,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); @@ -172,7 +173,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Ошибки, "Команда валидна: " + КонсольнаяКоманда).Не_().Заполнено(); @@ -187,7 +187,6 @@ Ошибки = Неопределено; - КонвертерКомандыCURL = Новый КонвертерКомандыCURL(); Результат = КонвертерКомандыCURL.Конвертировать(КонсольнаяКоманда,, Ошибки); Ожидаем.Что(Результат).Не_().Заполнено(); From 9040d9bac51d08b39663055a6d0e7e56ea7f020e Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Sat, 18 Jan 2025 23:13:06 +0300 Subject: [PATCH 2/6] =?UTF-8?q?refactor:=20=D0=A3=D0=BF=D0=BE=D1=80=D1=8F?= =?UTF-8?q?=D0=B4=D0=BE=D1=87=D0=B8=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D1=86=D0=B5=D0=B4=D1=83=D1=80=20=D0=B8=20=D1=84?= =?UTF-8?q?=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\232\320\276\320\264\320\2601\320\241.os" | 440 +++++++++--------- ...65\320\272\321\202\320\276\321\200HTTP.os" | 169 +++---- ...74\320\260\320\275\320\264\321\213CURL.os" | 12 +- 3 files changed, 319 insertions(+), 302 deletions(-) diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" index 8ee75d5..b8853cd 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" @@ -36,67 +36,23 @@ // Строка - Программный код Функция Получить(Описание, Ошибки = Неопределено) Экспорт - МаксимальнаяДлинаАдресаВКомментарии = 100; - - ОписаниеЗапроса = Описание; - - ВызванМетодПоТекущемуURL = Ложь; - ПрочитанныеФайлы.Очистить(); - Если Ошибки = Неопределено Тогда Ошибки = Новый Массив(); КонецЕсли; + ОписаниеЗапроса = Описание; ИсходящиеОшибки = Ошибки; - Конструктор = Новый КонструкторПрограммногоКода(); - + + ПрочитанныеФайлы.Очистить(); + ОпределитьМетодУстановкиТелаЗапроса(); - - ВывестиЗаголовки(); + ДобавитьЗаголовки(); ДобавитьЧтениеФайлов(); ДобавитьДанныеЗапроса(); - ВывестиЗащищенноеСоединение(); - ВывестиИнициализациюПрокси(); - - КоличествоURL = ОписаниеЗапроса.АдресаРесурсов.Количество(); - НомерЗапроса = 0; - Для Каждого ОписаниеРесурса Из ОписаниеЗапроса.АдресаРесурсов Цикл - - НомерЗапроса = НомерЗапроса + 1; - СтруктураURL = Новый ПарсерURL(ОписаниеРесурса.URL); - ВызванМетодПоТекущемуURL = Ложь; - - Конструктор.ДобавитьПустуюСтроку(); - - Если КоличествоURL > 1 Тогда - Конструктор.ДобавитьКомментарий("Запрос %1. %2", - НомерЗапроса, - Лев(ОписаниеРесурса.URL, МаксимальнаяДлинаАдресаВКомментарии)); - КонецЕсли; - - Если ОбщегоНазначения.ЭтоHTTP(СтруктураURL.Схема) Тогда - ВывестиHTTPСоединение(СтруктураURL); - ДобавитьПоследовательнуюОтправкуФайлов(ОписаниеРесурса); - - Если Не ВызванМетодПоТекущемуURL Тогда - ВывестиHTTPЗапрос(СтруктураURL); - ДобавитьУстановкуТелаЗапроса(ОписаниеРесурса); - ВывестиВызовHTTPМетода(ОписаниеРесурса); - КонецЕсли; - ИначеЕсли ОбщегоНазначения.ЭтоFTP(СтруктураURL.Схема) Тогда - ВывестиFTPСоединение(СтруктураURL); - ВывестиВызовFTPМетода(ОписаниеРесурса, СтруктураURL); - Иначе - ТекстОшибки = СтрШаблон("Протокол ""%1"" не поддерживается", СтруктураURL.Схема); - ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяКритичнаяОшибка(ТекстОшибки)); - КонецЕсли; - - Если ОбщегоНазначения.ЕстьКритичныеОшибки(ИсходящиеОшибки) Тогда - Возврат ""; - КонецЕсли; - - КонецЦикла; + ДобавитьЗащищенноеСоединение(); + ДобавитьПрокси(); + ДобавитьЗапросы(); Возврат Конструктор.ПолучитьРезультат(); @@ -185,30 +141,81 @@ ИмяПараметраТелоЗапросаСтрока = "ТелоЗапроса"; ПрочитанныеФайлы = Новый Массив(); - ВызванМетодПоТекущемуURL = Ложь; КонецПроцедуры -Функция ПолучитьПорт(СтруктураURL) +Процедура ДобавитьЗаголовки() + + Если Не ОписаниеЗапроса.Заголовки.Количество() Тогда + Возврат; + КонецЕсли; - Порт = СтруктураURL.Порт; - Если Не ЗначениеЗаполнено(Порт) Тогда - Если СтруктураURL.Схема = ПротоколыURL.HTTPS Тогда - Порт = 443; - ИначеЕсли СтруктураURL.Схема = ПротоколыURL.HTTP Тогда - Порт = 80; - ИначеЕсли СтруктураURL.Схема = ПротоколыURL.FTPS Тогда - Порт = 990; - ИначеЕсли СтруктураURL.Схема = ПротоколыURL.FTP Тогда - Порт = 21; + Конструктор.ДобавитьСтроку("%1 = Новый Соответствие();", ИмяПараметраЗаголовки); + + Для Каждого Заголовок Из ОписаниеЗапроса.Заголовки Цикл + ПараметрыФункции = Новый Массив(); + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(Заголовок.Ключ)); + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(Заголовок.Значение)); + + Конструктор.ДобавитьСтроку("%1.Вставить(%2);", + ИмяПараметраЗаголовки, + Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + КонецЦикла; + +КонецПроцедуры + +Процедура ДобавитьЧтениеФайлов() + + ТребуетсяЧтениеФайловТелаЗапроса = Не МетодУстановкиТелаЗапроса = "ИзФайла"; + + ФайлыДляЧтения = Новый Массив(); + Для Каждого ПередаваемыйФайл Из ОписаниеЗапроса.Файлы Цикл + + Если Не (ПередаваемыйФайл.ПрочитатьСодержимое + Или ПередаваемыйФайл.Назначение = НазначенияПередаваемыхДанных.СтрокаЗапроса) Тогда + Продолжить; КонецЕсли; + + Если ПередаваемыйФайл.Назначение = НазначенияПередаваемыхДанных.ТелоЗапроса + И Не ТребуетсяЧтениеФайловТелаЗапроса Тогда + Продолжить; + КонецЕсли; + + ФайлыДляЧтения.Добавить(ПередаваемыйФайл); + + КонецЦикла; + + Код = УниверсальныеБлокиКода.ЧтениеТекстовыхФайлов(ФайлыДляЧтения, ПрочитанныеФайлы); + + Если Не ПустаяСтрока(Код) Тогда + Конструктор + .ДобавитьПустуюСтроку() + .ДобавитьСтроку(Код); КонецЕсли; - Возврат Порт; +КонецПроцедуры -КонецФункции +Процедура ДобавитьДанныеЗапроса() -Процедура ВывестиЗащищенноеСоединение() + ТелоЗапросаСтрока = ""; + ТелоЗапроса = УниверсальныеБлокиКода.СборкаДанныхЗапросаВСтроку( + НазначенияПередаваемыхДанных.ТелоЗапроса, + ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, + ПрочитанныеФайлы); + + Если ЗначениеЗаполнено(ТелоЗапроса) Тогда + Если СтрЧислоСтрок(ТелоЗапроса) = 1 Тогда + ТелоЗапросаСтрока = ТелоЗапроса; + Иначе + Конструктор + .ДобавитьПустуюСтроку() + .ДобавитьСтроку("%1 = %2;", ИмяПараметраТелоЗапросаСтрока, ТелоЗапроса); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +Процедура ДобавитьЗащищенноеСоединение() ИспользуетсяЗащищенноеСоединение = Ложь; @@ -264,7 +271,7 @@ КонецПроцедуры -Процедура ВывестиИнициализациюПрокси() +Процедура ДобавитьПрокси() Если Не ОписаниеЗапроса.ИспользуетсяПрокси() Тогда Возврат; @@ -302,158 +309,57 @@ КонецПроцедуры -Процедура ВывестиHTTPСоединение(СтруктураURL) - - Таймаут = 0; - Если ЗначениеЗаполнено(ОписаниеЗапроса.Таймаут) И ЗначениеЗаполнено(ОписаниеЗапроса.ТаймаутСоединения) Тогда - Таймаут = ОписаниеЗапроса.Таймаут + ОписаниеЗапроса.ТаймаутСоединения; - КонецЕсли; - - ИспользуетсяЗащищенноеСоединение = ИспользуетсяЗащищенноеСоединение(СтруктураURL); - - ПараметрыФункции = Новый Массив; - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(СтруктураURL.Сервер)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ПолучитьПорт(СтруктураURL))); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ИмяПользователя)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПарольПользователя)); - ПараметрыФункции.Добавить(?(ОписаниеЗапроса.ИспользуетсяПрокси(), ИмяПараметраПрокси, "")); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(Таймаут)); - ПараметрыФункции.Добавить(?(ИспользуетсяЗащищенноеСоединение, ИмяПараметраЗащищенноеСоединение, "")); - - Конструктор.ДобавитьСтроку("%1 = Новый HTTPСоединение(%2);", - ИмяПараметраСоединение, - Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); - -КонецПроцедуры - -Процедура ВывестиFTPСоединение(СтруктураURL) +Процедура ДобавитьЗапросы() - Если ЗначениеЗаполнено(ОписаниеЗапроса.FTPАдресОбратногоСоединения) - И Не ОписаниеЗапроса.FTPАдресОбратногоСоединения = "-" Тогда - ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяОшибка("Адрес из опции -P, --ftp-port было проигнорировано")); - КонецЕсли; - - Таймаут = 0; - Если ЗначениеЗаполнено(ОписаниеЗапроса.Таймаут) И ЗначениеЗаполнено(ОписаниеЗапроса.ТаймаутСоединения) Тогда - Таймаут = ОписаниеЗапроса.Таймаут + ОписаниеЗапроса.ТаймаутСоединения; - КонецЕсли; - - ИспользуетсяЗащищенноеСоединение = ИспользуетсяЗащищенноеСоединение(СтруктураURL); - - ПараметрыФункции = Новый Массив; - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(СтруктураURL.Сервер)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ПолучитьПорт(СтруктураURL))); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ИмяПользователя)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПарольПользователя)); - ПараметрыФункции.Добавить(?(ОписаниеЗапроса.ИспользуетсяПрокси(), ИмяПараметраПрокси, "")); - ПараметрыФункции.Добавить(?(ОписаниеЗапроса.FTPПассивныйРежимСоединения, Истина, "")); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(Таймаут)); - ПараметрыФункции.Добавить(?(ИспользуетсяЗащищенноеСоединение, ИмяПараметраЗащищенноеСоединение, "")); - - Конструктор.ДобавитьСтроку("%1 = Новый FTPСоединение(%2);", - ИмяПараметраСоединение, - Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); - -КонецПроцедуры - -Процедура ВывестиЗаголовки() - - Если Не ОписаниеЗапроса.Заголовки.Количество() Тогда - Возврат; - КонецЕсли; - - Конструктор.ДобавитьСтроку("%1 = Новый Соответствие();", ИмяПараметраЗаголовки); + МаксимальнаяДлинаАдресаВКомментарии = 100; - Для Каждого Заголовок Из ОписаниеЗапроса.Заголовки Цикл - ПараметрыФункции = Новый Массив(); - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(Заголовок.Ключ)); - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(Заголовок.Значение)); + КоличествоURL = ОписаниеЗапроса.АдресаРесурсов.Количество(); + НомерЗапроса = 0; - Конструктор.ДобавитьСтроку("%1.Вставить(%2);", - ИмяПараметраЗаголовки, - Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); - КонецЦикла; + Для Каждого ОписаниеРесурса Из ОписаниеЗапроса.АдресаРесурсов Цикл + + НомерЗапроса = НомерЗапроса + 1; + СтруктураURL = Новый ПарсерURL(ОписаниеРесурса.URL); + ВызванМетодПоТекущемуURL = Ложь; -КонецПроцедуры + Конструктор.ДобавитьПустуюСтроку(); -Процедура ВывестиHTTPЗапрос(СтруктураURL) + Если КоличествоURL > 1 Тогда + Конструктор.ДобавитьКомментарий("Запрос %1. %2", + НомерЗапроса, + Лев(ОписаниеРесурса.URL, МаксимальнаяДлинаАдресаВКомментарии)); + КонецЕсли; - ПараметрыФункции = Новый Массив; - - АдресРесурсаКод = УниверсальныеБлокиКода.СборкаАдресаРесурса(СтруктураURL, - ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, - ПрочитанныеФайлы); + Если ОбщегоНазначения.ЭтоHTTP(СтруктураURL.Схема) Тогда - Если ПустаяСтрока(АдресРесурсаКод) Тогда - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку("/")); - ИначеЕсли СтрЧислоСтрок(АдресРесурсаКод) > 1 Тогда - Конструктор - .ДобавитьПустуюСтроку() - .ДобавитьСтроку("АдресРесурса = %1;", АдресРесурсаКод); - ПараметрыФункции.Добавить("АдресРесурса"); - Иначе - ПараметрыФункции.Добавить(АдресРесурсаКод); - КонецЕсли; + ДобавитьHTTPСоединение(СтруктураURL); + ДобавитьПоследовательнуюОтправкуФайлов(ОписаниеРесурса); - Если ОписаниеЗапроса.Заголовки.Количество() Тогда - ПараметрыФункции.Добавить(ИмяПараметраЗаголовки); - КонецЕсли; + Если Не ВызванМетодПоТекущемуURL Тогда + ДобавитьHTTPЗапрос(СтруктураURL); + ДобавитьУстановкуТелаЗапроса(ОписаниеРесурса); + ДобавитьВызовHTTPМетода(ОписаниеРесурса); + КонецЕсли; - Конструктор.ДобавитьСтроку("%1 = Новый HTTPЗапрос(%2);", - ИмяПараметраHTTPЗапрос, - Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + ИначеЕсли ОбщегоНазначения.ЭтоFTP(СтруктураURL.Схема) Тогда -КонецПроцедуры + ДобавитьFTPСоединение(СтруктураURL); + ДобавитьВызовFTPМетода(ОписаниеРесурса, СтруктураURL); -Процедура ДобавитьЧтениеФайлов() - - ТребуетсяЧтениеФайловТелаЗапроса = Не МетодУстановкиТелаЗапроса = "ИзФайла"; + Иначе - ФайлыДляЧтения = Новый Массив(); - Для Каждого ПередаваемыйФайл Из ОписаниеЗапроса.Файлы Цикл + ТекстОшибки = СтрШаблон("Протокол ""%1"" не поддерживается", СтруктураURL.Схема); + ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяКритичнаяОшибка(ТекстОшибки)); - Если Не (ПередаваемыйФайл.ПрочитатьСодержимое - Или ПередаваемыйФайл.Назначение = НазначенияПередаваемыхДанных.СтрокаЗапроса) Тогда - Продолжить; КонецЕсли; - Если ПередаваемыйФайл.Назначение = НазначенияПередаваемыхДанных.ТелоЗапроса - И Не ТребуетсяЧтениеФайловТелаЗапроса Тогда - Продолжить; + Если ОбщегоНазначения.ЕстьКритичныеОшибки(ИсходящиеОшибки) Тогда + Конструктор.Очистить(); + Возврат; КонецЕсли; - ФайлыДляЧтения.Добавить(ПередаваемыйФайл); - КонецЦикла; - Код = УниверсальныеБлокиКода.ЧтениеТекстовыхФайлов(ФайлыДляЧтения, ПрочитанныеФайлы); - - Если Не ПустаяСтрока(Код) Тогда - Конструктор - .ДобавитьПустуюСтроку() - .ДобавитьСтроку(Код); - КонецЕсли; - -КонецПроцедуры - -Процедура ДобавитьДанныеЗапроса() - - ТелоЗапросаСтрока = ""; - ТелоЗапроса = УниверсальныеБлокиКода.СборкаДанныхЗапросаВСтроку( - НазначенияПередаваемыхДанных.ТелоЗапроса, - ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, - ПрочитанныеФайлы); - - Если ЗначениеЗаполнено(ТелоЗапроса) Тогда - Если СтрЧислоСтрок(ТелоЗапроса) = 1 Тогда - ТелоЗапросаСтрока = ТелоЗапроса; - Иначе - Конструктор - .ДобавитьПустуюСтроку() - .ДобавитьСтроку("%1 = %2;", ИмяПараметраТелоЗапросаСтрока, ТелоЗапроса); - КонецЕсли; - КонецЕсли; - КонецПроцедуры Процедура ДобавитьПоследовательнуюОтправкуФайлов(ОписаниеРесурса) @@ -493,18 +399,89 @@ СтруктураURL.Путь = ОбщегоНазначения.ДополнитьИменемФайлаПутьURL(ПередаваемыйФайл.ИмяФайла, СтруктураURL.Путь); КонецЕсли; - ВывестиHTTPЗапрос(СтруктураURL); + ДобавитьHTTPЗапрос(СтруктураURL); Конструктор.ДобавитьСтроку("%1.УстановитьИмяФайлаТела(%2);", ИмяПараметраHTTPЗапрос, Конструктор.ПараметрВСтроку(ПередаваемыйФайл.ИмяФайла)); - ВывестиВызовHTTPМетода(ОписаниеРесурса); + ДобавитьВызовHTTPМетода(ОписаниеРесурса); КонецЦикла; КонецПроцедуры +Процедура ДобавитьHTTPСоединение(СтруктураURL) + + Таймаут = 0; + Если ЗначениеЗаполнено(ОписаниеЗапроса.Таймаут) И ЗначениеЗаполнено(ОписаниеЗапроса.ТаймаутСоединения) Тогда + Таймаут = ОписаниеЗапроса.Таймаут + ОписаниеЗапроса.ТаймаутСоединения; + КонецЕсли; + + ИспользуетсяЗащищенноеСоединение = ИспользуетсяЗащищенноеСоединение(СтруктураURL); + + ПараметрыФункции = Новый Массив; + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(СтруктураURL.Сервер)); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ПолучитьПорт(СтруктураURL))); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ИмяПользователя)); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПарольПользователя)); + ПараметрыФункции.Добавить(?(ОписаниеЗапроса.ИспользуетсяПрокси(), ИмяПараметраПрокси, "")); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(Таймаут)); + ПараметрыФункции.Добавить(?(ИспользуетсяЗащищенноеСоединение, ИмяПараметраЗащищенноеСоединение, "")); + + Конструктор.ДобавитьСтроку("%1 = Новый HTTPСоединение(%2);", + ИмяПараметраСоединение, + Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + +КонецПроцедуры + +Процедура ДобавитьHTTPЗапрос(СтруктураURL) + + ПараметрыФункции = Новый Массив; + + АдресРесурсаКод = УниверсальныеБлокиКода.СборкаАдресаРесурса(СтруктураURL, + ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, + ПрочитанныеФайлы); + + Если ПустаяСтрока(АдресРесурсаКод) Тогда + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку("/")); + ИначеЕсли СтрЧислоСтрок(АдресРесурсаКод) > 1 Тогда + Конструктор + .ДобавитьПустуюСтроку() + .ДобавитьСтроку("АдресРесурса = %1;", АдресРесурсаКод); + ПараметрыФункции.Добавить("АдресРесурса"); + Иначе + ПараметрыФункции.Добавить(АдресРесурсаКод); + КонецЕсли; + + Если ОписаниеЗапроса.Заголовки.Количество() Тогда + ПараметрыФункции.Добавить(ИмяПараметраЗаголовки); + КонецЕсли; + + Конструктор.ДобавитьСтроку("%1 = Новый HTTPЗапрос(%2);", + ИмяПараметраHTTPЗапрос, + Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + +КонецПроцедуры + +Процедура ДобавитьВызовHTTPМетода(ОписаниеРесурса) + + ПараметрыФункции = Новый Массив; + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеРесурса.Метод)); + ПараметрыФункции.Добавить(ИмяПараметраHTTPЗапрос); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеРесурса.ИмяВыходногоФайла)); + + Конструктор + .ДобавитьПустуюСтроку() + .ДобавитьСтроку("%1 = %2.ВызватьHTTPМетод(%3);", + ИмяПараметраHTTPОтвет, + ИмяПараметраСоединение, + Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + + ВызванМетодПоТекущемуURL = Истина; + +КонецПроцедуры + Процедура ДобавитьУстановкуТелаЗапроса(ОписаниеРесурса) ДобавитьУстановкуТелаЗапросаТекстовымиДанными(); @@ -554,25 +531,37 @@ КонецПроцедуры -Процедура ВывестиВызовHTTPМетода(ОписаниеРесурса) +Процедура ДобавитьFTPСоединение(СтруктураURL) - ПараметрыФункции = Новый Массив; - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеРесурса.Метод)); - ПараметрыФункции.Добавить(ИмяПараметраHTTPЗапрос); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеРесурса.ИмяВыходногоФайла)); + Если ЗначениеЗаполнено(ОписаниеЗапроса.FTPАдресОбратногоСоединения) + И Не ОписаниеЗапроса.FTPАдресОбратногоСоединения = "-" Тогда + ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяОшибка("Адрес из опции -P, --ftp-port было проигнорировано")); + КонецЕсли; - Конструктор - .ДобавитьПустуюСтроку() - .ДобавитьСтроку("%1 = %2.ВызватьHTTPМетод(%3);", - ИмяПараметраHTTPОтвет, - ИмяПараметраСоединение, - Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + Таймаут = 0; + Если ЗначениеЗаполнено(ОписаниеЗапроса.Таймаут) И ЗначениеЗаполнено(ОписаниеЗапроса.ТаймаутСоединения) Тогда + Таймаут = ОписаниеЗапроса.Таймаут + ОписаниеЗапроса.ТаймаутСоединения; + КонецЕсли; - ВызванМетодПоТекущемуURL = Истина; + ИспользуетсяЗащищенноеСоединение = ИспользуетсяЗащищенноеСоединение(СтруктураURL); + + ПараметрыФункции = Новый Массив; + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(СтруктураURL.Сервер)); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ПолучитьПорт(СтруктураURL))); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ИмяПользователя)); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПарольПользователя)); + ПараметрыФункции.Добавить(?(ОписаниеЗапроса.ИспользуетсяПрокси(), ИмяПараметраПрокси, "")); + ПараметрыФункции.Добавить(?(ОписаниеЗапроса.FTPПассивныйРежимСоединения, Истина, "")); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(Таймаут)); + ПараметрыФункции.Добавить(?(ИспользуетсяЗащищенноеСоединение, ИмяПараметраЗащищенноеСоединение, "")); + + Конструктор.ДобавитьСтроку("%1 = Новый FTPСоединение(%2);", + ИмяПараметраСоединение, + Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); КонецПроцедуры -Процедура ВывестиВызовFTPМетода(ОписаниеРесурса, СтруктураURL) +Процедура ДобавитьВызовFTPМетода(ОписаниеРесурса, СтруктураURL) Конструктор.ДобавитьПустуюСтроку(); @@ -709,4 +698,23 @@ КонецПроцедуры +Функция ПолучитьПорт(СтруктураURL) + + Порт = СтруктураURL.Порт; + Если Не ЗначениеЗаполнено(Порт) Тогда + Если СтруктураURL.Схема = ПротоколыURL.HTTPS Тогда + Порт = 443; + ИначеЕсли СтруктураURL.Схема = ПротоколыURL.HTTP Тогда + Порт = 80; + ИначеЕсли СтруктураURL.Схема = ПротоколыURL.FTPS Тогда + Порт = 990; + ИначеЕсли СтруктураURL.Схема = ПротоколыURL.FTP Тогда + Порт = 21; + КонецЕсли; + КонецЕсли; + + Возврат Порт; + +КонецФункции + #КонецОбласти \ No newline at end of file diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" index 9d9fff3..48aebae 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" @@ -23,7 +23,7 @@ #Область ПрограммныйИнтерфейс -// Генерирует программный код 1С из переданного описания запроса +// Генерирует программный код для коннектора из переданного описания запроса // // Параметры: // Описание - см. ОписаниеЗапроса - Описание запроса @@ -41,11 +41,11 @@ КонецЕсли; ОписаниеЗапроса = Описание; - Состояние = НовоеСостояние(); - - ПрочитанныеФайлы.Очистить(); ИсходящиеОшибки = Ошибки; Конструктор = Новый КонструкторПрограммногоКода(); + Состояние = НовоеСостояние(); + + ПрочитанныеФайлы.Очистить(); ДобавитьЗаголовки(); ДобавитьАутентификацию(); @@ -132,47 +132,6 @@ КонецПроцедуры -Процедура ДобавитьЗапросы() - - МаксимальнаяДлинаАдресаВКомментарии = 100; - - КоличествоURL = ОписаниеЗапроса.АдресаРесурсов.Количество(); - НомерЗапроса = 0; - - Для Каждого ОписаниеРесурса Из ОписаниеЗапроса.АдресаРесурсов Цикл - - НомерЗапроса = НомерЗапроса + 1; - СтруктураURL = Новый ПарсерURL(ОписаниеРесурса.URL); - Состояние.ВызванМетодПоТекущемуURL = Ложь; - - Если Не ОбщегоНазначения.ЭтоHTTP(СтруктураURL.Схема) Тогда - ТекстОшибки = СтрШаблон("Протокол ""%1"" не поддерживается", СтруктураURL.Схема); - ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяКритичнаяОшибка(ТекстОшибки)); - КонецЕсли; - - Конструктор.ДобавитьПустуюСтроку(); - - Если КоличествоURL > 1 Тогда - Конструктор.ДобавитьКомментарий("Запрос %1. %2", - НомерЗапроса, - Лев(ОписаниеРесурса.URL, МаксимальнаяДлинаАдресаВКомментарии)); - КонецЕсли; - - ДобавитьПоследовательнуюОтправкуДвоичныхДанныхРесурса(ОписаниеРесурса); - - Если Не Состояние.ВызванМетодПоТекущемуURL Тогда - ДобавитьВызовМетода(ОписаниеРесурса); - КонецЕсли; - - Если ОбщегоНазначения.ЕстьКритичныеОшибки(ИсходящиеОшибки) Тогда - Конструктор.Очистить(); - Возврат; - КонецЕсли; - - КонецЦикла; - -КонецПроцедуры - Процедура ДобавитьЗаголовки() Заголовки = ПередаваемыеЗаголовки(); @@ -197,37 +156,10 @@ Конструктор.ДобавитьСтроку("%1.Вставить(%2);", ИмяПараметраЗаголовки, Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); - КонецЦикла; -КонецПроцедуры - -Функция ПередаваемыеЗаголовки() - Заголовки = Новый Соответствие(); - Для Каждого Заголовок Из ОписаниеЗапроса.Заголовки Цикл - Если ПередаватьЗаголовок(Заголовок) Тогда - Заголовки.Вставить(Заголовок.Ключ, Заголовок.Значение); - КонецЕсли; КонецЦикла; - Возврат Заголовки; -КонецФункции - -Функция ПередаватьЗаголовок(Заголовок) - - Имя = НРег(Заголовок.Ключ); - Значение = НРег(Заголовок.Значение); - Если Имя = "content-type" Тогда - Если Состояние.ПереданоТелоЗапроса - И Значение = "application/x-www-form-urlencoded" Тогда - Возврат Ложь; - КонецЕсли; - ИначеЕсли Имя = "authorization" И СтрНачинаетсяС(Значение, "bearer ") Тогда - Возврат Ложь; - КонецЕсли; - - Возврат Истина; - -КонецФункции +КонецПроцедуры Процедура ДобавитьЧтениеФайлов() @@ -471,6 +403,47 @@ КонецПроцедуры +Процедура ДобавитьЗапросы() + + МаксимальнаяДлинаАдресаВКомментарии = 100; + + КоличествоURL = ОписаниеЗапроса.АдресаРесурсов.Количество(); + НомерЗапроса = 0; + + Для Каждого ОписаниеРесурса Из ОписаниеЗапроса.АдресаРесурсов Цикл + + НомерЗапроса = НомерЗапроса + 1; + СтруктураURL = Новый ПарсерURL(ОписаниеРесурса.URL); + Состояние.ВызванМетодПоТекущемуURL = Ложь; + + Если Не ОбщегоНазначения.ЭтоHTTP(СтруктураURL.Схема) Тогда + ТекстОшибки = СтрШаблон("Протокол ""%1"" не поддерживается", СтруктураURL.Схема); + ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяКритичнаяОшибка(ТекстОшибки)); + КонецЕсли; + + Конструктор.ДобавитьПустуюСтроку(); + + Если КоличествоURL > 1 Тогда + Конструктор.ДобавитьКомментарий("Запрос %1. %2", + НомерЗапроса, + Лев(ОписаниеРесурса.URL, МаксимальнаяДлинаАдресаВКомментарии)); + КонецЕсли; + + ДобавитьПоследовательнуюОтправкуДвоичныхДанныхРесурса(ОписаниеРесурса); + + Если Не Состояние.ВызванМетодПоТекущемуURL Тогда + ДобавитьВызовМетода(ОписаниеРесурса); + КонецЕсли; + + Если ОбщегоНазначения.ЕстьКритичныеОшибки(ИсходящиеОшибки) Тогда + Конструктор.Очистить(); + Возврат; + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + Процедура ДобавитьВызовМетода(ОписаниеРесурса, Знач СтруктураURL = Неопределено, Знач ДанныеЗапроса = Неопределено) Если СтруктураURL = Неопределено Тогда @@ -714,6 +687,45 @@ КонецФункции +Функция ПередаваемыеЗаголовки() + Заголовки = Новый Соответствие(); + Для Каждого Заголовок Из ОписаниеЗапроса.Заголовки Цикл + Если ПередаватьЗаголовок(Заголовок) Тогда + Заголовки.Вставить(Заголовок.Ключ, Заголовок.Значение); + КонецЕсли; + КонецЦикла; + Возврат Заголовки; +КонецФункции + +Функция ПередаватьЗаголовок(Заголовок) + + Имя = НРег(Заголовок.Ключ); + Значение = НРег(Заголовок.Значение); + + Если Имя = "content-type" Тогда + Если Состояние.ПереданоТелоЗапроса + И Значение = "application/x-www-form-urlencoded" Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Имя = "authorization" И СтрНачинаетсяС(Значение, "bearer ") Тогда + Возврат Ложь; + КонецЕсли; + + Возврат Истина; + +КонецФункции + +Функция ПолучитьТокенBearer() + + ЗначениеAuthorization = ОписаниеЗапроса.ЗначениеЗаголовка("Authorization"); + Подстрока = "bearer "; + + Если СтрНачинаетсяС(НРег(ЗначениеAuthorization), Подстрока) Тогда + Возврат СокрЛП(Сред(ЗначениеAuthorization, СтрДлина(Подстрока) + 1)); + КонецЕсли; + +КонецФункции + Функция ПолучитьТипАутентификации() Если ЗначениеЗаполнено(ОписаниеЗапроса.ИмяПользователя) Тогда @@ -732,17 +744,6 @@ Возврат "bearer"; КонецФункции -Функция ПолучитьТокенBearer() - - ЗначениеAuthorization = ОписаниеЗапроса.ЗначениеЗаголовка("Authorization"); - Подстрока = "bearer "; - - Если СтрНачинаетсяС(НРег(ЗначениеAuthorization), Подстрока) Тогда - Возврат СокрЛП(Сред(ЗначениеAuthorization, СтрДлина(Подстрока) + 1)); - КонецЕсли; - -КонецФункции - Функция НовоеСостояние() Результат = Новый Структура(); diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" index 71e2779..d2ba302 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" @@ -393,13 +393,15 @@ КонецФункции Процедура ПрочитатьПользователя(Команда) + ПользовательИПароль = ЗначениеОпции(Команда, "u"); МассивПодстрок = СтрРазделить(ПользовательИПароль, ":"); ОписаниеЗапроса.ИмяПользователя = МассивПодстрок[0]; Если МассивПодстрок.Количество() = 2 Тогда ОписаниеЗапроса.ПарольПользователя = МассивПодстрок[1]; - КонецЕсли + КонецЕсли; + КонецПроцедуры Процедура ПрочитатьДанныеДляОтправки(Команда) @@ -1175,9 +1177,15 @@ КонецЕсли; Если Не (НРег(АргументыКоманды[0]) = "curl") Тогда + НомерКомандыТекст = ?(КоличествоКоманд > 1, СтрШаблон("#%1 ", НомерКоманды), ""); - Текст = СтрШаблон("Команда %1должна начинаться с ""curl"", но вместо этого начинается с %2", НомерКомандыТекст, АргументыКоманды[0]); + + Текст = СтрШаблон("Команда %1должна начинаться с ""curl"", но вместо этого начинается с %2", + НомерКомандыТекст, + АргументыКоманды[0]); + ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяКритичнаяОшибка(Текст)); + КонецЕсли; КонецПроцедуры From aeae929eaedfa135da4933ceab140faec7599c1e Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Sat, 18 Jan 2025 23:20:21 +0300 Subject: [PATCH 3/6] =?UTF-8?q?perf:=20=D0=A1=D0=B1=D0=BE=D1=80=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B2=20=D0=BA=D0=BE=D0=BD=D1=81=D1=82=D1=80=D1=83?= =?UTF-8?q?=D0=BA=D1=82=D0=BE=D1=80=D0=B5=20=D0=BF=D1=80=D0=BE=D0=B3=D1=80?= =?UTF-8?q?=D0=B0=D0=BC=D0=BC=D0=BD=D0=BE=D0=B3=D0=BE=20=D0=BA=D0=BE=D0=B4?= =?UTF-8?q?=D0=B0=20=D1=80=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=D0=BD=D0=B0=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20=D0=9C=D0=B0?= =?UTF-8?q?=D1=81=D1=81=D0=B8=D0=B2=20(#136)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\276\320\232\320\276\320\264\320\260.os" | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git "a/src/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260.os" "b/src/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260.os" index 0611a11..b0d1ea2 100644 --- "a/src/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260.os" +++ "b/src/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260.os" @@ -1,26 +1,25 @@ -Перем Результат; // Строка +Перем Результат; // Массив из Строка #Область ПрограммныйИнтерфейс Функция ПолучитьРезультат() Экспорт - Возврат СокрЛП(Результат); + Возврат СокрЛП(СтрСоединить(Результат)); КонецФункции Функция Пустой() Экспорт - Возврат ПустаяСтрока(Результат); + Возврат Результат.Количество() = 0; КонецФункции Функция Очистить() Экспорт - Результат = ""; + Результат.Очистить(); Возврат ЭтотОбъект; КонецФункции Функция ДобавитьСтроку(Строка, Значение1 = Неопределено, Значение2 = Неопределено, Значение3 = Неопределено) Экспорт - Результат = Результат - + Символы.ПС - + СтрШаблон(Строка, Значение1, Значение2, Значение3); + Результат.Добавить(Символы.ПС); + Результат.Добавить(СтрШаблон(Строка, Значение1, Значение2, Значение3)); Возврат ЭтотОбъект; @@ -34,10 +33,16 @@ КонецФункции Функция ДобавитьПустуюСтроку(ТолькоПриОтсутствии = Истина) Экспорт - Если Прав(Результат, 1) <> Символы.ПС Или Не ТолькоПриОтсутствии Тогда - Результат = Результат + Символы.ПС; + + ИндексПоследнего = Результат.ВГраница(); + + Если ИндексПоследнего >= 0 И Не Результат[ИндексПоследнего] = Символы.ПС + Или Не ТолькоПриОтсутствии Тогда + Результат.Добавить(Символы.ПС); КонецЕсли; + Возврат ЭтотОбъект; + КонецФункции Функция ПараметрыФункцииВСтроку(ПараметрыФункции) Экспорт @@ -104,7 +109,7 @@ #Область СлужебныеПроцедурыИФункции Процедура ПриСозданииОбъекта() - Результат = ""; + Результат = Новый Массив(); КонецПроцедуры Функция ЭкранироватьКавычки(Строка) From 4b8d80fe1cd671a72c440045380f0d81915e0810 Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Sat, 18 Jan 2025 23:39:48 +0300 Subject: [PATCH 4/6] =?UTF-8?q?refactor:=20=D0=92=D1=8B=D0=B4=D0=B5=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=84=D0=BE=D1=80=D0=BC=D0=B8=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=BA=D0=BE=D0=B4=D0=B0?= =?UTF-8?q?=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D0=BA=D1=81=D0=B8=20=D0=B2=20=D0=BE=D1=82=D0=B4?= =?UTF-8?q?=D0=B5=D0=BB=D1=8C=D0=BD=D1=83=D1=8E=20=D1=84=D1=83=D0=BD=D0=BA?= =?UTF-8?q?=D1=86=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\232\320\276\320\264\320\2601\320\241.os" | 24 ++------------- ...65\320\272\321\202\320\276\321\200HTTP.os" | 29 +++---------------- ...21\207\320\265\320\275\320\270\321\217.os" | 12 ++++++++ ...20\270\320\232\320\276\320\264\320\260.os" | 24 +++++++++++++++ 4 files changed, 42 insertions(+), 47 deletions(-) diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" index b8853cd..f9ba0f6 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" @@ -277,13 +277,7 @@ Возврат; КонецЕсли; - ДопустимыеПротоколыПрокси = Новый Массив(); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.HTTP); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.HTTPS); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.FTP); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.FTPS); - - Если ДопустимыеПротоколыПрокси.Найти(ОписаниеЗапроса.ПроксиПротокол) = Неопределено Тогда + Если Не ОбщегоНазначения.ПротоколПроксиПоддерживатся(ОписаниеЗапроса.ПроксиПротокол) Тогда ТекстОшибки = СтрШаблон("Прокси протокол %1 не поддерживается", ОписаниеЗапроса.ПроксиПротокол); ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяКритичнаяОшибка(ТекстОшибки)); Возврат; @@ -291,21 +285,7 @@ Конструктор .ДобавитьПустуюСтроку() - .ДобавитьСтроку("%1 = Новый ИнтернетПрокси();", ИмяПараметраПрокси); - - ИспользоватьАутентификациюОС = ОписаниеЗапроса.ТипАутентификацииПрокси = ТипыАутентификацииПрокси.NTLM; - - ПараметрыФункции = Новый Массив; - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеЗапроса.ПроксиПротокол)); - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеЗапроса.ПроксиСервер)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПорт)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПользователь)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПароль)); - ПараметрыФункции.Добавить(?(ИспользоватьАутентификациюОС, "", "Ложь")); // Значение по умолчанию Истина - - Конструктор.ДобавитьСтроку("%1.Установить(%2);", - ИмяПараметраПрокси, - Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + .ДобавитьСтроку(УниверсальныеБлокиКода.СозданиеИнтернетПрокси(ОписаниеЗапроса, ИмяПараметраПрокси)); КонецПроцедуры diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" index 48aebae..31072d7 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" @@ -367,17 +367,11 @@ Процедура ДобавитьПрокси() - Если Не Состояние.ИспользуетсяПрокси Тогда + Если Не ОписаниеЗапроса.ИспользуетсяПрокси() Тогда Возврат; КонецЕсли; - ДопустимыеПротоколыПрокси = Новый Массив(); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.HTTP); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.HTTPS); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.FTP); - ДопустимыеПротоколыПрокси.Добавить(ПротоколыURL.FTPS); - - Если ДопустимыеПротоколыПрокси.Найти(ОписаниеЗапроса.ПроксиПротокол) = Неопределено Тогда + Если Не ОбщегоНазначения.ПротоколПроксиПоддерживатся(ОписаниеЗапроса.ПроксиПротокол) Тогда ТекстОшибки = СтрШаблон("Прокси протокол %1 не поддерживается", ОписаниеЗапроса.ПроксиПротокол); ИсходящиеОшибки.Добавить(ОбщегоНазначения.НоваяКритичнаяОшибка(ТекстОшибки)); Возврат; @@ -385,21 +379,7 @@ Конструктор .ДобавитьПустуюСтроку() - .ДобавитьСтроку("%1 = Новый ИнтернетПрокси();", ИмяПараметраПрокси); - - ИспользоватьАутентификациюОС = ОписаниеЗапроса.ТипАутентификацииПрокси = ТипыАутентификацииПрокси.NTLM; - - ПараметрыФункции = Новый Массив; - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеЗапроса.ПроксиПротокол)); - ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеЗапроса.ПроксиСервер)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПорт)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПользователь)); - ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПароль)); - ПараметрыФункции.Добавить(?(ИспользоватьАутентификациюОС, "", "Ложь")); // Значение по умолчанию Истина - - Конструктор.ДобавитьСтроку("%1.Установить(%2);", - ИмяПараметраПрокси, - Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + .ДобавитьСтроку(УниверсальныеБлокиКода.СозданиеИнтернетПрокси(ОписаниеЗапроса, ИмяПараметраПрокси)); КонецПроцедуры @@ -564,7 +544,7 @@ Процедура ДобавитьПроксиВДополнительныеПараметры(КонструкторДопПараметров) - Если Не Состояние.ИспользуетсяПрокси Тогда + Если Не ОписаниеЗапроса.ИспользуетсяПрокси() Тогда Возврат; КонецЕсли; @@ -747,7 +727,6 @@ Функция НовоеСостояние() Результат = Новый Структура(); - Результат.Вставить("ИспользуетсяПрокси", ОписаниеЗапроса.ИспользуетсяПрокси()); Результат.Вставить("ПереданоТелоЗапроса", ОписаниеЗапроса.ПереданоТелоЗапроса()); Результат.Вставить("ПереданаСтрокаЗапроса", ОписаниеЗапроса.ПереданаСтрокаЗапроса()); Результат.Вставить("ЕстьЗаголовки", Ложь); diff --git "a/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217.os" "b/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217.os" index c120782..0bece85 100644 --- "a/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217.os" +++ "b/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217.os" @@ -34,6 +34,18 @@ КонецФункции +Функция ПротоколПроксиПоддерживатся(Прокси) Экспорт + + ПоддерживаемыеПротоколыПрокси = Новый Массив(); + ПоддерживаемыеПротоколыПрокси.Добавить(ПротоколыURL.HTTP); + ПоддерживаемыеПротоколыПрокси.Добавить(ПротоколыURL.HTTPS); + ПоддерживаемыеПротоколыПрокси.Добавить(ПротоколыURL.FTP); + ПоддерживаемыеПротоколыПрокси.Добавить(ПротоколыURL.FTPS); + + Возврат ПоддерживаемыеПротоколыПрокси.Найти(Прокси) <> Неопределено; + +КонецФункции + Функция ЕстьКритичныеОшибки(Ошибки) Экспорт Для Каждого Ошибка Из Ошибки Цикл Если Ошибка.Критичная Тогда diff --git "a/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\321\213\320\265\320\221\320\273\320\276\320\272\320\270\320\232\320\276\320\264\320\260.os" "b/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\321\213\320\265\320\221\320\273\320\276\320\272\320\270\320\232\320\276\320\264\320\260.os" index 63b17db..2ac0d90 100644 --- "a/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\321\213\320\265\320\221\320\273\320\276\320\272\320\270\320\232\320\276\320\264\320\260.os" +++ "b/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\321\213\320\265\320\221\320\273\320\276\320\272\320\270\320\232\320\276\320\264\320\260.os" @@ -239,4 +239,28 @@ КонецФункции +Функция СозданиеИнтернетПрокси(ОписаниеЗапроса, ИмяПараметра) Экспорт + + Конструктор = Новый КонструкторПрограммногоКода(); + + ИспользоватьАутентификациюОС = ОписаниеЗапроса.ТипАутентификацииПрокси = ТипыАутентификацииПрокси.NTLM; + + ПараметрыФункции = Новый Массив; + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеЗапроса.ПроксиПротокол)); + ПараметрыФункции.Добавить(Конструктор.ПараметрВСтроку(ОписаниеЗапроса.ПроксиСервер)); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПорт)); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПользователь)); + ПараметрыФункции.Добавить(Конструктор.НеобязательныйПараметрВСтроку(ОписаниеЗапроса.ПроксиПароль)); + ПараметрыФункции.Добавить(?(ИспользоватьАутентификациюОС, "", "Ложь")); // Значение по умолчанию Истина + + Конструктор + .ДобавитьСтроку("%1 = Новый ИнтернетПрокси();", ИмяПараметра) + .ДобавитьСтроку("%1.Установить(%2);", + ИмяПараметра, + Конструктор.ПараметрыФункцииВСтроку(ПараметрыФункции)); + + Возврат Конструктор.ПолучитьРезультат(); + +КонецФункции + #КонецОбласти \ No newline at end of file From fa53f434657812fc561f43afc69fcb1dec387aa5 Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Sat, 18 Jan 2025 23:47:48 +0300 Subject: [PATCH 5/6] =?UTF-8?q?refactor:=20=D0=9F=D0=B5=D1=80=D0=B5=D0=B8?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=BC?= =?UTF-8?q?=D0=BE=D0=B4=D1=83=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\276\320\232\320\276\320\264\320\2601\320\241.os" | 8 ++++---- ...275\320\265\320\272\321\202\320\276\321\200HTTP.os" | 10 +++++----- ...320\263\320\276\320\232\320\276\320\264\320\260.os" | 0 3 files changed, 9 insertions(+), 9 deletions(-) rename "src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\321\213\320\265\320\221\320\273\320\276\320\272\320\270\320\232\320\276\320\264\320\260.os" => "src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\321\217\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260.os" (100%) diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" index f9ba0f6..7229ec6 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\2601\320\241.os" @@ -185,7 +185,7 @@ КонецЦикла; - Код = УниверсальныеБлокиКода.ЧтениеТекстовыхФайлов(ФайлыДляЧтения, ПрочитанныеФайлы); + Код = КоллекцияПрограммногоКода.ЧтениеТекстовыхФайлов(ФайлыДляЧтения, ПрочитанныеФайлы); Если Не ПустаяСтрока(Код) Тогда Конструктор @@ -198,7 +198,7 @@ Процедура ДобавитьДанныеЗапроса() ТелоЗапросаСтрока = ""; - ТелоЗапроса = УниверсальныеБлокиКода.СборкаДанныхЗапросаВСтроку( + ТелоЗапроса = КоллекцияПрограммногоКода.СборкаДанныхЗапросаВСтроку( НазначенияПередаваемыхДанных.ТелоЗапроса, ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, ПрочитанныеФайлы); @@ -285,7 +285,7 @@ Конструктор .ДобавитьПустуюСтроку() - .ДобавитьСтроку(УниверсальныеБлокиКода.СозданиеИнтернетПрокси(ОписаниеЗапроса, ИмяПараметраПрокси)); + .ДобавитьСтроку(КоллекцияПрограммногоКода.СозданиеИнтернетПрокси(ОписаниеЗапроса, ИмяПараметраПрокси)); КонецПроцедуры @@ -419,7 +419,7 @@ ПараметрыФункции = Новый Массив; - АдресРесурсаКод = УниверсальныеБлокиКода.СборкаАдресаРесурса(СтруктураURL, + АдресРесурсаКод = КоллекцияПрограммногоКода.СборкаАдресаРесурса(СтруктураURL, ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, ПрочитанныеФайлы); diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" index 31072d7..d281730 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\223\320\265\320\275\320\265\321\200\320\260\321\202\320\276\321\200\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP.os" @@ -175,7 +175,7 @@ КонецЦикла; - Код = УниверсальныеБлокиКода.ЧтениеТекстовыхФайлов(ФайлыДляЧтения, ПрочитанныеФайлы); + Код = КоллекцияПрограммногоКода.ЧтениеТекстовыхФайлов(ФайлыДляЧтения, ПрочитанныеФайлы); Если Не ПустаяСтрока(Код) Тогда Конструктор @@ -259,7 +259,7 @@ Процедура ДобавитьТекстовыеДанныеЗапросаЧерезСтроку(НазначениеДанных, ИмяПараметра, РезультатСборка) - Сборка = УниверсальныеБлокиКода.СборкаДанныхЗапросаВСтроку( + Сборка = КоллекцияПрограммногоКода.СборкаДанныхЗапросаВСтроку( НазначениеДанных, ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, ПрочитанныеФайлы); @@ -379,7 +379,7 @@ Конструктор .ДобавитьПустуюСтроку() - .ДобавитьСтроку(УниверсальныеБлокиКода.СозданиеИнтернетПрокси(ОписаниеЗапроса, ИмяПараметраПрокси)); + .ДобавитьСтроку(КоллекцияПрограммногоКода.СозданиеИнтернетПрокси(ОписаниеЗапроса, ИмяПараметраПрокси)); КонецПроцедуры @@ -488,9 +488,9 @@ Если Состояние.ПереданаСтрокаЗапроса И ВозможнаПередачаДанныхЧерезСоответствие(НазначениеДанных) Тогда - URLСборка = УниверсальныеБлокиКода.СборкаURL(СтруктураURL); + URLСборка = КоллекцияПрограммногоКода.СборкаURL(СтруктураURL); Иначе - URLСборка = УниверсальныеБлокиКода.СборкаURL(СтруктураURL, + URLСборка = КоллекцияПрограммногоКода.СборкаURL(СтруктураURL, ОписаниеЗапроса.ОтправляемыеТекстовыеДанные, ПрочитанныеФайлы); КонецЕсли; diff --git "a/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\321\213\320\265\320\221\320\273\320\276\320\272\320\270\320\232\320\276\320\264\320\260.os" "b/src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\321\217\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260.os" similarity index 100% rename from "src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\321\213\320\265\320\221\320\273\320\276\320\272\320\270\320\232\320\276\320\264\320\260.os" rename to "src/internal/\320\234\320\276\320\264\321\203\320\273\320\270/\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\321\217\320\237\321\200\320\276\320\263\321\200\320\260\320\274\320\274\320\275\320\276\320\263\320\276\320\232\320\276\320\264\320\260.os" From aa123b857e84390336ac795d0c31623ac460af97 Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Sat, 18 Jan 2025 23:49:55 +0300 Subject: [PATCH 6/6] =?UTF-8?q?refactor:=20=D0=9F=D0=B5=D1=80=D0=B5=D0=B8?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D1=84?= =?UTF-8?q?=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D0=B8=20=D0=9D=D0=B0=D0=B7=D0=BD?= =?UTF-8?q?=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D0=B5=D0=9F=D0=B5=D1=80=D0=B5?= =?UTF-8?q?=D0=B4=D0=B0=D0=B2=D0=B0=D0=B5=D0=BC=D1=8B=D1=85=D0=94=D0=B0?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D1=85POST?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...320\274\320\260\320\275\320\264\321\213CURL.os" | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" index d2ba302..98ab8a9 100644 --- "a/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" +++ "b/src/core/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\275\320\262\320\265\321\200\321\202\320\265\321\200\320\232\320\276\320\274\320\260\320\275\320\264\321\213CURL.os" @@ -418,7 +418,7 @@ Процедура ПрочитатьData(Команда) МассивДанных = ЗначениеОпции(Команда, "d"); // -d, --data - Назначение = НазначениеПередаваемыхДанныхPOST(Команда); + Назначение = НазначениеПередаваемыхДанных(Команда); Для Каждого Данные Из МассивДанных Цикл @@ -442,7 +442,7 @@ Процедура ПрочитатьDataRaw(Команда) МассивДанных = ЗначениеОпции(Команда, "data-raw"); - Назначение = НазначениеПередаваемыхДанныхPOST(Команда); + Назначение = НазначениеПередаваемыхДанных(Команда); Для Каждого Данные Из МассивДанных Цикл ПередаваемыйТекст = Новый ПередаваемыйТекст(Данные, Назначение); @@ -454,7 +454,7 @@ Процедура ПрочитатьDataBinary(Команда) МассивДанных = ЗначениеОпции(Команда, "data-binary"); - Назначение = НазначениеПередаваемыхДанныхPOST(Команда); + Назначение = НазначениеПередаваемыхДанных(Команда); Для Каждого Данные Из МассивДанных Цикл Если Лев(Данные, 1) = "@" Тогда @@ -473,7 +473,7 @@ Процедура ПрочитатьDataUrlencode(Команда) МассивДанных = ЗначениеОпции(Команда, "data-urlencode"); - Назначение = НазначениеПередаваемыхДанныхPOST(Команда); + Назначение = НазначениеПередаваемыхДанных(Команда); Для Каждого Данные Из МассивДанных Цикл ПозицияРавенства = СтрНайти(Данные, "="); @@ -555,7 +555,7 @@ Процедура ПрочитатьОпициюJson(Команда) МассивДанных = ЗначениеОпции(Команда, "json"); - Назначение = НазначениеПередаваемыхДанныхPOST(Команда); + Назначение = НазначениеПередаваемыхДанных(Команда); Для Каждого Данные Из МассивДанных Цикл @@ -752,7 +752,7 @@ КонецПроцедуры -Функция НазначениеПередаваемыхДанныхPOST(Команда) +Функция НазначениеПередаваемыхДанных(Команда) Если ЗначениеОпции(Команда, "get") = Истина Тогда Возврат НазначенияПередаваемыхДанных.СтрокаЗапроса; Иначе @@ -1177,7 +1177,7 @@ КонецЕсли; Если Не (НРег(АргументыКоманды[0]) = "curl") Тогда - + НомерКомандыТекст = ?(КоличествоКоманд > 1, СтрШаблон("#%1 ", НомерКоманды), ""); Текст = СтрШаблон("Команда %1должна начинаться с ""curl"", но вместо этого начинается с %2",