From c3353d91cc5d2a62e8f43bd504a112cc556c8775 Mon Sep 17 00:00:00 2001 From: Anton Date: Tue, 13 Feb 2024 19:52:04 +0300 Subject: [PATCH] =?UTF-8?q?=D0=AE=D0=BD=D0=B8=D1=82=20=D1=82=D0=B5=D1=81?= =?UTF-8?q?=D1=82=D1=8B=20=D0=B4=D0=BB=D1=8F=20VK=20API?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- OPI/src/CommonModules/YAX_Тесты/Module.bsl | 217 +++++++++++++++++++++ 1 file changed, 217 insertions(+) diff --git a/OPI/src/CommonModules/YAX_Тесты/Module.bsl b/OPI/src/CommonModules/YAX_Тесты/Module.bsl index a8692e20a0..334369a9f7 100644 --- a/OPI/src/CommonModules/YAX_Тесты/Module.bsl +++ b/OPI/src/CommonModules/YAX_Тесты/Module.bsl @@ -32,6 +32,13 @@ .ДобавитьСерверныйТест("ВК_СоздатьУдалитьПост" , "Создать/Удалить пост") .ДобавитьСерверныйТест("ВК_СоздатьОпрос" , "Создать опрос") .ДобавитьСерверныйТест("ВК_СохранитьУдалитьКартинку" , "Добавить/удалить картинку и альбом") + .ДобавитьСерверныйТест("ВК_СоздатьИсторию" , "Создать историю") + .ДобавитьСерверныйТест("ВК_МетодыОбсуждений" , "Действия с обсуждениями") + .ДобавитьСерверныйТест("ВК_ЛайкРепостКоммент" , "Лайк/Репост/Комментарий") + .ДобавитьСерверныйТест("ВК_ПолучитьСтатистику" , "Получить статистику") + .ДобавитьСерверныйТест("ВК_ПолучитьСтатистикуПостов" , "Получить статистику постов") + .ДобавитьСерверныйТест("ВК_СоздатьРекламнуюКампанию" , "Создать рекламную кампанию") + .ДобавитьСерверныйТест("ВК_ОтправитьСообщение" , "Отправить сообщение") .ДобавитьТестовыйНабор("Яндекс.Диск") .ДобавитьСерверныйТест("ЯДиск_ПолучитьИнформациюОДиске" , "Получить информацию о диске") @@ -629,6 +636,216 @@ КонецПроцедуры +Процедура ВК_СоздатьИсторию() Экспорт + + Параметры = ПолучитьПараметрыВК(); + Текст = "Пост из автотеста"; + URL = "https://github.com/Bayselonarrend/OpenIntegrations"; + Картинка = ПолучитьДвоичные("Картинка"); + ИВФ = ПолучитьИмяВременногоФайла("png"); + Картинка.Записать(ИВФ); + + МассивРезультатов = Новый Массив; + + МассивРезультатов.Добавить(OPI_VK.СоздатьИсторию(ИВФ , URL, Параметры)); + ЮТОбщий.Пауза(10); + + МассивРезультатов.Добавить(OPI_VK.СоздатьИсторию(Картинка, , Параметры)); + ЮТОбщий.Пауза(10); + + Для Каждого Результат Из МассивРезультатов Цикл + + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response.count").ИмеетТип("Число").Равно(1) + .Свойство("response.items").ИмеетТип("Массив").Заполнено(); + + КонецЦикла; + +КонецПроцедуры + +Процедура ВК_МетодыОбсуждений() Экспорт + + Параметры = ПолучитьПараметрыВК(); + Название = "Обсуждение из автотеста"; + Сообщение = "Сообщение из автотеста"; + + Результат = OPI_VK.СоздатьОбсуждение(Название, Сообщение, Параметры); + + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response").ИмеетТип("Число").Заполнено(); + + ИДОбсуждения = Результат["response"]; + Закрытие = OPI_VK.ЗакрытьОбсуждение(ИДОбсуждения, Ложь, Параметры); + + ЮТест.ОжидаетЧто(Закрытие) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response").ИмеетТип("Число").Равно(1); + + Открытие = OPI_VK.ОткрытьОбсуждение(ИДОбсуждения, Параметры); + + ЮТест.ОжидаетЧто(Открытие) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response").ИмеетТип("Число").Равно(1); + + Отправка = OPI_VK.НаписатьВОбсуждение(ИДОбсуждения, Сообщение, Параметры); + + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response").ИмеетТип("Число").Заполнено(); + + Удаление = OPI_VK.ЗакрытьОбсуждение(ИДОбсуждения, Истина, Параметры); + + ЮТест.ОжидаетЧто(Удаление) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response").ИмеетТип("Число").Равно(1); + +КонецПроцедуры + +Процедура ВК_ЛайкРепостКоммент() Экспорт + + Параметры = ПолучитьПараметрыВК(); + Текст = "Пост из автотеста"; + Сообщение = "Сообщение из автотеста"; + + Результат = OPI_VK.СоздатьПост(Текст, Новый Массив, , ,Параметры); + + ИДПоста = Результат["response"]["post_id"]; + Лайк = OPI_VK.ПоставитьЛайк(ИДПоста, , Параметры); + + ЮТест.ОжидаетЧто(Лайк) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response.likes").ИмеетТип("Число").Заполнено(); + + ВнешнийПост = 2571; + ВнешняяСтена = -218704372; + + Репост = OPI_VK.СделатьРепост(ВнешнийПост, ВнешняяСтена, , , Параметры); + + ЮТест.ОжидаетЧто(Репост) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response.success").ИмеетТип("Число").Равно(1) + .Свойство("response.wall_repost_count").ИмеетТип("Число").Равно(1); + + Комментарий = OPI_VK.НаписатьКомментарий(ИДПоста, Параметры["owner_id"], Сообщение, Параметры); + + ЮТест.ОжидаетЧто(Комментарий) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response.comment_id").ИмеетТип("Число").Заполнено(); + + OPI_VK.УдалитьПост(ИДПоста, Параметры); + OPI_VK.УдалитьПост(Репост["response"]["post_id"], Параметры); + +КонецПроцедуры + +Процедура ВК_ПолучитьСтатистику() Экспорт + + Параметры = ПолучитьПараметрыВК(); + Дата0 = НачалоДня(ТекущаяДатаСеанса()); + Дата1 = КонецДня(Дата0); + + + Результат = OPI_VK.ПолучитьСтатистику(Дата0, Дата1, Параметры); + + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Соответствие") + .Заполнено() + .Свойство("response[0].visitors").ИмеетТип("Соответствие").Заполнено() + .Свойство("response[0].reach").ИмеетТип("Соответствие").Заполнено(); + +КонецПроцедуры + +Процедура ВК_ПолучитьСтатистикуПостов() Экспорт + + Параметры = ПолучитьПараметрыВК(); + + МассивПостов = Новый Массив; + МассивПостов.Добавить(214); + МассивПостов.Добавить(215); + + Результат = OPI_VK.ПолучитьСтатистикуПостов(МассивПостов, Параметры); + + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Массив") + .ИмеетДлину(2); + +КонецПроцедуры + +Процедура ВК_СоздатьРекламнуюКампанию() Экспорт + + Параметры = ПолучитьПараметрыВК(); + ИДКабинета = ПолучитьПараметр("ВК_Кабинет"); + Наименование = "Тестовая кампания"; + + Результат = OPI_VK.СоздатьРекламнуюКампанию(ИДКабинета, Наименование, Параметры); + Результат = Результат["response"][0]; + + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Соответствие") + .Свойство("error_code").ИмеетТип("Число").Равно(602) + .Свойство("id").ИмеетТип("Число").Заполнено(); + + ИДКампании = Результат["id"]; + ИДКатегории = 126; + Лимит = 150; + + Результат = OPI_VK.СоздатьПост(Наименование, Новый Массив, , ,Параметры); + ИДПоста = Результат["response"]["post_id"]; + + Объявление = OPI_VK.СоздатьРекламноеОбъявление(ИДКампании + , Лимит + , ИДКатегории + , ИДПоста + , ИДКабинета + , Параметры); + Объявление = Объявление["response"][0]; + + ЮТест.ОжидаетЧто(Объявление) + .ИмеетТип("Соответствие") + .Свойство("error_code").ИмеетТип("Число").Равно(602) + .Свойство("id").ИмеетТип("Число").Заполнено(); + + ИДОбъявления = Объявление["id"]; + Остановка = OPI_VK.ПриостановитьРекламноеОбъявление(ИДКабинета, ИДОбъявления, Параметры); + + ЮТест.ОжидаетЧто(Остановка) + .ИмеетТип("Соответствие") + .Свойство("id").ИмеетТип("Число").Заполнено(); + + OPI_VK.УдалитьПост(ИДПоста, Параметры); + +КонецПроцедуры + +Процедура ВК_ОтправитьСообщение() Экспорт + + Параметры = ПолучитьПараметрыВК(); + Пользователь = ПолучитьПараметр("ВК_Пользователь"); + Токен = ПолучитьПараметр("ВК_КТ"); + Текст = "Сообщение из автотеста"; + + МассивКнопок = Новый Массив; + МассивКнопок.Добавить("Кнопка 1"); + МассивКнопок.Добавить("Кнопка 2"); + + Клавиатура = OPI_VK.СформироватьКлавиатуру(МассивКнопок); + Результат = OPI_VK.НаписатьСообщение(Текст, Пользователь, Токен, Клавиатура, Параметры); + + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Соответствие") + .Свойство("response").ИмеетТип("Число").Заполнено(); + +КонецПроцедуры + #КонецОбласти #Область YandexDisk