mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2024-11-24 08:52:18 +02:00
Тесты над YAXUnit
This commit is contained in:
parent
44c6a529ff
commit
9e27f8eafa
@ -1,3 +1,3 @@
|
||||
Manifest-Version: 1.0
|
||||
Runtime-Version: 8.3.18
|
||||
Base-Project: OPI_Conf
|
||||
Runtime-Version: 8.3.15
|
||||
Base-Project: OpenIntegrations
|
||||
|
@ -72,6 +72,20 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Удалить Webhook.
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// ДвоичныеДанные, Неопределено, Произвольный - Ответ сервера Telegram
|
||||
Функция УдалитьWebhook(Знач Токен) Экспорт
|
||||
|
||||
Ответ = OPI_Инструменты.Get("api.telegram.org/bot" + Токен + "/deleteWebHook");
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Обработать данные, полученные на Webhook.
|
||||
//
|
||||
// Параметры:
|
||||
|
318
OPI/src/CommonModules/YAX_Тесты/Module.bsl
Normal file
318
OPI/src/CommonModules/YAX_Тесты/Module.bsl
Normal file
@ -0,0 +1,318 @@
|
||||
//Набор тестов для YAxUnit
|
||||
//@skip-check undefined-variable
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
Процедура ИсполняемыеСценарии() Экспорт
|
||||
|
||||
ЮТТесты
|
||||
.ДобавитьТестовыйНабор("Телеграм")
|
||||
.ДобавитьСерверныйТест("Телеграм_ПолучитьИнформациюБота" , "Получить информацию бота")
|
||||
.ДобавитьСерверныйТест("Телеграм_ПолучитьОбновления" , "Получить обновления")
|
||||
.ДобавитьСерверныйТест("Телеграм_УстановитьWebhook" , "Установить Webhook")
|
||||
.ДобавитьСерверныйТест("Телеграм_УдалитьWebhook" , "Удалить Webhook")
|
||||
.ДобавитьСерверныйТест("Телеграм_ОтправитьТекстовоеСообщение" , "Отправить текстовое сообщение")
|
||||
.ДобавитьСерверныйТест("Телеграм_ОтправитьКартинку" , "Отправить картинку")
|
||||
.ДобавитьСерверныйТест("Телеграм_ОтправитьВидео" , "Отправить видео")
|
||||
.ДобавитьСерверныйТест("Телеграм_ОтправитьАудио" , "Отправить аудио")
|
||||
.ДобавитьСерверныйТест("Телеграм_ОтправитьДокумент" , "Отправить документ")
|
||||
.ДобавитьСерверныйТест("Телеграм_ОтправитьГифку" , "Отправить гифку");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#Область Тесты
|
||||
|
||||
#Область Telegram
|
||||
|
||||
Процедура Телеграм_ПолучитьИнформациюБота() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
Результат = OPI_Telegram.ПолучитьИнформациюБота(Токен);
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result.username").Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_ПолучитьОбновления() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
Результат = OPI_Telegram.ПолучитьОбновления(Токен);
|
||||
|
||||
OPI_Telegram.УдалитьWebhook(Токен);
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result").ИмеетТип(Тип("Массив"));
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_УстановитьWebhook() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
URL = ПолучитьПараметр("Телеграм_URL");
|
||||
|
||||
Результат = OPI_Telegram.УстановитьWebhook(Токен, URL);
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result").Равно(Истина)
|
||||
.Свойство("description").Равно("Webhook was set");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_УдалитьWebhook() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
|
||||
Результат = OPI_Telegram.УдалитьWebhook(Токен);
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result").Равно(Истина)
|
||||
.Свойство("description").Равно("Webhook was deleted");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_ОтправитьТекстовоеСообщение() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
IDЧата = ПолучитьПараметр("Телеграм_Чат");
|
||||
IDКанала = ПолучитьПараметр("Телеграм_Канал");
|
||||
Текст = "Сообщение из автоматического теста";
|
||||
|
||||
МассивРезультатов = Новый Массив;
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDКанала, Текст));
|
||||
|
||||
Для Каждого Результат Из МассивРезультатов Цикл
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result.text").Равно(Текст);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_ОтправитьКартинку() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
IDЧата = ПолучитьПараметр("Телеграм_Чат");
|
||||
IDКанала = ПолучитьПараметр("Телеграм_Канал");
|
||||
Текст = "Сообщение из автоматического теста";
|
||||
Картинка = ПолучитьДвоичные("Картинка");
|
||||
ИВФ = ПолучитьИмяВременногоФайла("png");
|
||||
Картинка.Записать(ИВФ);
|
||||
|
||||
МассивРезультатов = Новый Массив;
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьКартинку(Токен, IDЧата , Текст, Картинка));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьКартинку(Токен, IDКанала, Текст, Картинка));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьКартинку(Токен, IDЧата , Текст, ИВФ));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьКартинку(Токен, IDКанала, Текст, ИВФ));
|
||||
|
||||
Для Каждого Результат Из МассивРезультатов Цикл
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result.caption").Равно(Текст)
|
||||
.Свойство("result.photo").ИмеетТип(Тип("Массив"));
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
УдалитьФайлы(ИВФ);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_ОтправитьВидео() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
IDЧата = ПолучитьПараметр("Телеграм_Чат");
|
||||
IDКанала = ПолучитьПараметр("Телеграм_Канал");
|
||||
Текст = "Сообщение из автоматического теста";
|
||||
Картинка = ПолучитьДвоичные("Видео");
|
||||
ИВФ = ПолучитьИмяВременногоФайла("mp4");
|
||||
Картинка.Записать(ИВФ);
|
||||
|
||||
МассивРезультатов = Новый Массив;
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьВидео(Токен, IDЧата , Текст, Картинка));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьВидео(Токен, IDКанала, Текст, Картинка));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьВидео(Токен, IDЧата , Текст, ИВФ));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьВидео(Токен, IDКанала, Текст, ИВФ));
|
||||
|
||||
Для Каждого Результат Из МассивРезультатов Цикл
|
||||
|
||||
//@skip-warning
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result.caption").Равно(Текст)
|
||||
.Свойство("result.video.mime_type").Равно("video/mp4");
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
УдалитьФайлы(ИВФ);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_ОтправитьАудио() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
IDЧата = ПолучитьПараметр("Телеграм_Чат");
|
||||
IDКанала = ПолучитьПараметр("Телеграм_Канал");
|
||||
Текст = "Сообщение из автоматического теста";
|
||||
Аудио = ПолучитьДвоичные("Аудио");
|
||||
ИВФ = ПолучитьИмяВременногоФайла("mp3");
|
||||
Аудио.Записать(ИВФ);
|
||||
|
||||
МассивРезультатов = Новый Массив;
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьАудио(Токен, IDЧата , Текст, Аудио));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьАудио(Токен, IDКанала, Текст, Аудио));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьАудио(Токен, IDЧата , Текст, ИВФ));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьАудио(Токен, IDКанала, Текст, ИВФ));
|
||||
|
||||
Для Каждого Результат Из МассивРезультатов Цикл
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result.caption").Равно(Текст)
|
||||
.Свойство("result.audio.mime_type").Равно("audio/mpeg");
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
УдалитьФайлы(ИВФ);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_ОтправитьДокумент() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
IDЧата = ПолучитьПараметр("Телеграм_Чат");
|
||||
IDКанала = ПолучитьПараметр("Телеграм_Канал");
|
||||
Текст = "Сообщение из автоматического теста";
|
||||
Документ = ПолучитьДвоичные("Документ");
|
||||
ИВФ = ПолучитьИмяВременногоФайла("docx");
|
||||
Документ.Записать(ИВФ);
|
||||
|
||||
МассивРезультатов = Новый Массив;
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьДокумент(Токен, IDЧата , Текст, Документ));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьДокумент(Токен, IDКанала, Текст, Документ));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьДокумент(Токен, IDЧата , Текст, ИВФ));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьДокумент(Токен, IDКанала, Текст, ИВФ));
|
||||
|
||||
Для Каждого Результат Из МассивРезультатов Цикл
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result.caption").Равно(Текст)
|
||||
.Свойство("result.document").ИмеетТип("Соответствие").Заполнено();
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
УдалитьФайлы(ИВФ);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Телеграм_ОтправитьГифку() Экспорт
|
||||
|
||||
Токен = ПолучитьПараметр("Телеграм_Токен");
|
||||
IDЧата = ПолучитьПараметр("Телеграм_Чат");
|
||||
IDКанала = ПолучитьПараметр("Телеграм_Канал");
|
||||
Текст = "Сообщение из автоматического теста";
|
||||
Гифка = ПолучитьДвоичные("Гифка");
|
||||
ИВФ = ПолучитьИмяВременногоФайла("gif");
|
||||
Гифка.Записать(ИВФ);
|
||||
|
||||
МассивРезультатов = Новый Массив;
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьГифку(Токен, IDЧата , Текст, Гифка));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьГифку(Токен, IDКанала, Текст, Гифка));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьГифку(Токен, IDЧата , Текст, ИВФ));
|
||||
МассивРезультатов.Добавить(OPI_Telegram.ОтправитьГифку(Токен, IDКанала, Текст, ИВФ));
|
||||
|
||||
Для Каждого Результат Из МассивРезультатов Цикл
|
||||
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Соответствие")
|
||||
.Заполнено()
|
||||
.Свойство("ok").Равно(Истина)
|
||||
.Свойство("result.caption").Равно(Текст)
|
||||
.Свойство("result.document").ИмеетТип("Соответствие").Заполнено()
|
||||
.Свойство("result.animation.mime_type").Равно("video/mp4");
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
УдалитьФайлы(ИВФ);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
Функция ПолучитьПараметр(Параметр)
|
||||
|
||||
ИмяСправочника = "ЮТПараметры";
|
||||
ИмяРеквизита = "Значение";
|
||||
|
||||
Возврат ПолучитьЗначение(Параметр, ИмяСправочника, ИмяРеквизита);
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьДвоичные(Имя)
|
||||
|
||||
ИмяСправочника = "ЮТФайлы";
|
||||
ИмяРеквизита = "Значение";
|
||||
|
||||
Возврат ПолучитьЗначение(Имя, ИмяСправочника, ИмяРеквизита);
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьЗначение(Параметр, ИмяСправочника, ИмяРеквизита)
|
||||
|
||||
ЭлементСпр = Справочники[ИмяСправочника].НайтиПоНаименованию(Параметр);
|
||||
Значение = ЭлементСпр[ИмяРеквизита];
|
||||
|
||||
Если ТипЗнч(Значение) = Тип("ХранилищеЗначения") Тогда
|
||||
Значение = Значение.Получить();
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Значение;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ЗаписатьПараметр(Параметр, Значение)
|
||||
|
||||
ИмяСправочника = "ЮТПараметры";
|
||||
ИмяРеквизита = "Значение";
|
||||
|
||||
ЭлементСпр = Справочники[ИмяСправочника].НайтиПоНаименованию(Параметр);
|
||||
ОбъектСпр = ЭлементСпр.ПолучитьОбъект();
|
||||
|
||||
ОбъектСпр[ИмяРеквизита] = Значение;
|
||||
ОбъектСпр.Записать();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
11
OPI/src/CommonModules/YAX_Тесты/YAX_Тесты.mdo
Normal file
11
OPI/src/CommonModules/YAX_Тесты/YAX_Тесты.mdo
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="ca6868b2-8987-4ae3-9d97-50a8becc72df">
|
||||
<name>YAX_Тесты</name>
|
||||
<synonym>
|
||||
<key>ru</key>
|
||||
<value>Тесты для YaxUnit (ОПИ)</value>
|
||||
</synonym>
|
||||
<server>true</server>
|
||||
<externalConnection>true</externalConnection>
|
||||
<clientOrdinaryApplication>true</clientOrdinaryApplication>
|
||||
</mdclass:CommonModule>
|
@ -9,7 +9,6 @@
|
||||
<extension xsi:type="mdclassExtension:ConfigurationExtension">
|
||||
<defaultRunMode>Checked</defaultRunMode>
|
||||
<usePurposes>Checked</usePurposes>
|
||||
<defaultLanguage>Checked</defaultLanguage>
|
||||
<interfaceCompatibilityMode>Checked</interfaceCompatibilityMode>
|
||||
</extension>
|
||||
<containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="12689443-2950-4e3b-b313-9a692b6acac7"/>
|
||||
@ -28,7 +27,6 @@
|
||||
<scriptVariant>Russian</scriptVariant>
|
||||
<vendor>Bayselonarrend</vendor>
|
||||
<version>1.1.0</version>
|
||||
<defaultLanguage>Language.Русский</defaultLanguage>
|
||||
<detailedInformation>
|
||||
<key>ru</key>
|
||||
<value>Открытый пакет интеграций - набор библиотек для интеграции с некоторыми популярными API для 1C:Enterprise. Он состоит из общих модулей, каждый из которых отвечает за свой API, а также нескольких модулей-инструментов, общих для всех.</value>
|
||||
@ -41,11 +39,11 @@
|
||||
<key>ru</key>
|
||||
<value>https://github.com/Bayselonarrend/OpenIntegrations</value>
|
||||
</configurationInformationAddress>
|
||||
<languages uuid="0e858b44-34f3-4d20-986d-13290bb5ba5a" extendedConfigurationObject="6baf84ae-5c74-4fe2-8467-219a78580fe7">
|
||||
<compatibilityMode>8.3.15</compatibilityMode>
|
||||
<languages uuid="0e858b44-34f3-4d20-986d-13290bb5ba5a">
|
||||
<name>Русский</name>
|
||||
<objectBelonging>Adopted</objectBelonging>
|
||||
<extension xsi:type="mdclassExtension:LanguageExtension">
|
||||
<extendedConfigurationObject>Checked</extendedConfigurationObject>
|
||||
<languageCode>Checked</languageCode>
|
||||
</extension>
|
||||
<languageCode>ru</languageCode>
|
||||
@ -59,4 +57,5 @@
|
||||
<commonModules>CommonModule.OPI_Криптография</commonModules>
|
||||
<commonModules>CommonModule.OPI_YandexID</commonModules>
|
||||
<commonModules>CommonModule.OPI_YandexDisk</commonModules>
|
||||
<commonModules>CommonModule.YAX_Тесты</commonModules>
|
||||
</mdclass:Configuration>
|
||||
|
Loading…
Reference in New Issue
Block a user