diff --git a/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl
index 98b137dcad..66e9341815 100644
--- a/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl
+++ b/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl
@@ -258,6 +258,30 @@
КонецФункции
+Функция СформироватьТестыЯксCLI() Экспорт
+
+ Модуль = ПолучитьОбщийМодуль("ЮТТесты");
+ Разделы = ПолучитьСоответствиеРазделовТестирования();
+ ТаблицаТестов = ПолучитьТаблицуТестов();
+
+ Для Каждого Раздел Из Разделы Цикл
+
+ ТекущийРаздел = Раздел.Ключ;
+ Отбор = Новый Структура("Раздел", ТекущийРаздел);
+ ТестыРаздела = ТаблицаТестов.НайтиСтроки(Отбор);
+
+ Набор = Модуль.ДобавитьТестовыйНабор("CLI_" + ТекущийРаздел);
+
+ Для Каждого Тест Из ТестыРаздела Цикл
+ Набор.ДобавитьСерверныйТест("CLI_" + Тест.Метод, Тест.Синоним);
+ КонецЦикла;
+
+ КонецЦикла;
+
+ Возврат "";
+
+КонецФункции
+
Функция СформироватьТестыАссертс() Экспорт
ТаблицаТестов = ПолучитьТаблицуТестов();
@@ -366,6 +390,12 @@
КонецПроцедуры
+Процедура ЗаписатьЛогCLI(Знач Результат, Знач Метод, Знач Библиотека = "") Экспорт
+
+ ЗаписатьЛог(Результат, Метод + " (CLI)");
+
+КонецПроцедуры
+
Функция ВыполнитьТестCLI(Знач Библиотека, Знач Метод, Знач Опции) Экспорт
ФайлРезультата = ПолучитьИмяВременногоФайла();
diff --git a/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl
new file mode 100644
index 0000000000..7c71a1bd22
--- /dev/null
+++ b/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl
@@ -0,0 +1,1209 @@
+// OneScript: ./OInt/tests/Modules/internal/OPI_ТестыCLI.os
+
+// MIT License
+
+// Copyright (c) 2023 Anton Tsitavets
+
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+
+// The above copyright notice and this permission notice shall be included in all
+// copies or substantial portions of the Software.
+
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+// SOFTWARE.
+
+// https://github.com/Bayselonarrend/OpenIntegrations
+
+// Набор тестов для YAxUnit
+
+// BSLLS:Typo-off
+// BSLLS:LatinAndCyrillicSymbolInWord-off
+// BSLLS:IncorrectLineBreak-off
+// BSLLS:UsingServiceTag-off
+// BSLLS:UnusedParameters-off
+// BSLLS:DuplicateStringLiteral-off
+
+//@skip-check undefined-variable
+//@skip-check wrong-string-literal-content
+//@skip-check module-structure-top-region
+//@skip-check module-structure-method-in-regions
+//@skip-check undefined-function-or-procedure
+//@skip-check wrong-string-literal-content
+//@skip-check module-unused-local-variable
+
+// Раскомментировать, если выполняется OneScript
+// #Использовать oint
+// #Использовать asserts
+
+#Область СлужебныйПрограммныйИнтерфейс
+
+Процедура ИсполняемыеСценарии() Экспорт
+
+ OPI_ПолучениеДанныхТестов.СформироватьТестыЯксCLI();
+
+КонецПроцедуры
+
+#Область ЗапускаемыеТесты
+
+#Область Telegram
+
+Процедура CLI_Телеграм_ПолучитьИнформациюБота() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token", ПараметрыТеста);
+
+ CLI_Telegram_ПолучитьИнформациюБота(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ПолучитьОбновления() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token", ПараметрыТеста);
+
+ CLI_Telegram_УдалитьWebhook(ПараметрыТеста);
+ CLI_Telegram_ПолучитьОбновления(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_УстановитьWebhook() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_URL" , ПараметрыТеста);
+
+ CLI_Telegram_УстановитьWebhook(ПараметрыТеста);
+ CLI_Telegram_УдалитьWebhook(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьТекстовоеСообщение() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьТекстовоеСообщение(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьКартинку() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьКартинку(ПараметрыТеста);
+ CLI_Telegram_СкачатьФайл(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьВидео() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Video" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьВидео(ПараметрыТеста);
+ CLI_Telegram_СкачатьФайл(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьАудио() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Audio" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьАудио(ПараметрыТеста);
+ CLI_Telegram_СкачатьФайл(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьДокумент() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Document" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьДокумент(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьГифку() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GIF" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьГифку(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьМедиагруппу() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Video" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Document" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьМеидагруппу(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьМестоположение() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Long" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Lat" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьМестоположение(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьКонтакт() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Name" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Surname" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Phone" , ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьКонтакт(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ОтправитьОпрос() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+
+ CLI_Telegram_ОтправитьОпрос(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ПереслатьСообщение() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelMessageID", ПараметрыТеста);
+
+ CLI_Telegram_ПереслатьСообщение(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_БанРазбан() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChatID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID" , ПараметрыТеста);
+
+ CLI_Telegram_Бан(ПараметрыТеста);
+ CLI_Telegram_Разбан(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_СоздатьСсылкуПриглашение() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+
+ CLI_Telegram_СоздатьСсылкуПриглашение(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ЗакрепитьОткрепитьСообщение() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelMessageID", ПараметрыТеста);
+
+ CLI_Telegram_ЗакрепитьСообщение(ПараметрыТеста);
+ CLI_Telegram_ОткрепитьСообщение(ПараметрыТеста);
+ CLI_Telegram_УдалитьСообщение(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ПолучитьЧислоУчастников() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ChannelID", ПараметрыТеста);
+
+ CLI_Telegram_ПолучитьЧислоУчастников(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ПолучитьСписокАватаровФорума() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token", ПараметрыТеста);
+
+ CLI_Telegram_ПолучитьСписокАватаровФорума(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_СоздатьУдалитьТемуФорума() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ForumID", ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("String" , ПараметрыТеста);
+
+ CLI_Telegram_СоздатьТемуФорума(ПараметрыТеста);
+ CLI_Telegram_ИзменитьТемуФорума(ПараметрыТеста);
+ CLI_Telegram_ЗакрытьТемуФорума(ПараметрыТеста);
+ CLI_Telegram_ОткрытьТемуФорума(ПараметрыТеста);
+ CLI_Telegram_ОчиститьСписокЗакрепленныхСообщенийТемы(ПараметрыТеста);
+ CLI_Telegram_УдалитьТемуФорума(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_СкрытьПоказатьГлавнуюТему() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ForumID", ПараметрыТеста);
+
+ CLI_Telegram_СкрытьГлавнуюТемуФорума(ПараметрыТеста);
+ CLI_Telegram_ПоказатьГлавнуюТемуФорума(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Телеграм_ИзменитьИмяГлавнойТемы() Экспорт
+
+ ПараметрыТеста = Новый Структура;
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_Token" , ПараметрыТеста);
+ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Telegram_ForumID", ПараметрыТеста);
+
+ CLI_Telegram_ИзменитьИмяГлавнойТемыФорума(ПараметрыТеста);
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#КонецОбласти
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+Функция ПолучитьПараметрыВК()
+
+ Параметры = Новый Структура;
+ НомерГруппы = OPI_ПолучениеДанныхТестов.ПолучитьПараметр("VK_GroupID");
+
+ Параметры.Вставить("access_token" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("VK_Token"));
+ Параметры.Вставить("owner_id" , "-" + НомерГруппы);
+ Параметры.Вставить("app_id" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("VK_AppID"));
+ Параметры.Вставить("group_id" , НомерГруппы);
+
+ Возврат Параметры;
+
+КонецФункции
+
+Функция ПолучитьПараметрыАвторизацииТвиттер()
+
+ Параметры = Новый Соответствие;
+
+ Параметры.Вставить("redirect_uri" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_Redirect"));
+ Параметры.Вставить("client_id" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_ClinetID"));
+ Параметры.Вставить("client_secret" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_ClientSecret"));
+ Параметры.Вставить("access_token" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_Token"));
+ Параметры.Вставить("refresh_token" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_Refresh"));
+ Параметры.Вставить("oauth_token" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_OAuthToken"));
+ Параметры.Вставить("oauth_token_secret" , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_OAuthSecret"));
+
+ Параметры.Вставить("oauth_consumer_key"
+ , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_OAuthConsumerKey"));
+ Параметры.Вставить("oauth_consumer_secret"
+ , OPI_ПолучениеДанныхТестов.ПолучитьПараметр("Twitter_OAuthConsumerSecret"));
+
+ Возврат Параметры;
+
+КонецФункции
+
+#Область АтомарныеТесты
+
+#Область Telegram
+
+Процедура CLI_Telegram_ПолучитьИнформациюБота(ПараметрыФункции)
+
+ Опции = Новый Структура("token", ПараметрыФункции["Telegram_Token"]);
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ПолучитьИнформациюБота", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьИнформациюБота", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИнформацияБота(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ПолучитьОбновления(ПараметрыФункции)
+
+ Опции = Новый Структура("token", ПараметрыФункции["Telegram_Token"]);
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ПолучитьОбновления", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьОбновления", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмМассив(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_УстановитьWebhook(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token", ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("url" , ПараметрыФункции["Telegram_URL"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "УстановитьWebhook", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "УстановитьWebhook", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмУстановкаВебхук(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_УдалитьWebhook(ПараметрыФункции)
+
+ Опции = Новый Структура("token", ПараметрыФункции["Telegram_Token"]);
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "УдалитьWebhook", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "УдалитьWebhook", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмУдалениеВебхук(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьТекстовоеСообщение(ПараметрыФункции)
+
+ Текст = ПараметрыФункции["String"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token", ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("text" , Текст);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьТекстовоеСообщение", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст); // SKIP
+
+ Опции.Вставить("chat", ПараметрыФункции["Telegram_ChannelID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьТекстовоеСообщение", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение (канал)");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст);
+
+ IDСообщения = OPI_Инструменты.ЧислоВСтроку(Результат["result"]["message_id"]);
+ OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_ChannelMessageID", IDСообщения);
+
+ // Дополнительный тест 1
+ Опции.Вставить("text" , "Текст html %F0%9F%93%9E 10%");
+ Опции.Вставить("parsemode", "HTML");
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьТекстовоеСообщение", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение (HTML)");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
+
+ // Дополнительный тест 2
+ Опции.Вставить("text" , "%F0%9F%A4%BC");
+ Опции.Вставить("parsemode", "Markdown");
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьТекстовоеСообщение", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение (emoji)");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
+
+ // Дополнительный тест 3
+ Опции.Вставить("text" , "Текст %F0%9F%A5%9D и emoji \(10%\)");
+ Опции.Вставить("parsemode", "MarkdownV2");
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьТекстовоеСообщение", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение (текст и emoji)");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьКартинку(ПараметрыФункции)
+
+ Текст = ПараметрыФункции["String"];
+ Картинка = ПараметрыФункции["Picture"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("text" , Текст);
+ Опции.Вставить("picture" , Картинка);
+
+ КартинкаПуть = ПолучитьИмяВременногоФайла("png");
+ КопироватьФайл(Картинка, КартинкаПуть);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьКартинку", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьКартинку", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКартинка(Результат, Текст); // SKIP
+
+ Опции.Вставить("picture" , КартинкаПуть);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьКартинку", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьКартинку (Путь)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКартинка(Результат, Текст); // SKIP
+
+ УдалитьФайлы(КартинкаПуть);
+
+ IDФайла = Результат["result"]["photo"][0]["file_id"];
+ OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_FileID", IDФайла);
+
+ ПараметрыФункции.Вставить("Telegram_FileID", IDФайла);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьВидео(ПараметрыФункции)
+
+ Текст = ПараметрыФункции["String"];
+ Видео = ПараметрыФункции["Video"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("text" , Текст);
+ Опции.Вставить("video" , Видео);
+
+ ВидеоПуть = ПолучитьИмяВременногоФайла("mp4");
+ КопироватьФайл(Видео, ВидеоПуть);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьВидео", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьВидео", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмВидео(Результат, Текст); // SKIP
+
+ Опции.Вставить("video" , ВидеоПуть);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьВидео", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьВидео (Путь)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмВидео(Результат, Текст); // SKIP
+
+ УдалитьФайлы(ВидеоПуть);
+
+ IDФайла = Результат["result"]["video"]["file_id"];
+ OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_FileID", IDФайла);
+
+ ПараметрыФункции.Вставить("Telegram_FileID", IDФайла);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьАудио(ПараметрыФункции)
+
+ Текст = ПараметрыФункции["String"];
+ Аудио = ПараметрыФункции["Audio"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("text" , Текст);
+ Опции.Вставить("audio" , Аудио);
+
+ АудиоПуть = ПолучитьИмяВременногоФайла("mp3");
+ КопироватьФайл(Аудио, АудиоПуть);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьАудио", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьАудио", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмАудио(Результат, Текст); // SKIP
+
+ Опции.Вставить("audio" , АудиоПуть);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьАудио", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьАудио (Путь)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмАудио(Результат, Текст); // SKIP
+
+ УдалитьФайлы(АудиоПуть);
+
+ IDФайла = Результат["result"]["audio"]["file_id"];
+ OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_FileID", IDФайла);
+
+ ПараметрыФункции.Вставить("Telegram_FileID", IDФайла);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьДокумент(ПараметрыФункции)
+
+ Текст = ПараметрыФункции["String"];
+ Документ = ПараметрыФункции["Document"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("text" , Текст);
+ Опции.Вставить("doc" , Документ);
+
+ ДокументПуть = ПолучитьИмяВременногоФайла("docx");
+ КопироватьФайл(Документ, ДокументПуть);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьДокумент", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьДокумент", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмДокумент(Результат, Текст); // SKIP
+
+ Опции.Вставить("doc" , ДокументПуть);
+ Опции.Вставить("chat", ПараметрыФункции["Telegram_ChannelID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьДокумент", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьДокумент (Путь)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмДокумент(Результат, Текст); // SKIP
+
+ Опции.Вставить("filename", "custom.docx");
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьДокумент", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьДокумент (Имя)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмДокумент(Результат, Текст); // SKIP
+
+ УдалитьФайлы(ДокументПуть);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьГифку(ПараметрыФункции)
+
+ Текст = ПараметрыФункции["String"];
+ Гифка = ПараметрыФункции["GIF"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token", ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("text" , Текст);
+ Опции.Вставить("gif" , Гифка);
+
+ ГифкаПуть = ПолучитьИмяВременногоФайла("gif");
+ КопироватьФайл(Гифка, ГифкаПуть);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьГифку", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьГифку", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмГифка(Результат, Текст); // SKIP
+
+ Опции.Вставить("gif" , ГифкаПуть);
+ Опции.Вставить("chat", ПараметрыФункции["Telegram_ChannelID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьГифку", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьГифку (Путь)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмГифка(Результат, Текст); // SKIP
+
+ УдалитьФайлы(ГифкаПуть);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьМеидагруппу(ПараметрыФункции)
+
+ Картинка = ПараметрыФункции["Picture"];
+ Видео = ПараметрыФункции["Video"];
+
+ КартинкаПуть = ПолучитьИмяВременногоФайла("png");
+ КопироватьФайл(Картинка, КартинкаПуть);
+
+ Медиагруппа = Новый Соответствие;
+ Медиагруппа.Вставить(КартинкаПуть, "photo");
+ Медиагруппа.Вставить(Видео , "video");
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("text" , ПараметрыФункции["String"]);
+ Опции.Вставить("media" , Медиагруппа);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьМедиагруппу", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьМедиагруппу", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмМедиагруппа(Результат);
+
+ ДокументURL = ПараметрыФункции["Document"];
+ ДокументПуть = ПолучитьИмяВременногоФайла("docx");
+
+ КопироватьФайл(ДокументURL, ДокументПуть);
+
+ МедиаГруппа = Новый Соответствие;
+ Медиагруппа.Вставить(ДокументURL , "document");
+ Медиагруппа.Вставить(ДокументПуть, "document");
+
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("media" , Медиагруппа);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьМедиагруппу", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьМедиагруппу (доки)", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмМедиагруппа(Результат);
+
+ УдалитьФайлы(КартинкаПуть);
+ УдалитьФайлы(ДокументПуть);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьМестоположение(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("lat" , ПараметрыФункции["Lat"]);
+ Опции.Вставить("long" , ПараметрыФункции["Long"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьМестоположение", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьМестоположение", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмМестоположение(Результат); // SKIP
+
+ Опции.Вставить("chat", ПараметрыФункции["Telegram_ChannelID"]);
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьМестоположение", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьМестоположение (канал)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмМестоположение(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьКонтакт(ПараметрыФункции)
+
+ Имя = ПараметрыФункции["Name"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("surname", ПараметрыФункции["Surname"]);
+ Опции.Вставить("phone" , ПараметрыФункции["Phone"]);
+ Опции.Вставить("name" , Имя);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьКонтакт", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьКонтакт", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКонтакт(Результат, Имя); // SKIP
+
+ Опции.Вставить("chat", ПараметрыФункции["Telegram_ChannelID"]);
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьКонтакт", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьКонтакт (канал)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКонтакт(Результат, Имя);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОтправитьОпрос(ПараметрыФункции)
+
+ Вопрос = "Какой ваш любимый цвет?";
+
+ МассивОтветов = Новый Массив;
+ МассивОтветов.Добавить("Красный");
+ МассивОтветов.Добавить("Желтый");
+ МассивОтветов.Добавить("Зеленый");
+ МассивОтветов.Добавить("Синий");
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("question", Вопрос);
+ Опции.Вставить("options" , МассивОтветов);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьОпрос", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьОпрос", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОпрос(Результат, Вопрос); // SKIP
+
+ Опции.Вставить("chat", ПараметрыФункции["Telegram_ChannelID"]);
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОтправитьОпрос", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьОпрос (канал)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОпрос(Результат, Вопрос); // SKIP
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_СкачатьФайл(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("fileid" , ПараметрыФункции["Telegram_FileID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "СкачатьФайл", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "СкачатьФайл", "Telegram");
+ OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("ДвоичныеДанные");
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ПереслатьСообщение(ПараметрыФункции)
+
+ IDСообщения = ПараметрыФункции["Telegram_ChannelMessageID"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("from" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("to" , ПараметрыФункции["Telegram_ChatID"]);
+ Опции.Вставить("message", IDСообщения);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ПереслатьСообщение", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПереслатьСообщение", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмПереслать(Результат, IDСообщения);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_Бан(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token", ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("user" , ПараметрыФункции["Telegram_ChatID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "Бан", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "Бан", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмБан(Результат);
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_Разбан(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token", ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("user" , ПараметрыФункции["Telegram_ChatID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "Разбан", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "Разбан", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмБан(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_СоздатьСсылкуПриглашение(ПараметрыФункции)
+
+ Сутки = 86400;
+ ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
+
+ Заголовок = "Ссылка " + Строка(ТекущаяДата);
+ Истечение = ТекущаяДата + Сутки;
+ UnixИстечение = OPI_Инструменты.UNIXTime(Истечение);
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("expire", Истечение);
+ Опции.Вставить("title" , Заголовок);
+ Опции.Вставить("limit" , 200);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "СоздатьСсылкуПриглашение", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "СоздатьСсылкуПриглашение", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмПриглашение(Результат, Заголовок, UnixИстечение);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ЗакрепитьСообщение(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("message", ПараметрыФункции["Telegram_ChannelMessageID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ЗакрепитьСообщение", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ЗакрепитьСообщение", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОткрепитьСообщение(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("message", ПараметрыФункции["Telegram_ChannelMessageID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОткрепитьСообщение", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОткрепитьСообщение", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ПолучитьЧислоУчастников(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ПолучитьЧислоУчастников", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьЧислоУчастников", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмЧисло(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ПолучитьСписокАватаровФорума(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ПолучитьСписокИконокАватаров", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьСписокИконокАватаров", "Telegram");
+
+ OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_СоздатьТемуФорума(ПараметрыФункции)
+
+ Имя = "Тестовая тема " + Строка(Новый УникальныйИдентификатор);
+ Иконка = "5357419403325481346";
+ Чат = ПараметрыФункции["Telegram_ForumID"];
+ Токен = ПараметрыФункции["Telegram_Token"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , Токен);
+ Опции.Вставить("forum" , Чат);
+ Опции.Вставить("icon" , Иконка);
+ Опции.Вставить("title" , Имя);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "СоздатьТемуФорума", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "СоздатьТемуФорума", "Telegram");
+
+ Тема = Результат["result"]["message_thread_id"];
+
+ OPI_Инструменты.ДобавитьПоле("Telegram_TopicID", Тема, "Строка", ПараметрыФункции);
+ OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_TopicID", ПараметрыФункции["Telegram_TopicID"]);
+
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСозданиеТемы(Результат, Имя, Иконка);
+
+ ЧатТема = Чат + "*" + Тема;
+ Текст = ПараметрыФункции["String"];
+ Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, ЧатТема, Текст);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение (форум)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ИзменитьТемуФорума(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("forum" , ПараметрыФункции["Telegram_ForumID"]);
+ Опции.Вставить("icon" , "5310132165583840589");
+ Опции.Вставить("title" , "Новый тестовый заголовок");
+ Опции.Вставить("topic" , ПараметрыФункции["Telegram_TopicID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ИзменитьТемуФорума", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ИзменитьТемуФорума", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ЗакрытьТемуФорума(ПараметрыФункции)
+
+ Токен = ПараметрыФункции["Telegram_Token"];
+ Чат = ПараметрыФункции["Telegram_ForumID"];
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , Токен);
+ Опции.Вставить("forum" , Чат);
+
+ OPI_Telegram.ОткрытьТемуФорума(Токен, Чат); // SKIP
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ЗакрытьТемуФорума", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ЗакрытьТемуФорума (главная)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат); // SKIP
+
+ Опции.Вставить("topic" , ПараметрыФункции["Telegram_TopicID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ЗакрытьТемуФорума", Опции);
+
+ // END
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ЗакрытьТемуФорума", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(25);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОткрытьТемуФорума(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("forum" , ПараметрыФункции["Telegram_ForumID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОткрытьТемуФорума", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОткрытьТемуФорума (главная)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ Опции.Вставить("topic" , ПараметрыФункции["Telegram_TopicID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОткрытьТемуФорума", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОткрытьТемуФорума", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(25);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_УдалитьТемуФорума(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("forum" , ПараметрыФункции["Telegram_ForumID"]);
+ Опции.Вставить("topic" , ПараметрыФункции["Telegram_TopicID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "УдалитьТемуФорума", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "УдалитьТемуФорума", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(25);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ОчиститьСписокЗакрепленныхСообщенийТемы(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("forum" , ПараметрыФункции["Telegram_ForumID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОчиститьСписокЗакрепленныхСообщенийТемы", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОчиститьСписокЗакрепленныхСообщенийТемы (главная)");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат); // SKIP
+
+ Опции.Вставить("topic" , ПараметрыФункции["Telegram_TopicID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ОчиститьСписокЗакрепленныхСообщенийТемы", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОчиститьСписокЗакрепленныхСообщенийТемы", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_СкрытьГлавнуюТемуФорума(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("forum" , ПараметрыФункции["Telegram_ForumID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "СкрытьГлавнуюТемуФорума", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "СкрытьГлавнуюТемуФорума", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ПоказатьГлавнуюТемуФорума(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("forum" , ПараметрыФункции["Telegram_ForumID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ПоказатьГлавнуюТемуФорума", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПоказатьГлавнуюТемуФорума", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_ИзменитьИмяГлавнойТемыФорума(ПараметрыФункции)
+
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("forum" , ПараметрыФункции["Telegram_ForumID"]);
+ Опции.Вставить("title" , "Новое имя главной темы " + Строка(Новый УникальныйИдентификатор));
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "ИзменитьИмяГлавнойТемыФорума", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ИзменитьИмяГлавнойТемыФорума", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+Процедура CLI_Telegram_УдалитьСообщение(ПараметрыФункции)
+
+ Опции = Новый Структура;
+ Опции.Вставить("token" , ПараметрыФункции["Telegram_Token"]);
+ Опции.Вставить("chat" , ПараметрыФункции["Telegram_ChannelID"]);
+ Опции.Вставить("message", ПараметрыФункции["Telegram_ChannelMessageID"]);
+
+ Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("telegram", "УдалитьСообщение", Опции);
+
+ OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "УдалитьСообщение", "Telegram");
+ OPI_ПолучениеДанныхТестов.Проверка_ТелеграмИстина(Результат);
+
+ OPI_Инструменты.Пауза(5);
+
+КонецПроцедуры
+
+#КонецОбласти
+
+#КонецОбласти
+
+#КонецОбласти
+
+
diff --git a/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/OPI_ТестыCLI.mdo b/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/OPI_ТестыCLI.mdo
new file mode 100644
index 0000000000..4a550c90c5
--- /dev/null
+++ b/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/OPI_ТестыCLI.mdo
@@ -0,0 +1,11 @@
+
+
+ OPI_ТестыCLI
+
+ ru
+ Тесты CLI
+
+ true
+ true
+ true
+
diff --git a/src/ru/OPI/src/Configuration/Configuration.mdo b/src/ru/OPI/src/Configuration/Configuration.mdo
index f87f789578..0d1ebbf99e 100644
--- a/src/ru/OPI/src/Configuration/Configuration.mdo
+++ b/src/ru/OPI/src/Configuration/Configuration.mdo
@@ -63,5 +63,6 @@
CommonModule.OPI_Neocities
CommonModule.OPI_CDEK
CommonModule.OPI_Тесты
+ CommonModule.OPI_ТестыCLI
CommonModule.OPI_ПолучениеДанныхТестов