1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2024-11-24 08:52:18 +02:00

Тесты CLI для VK и исправления багов

This commit is contained in:
Anton 2024-10-12 15:38:03 +03:00
parent aff500e67b
commit 8dce63bb54
11 changed files with 8068 additions and 5062 deletions

File diff suppressed because it is too large Load Diff

View File

@ -162,7 +162,7 @@
Или ТипЗнч(Вывод) = Тип("Соответствие")
Или ТипЗнч(Вывод) = Тип("Массив") Тогда
Вывод = OPI_Tools.JSONString(Вывод);
Вывод = OPI_Tools.JSONString(Вывод, , , Ложь);
КонецЕсли;

View File

@ -143,6 +143,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Текст);
OPI_ПреобразованиеТипов.ПолучитьСтроку(СсылкаПодЗаписью);
OPI_ПреобразованиеТипов.ПолучитьБулево(Реклама);
OPI_ПреобразованиеТипов.ПолучитьМассив(Объекты);
Параметры = ПолучитьСтандартныеПараметры(Параметры);
СтрокаВложений = СтрСоединить(Объекты, ",");
@ -693,7 +694,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Текст);
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПользователя);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Communitytoken);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура);
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(Клавиатура);
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Параметры_.Вставить("access_token", Communitytoken);
@ -916,9 +917,7 @@
МассивСтруктур.Добавить(СтруктураКампании);
JSONДата = OPI_Инструменты.JSONСтрокой(МассивСтруктур);
Параметры_.Вставить("data", JSONДата);
Параметры_.Вставить("data", МассивСтруктур);
Ответ = OPI_Инструменты.Get("api.vk.com/method/ads.createCampaigns", Параметры_);
@ -979,8 +978,6 @@
МассивСтруктур.Добавить(СтруктураКампании);
OPI_ПреобразованиеТипов.ПолучитьСтроку(МассивСтруктур, Истина);
Параметры_.Вставить("data" , МассивСтруктур);
Параметры_.Вставить("account_id" , IDКабинета);
@ -1705,7 +1702,7 @@
Клавиатура.Вставить("buttons" , МассивКлавиатуры);
Клавиатура.Вставить("one_time", Ложь);
Возврат OPI_Инструменты.JSONСтрокой(Клавиатура);
Возврат OPI_Инструменты.JSONСтрокой(Клавиатура, , Ложь);
КонецФункции
@ -2030,8 +2027,7 @@
ИначеЕсли Способ = НовыйСпособ Тогда
ОтветСтрокой = OPI_Инструменты.JSONСтрокой(Ответ);
Параметры.Вставить("upload_response", ОтветСтрокой);
Параметры.Вставить("upload_response", Ответ);
Иначе

File diff suppressed because it is too large Load Diff

View File

@ -42,6 +42,7 @@
// Раскомментировать, если выполняется OneScript
#Использовать "./internal"
#Использовать asserts
#Область СлужебныйПрограммныйИнтерфейс
Функция ПолучитьСоответствиеРазделовТестирования() Экспорт
@ -398,8 +399,11 @@
Функция ВыполнитьТестCLI(Знач Библиотека, Знач Метод, Знач Опции) Экспорт
//Oint = "oint";
Oint = "C:\Program Files\OneScript\bin\oint.bat";
ФайлРезультата = ПолучитьИмяВременногоФайла();
СтрокаЗапуска = "oint " + Библиотека + " " + Метод;
СтрокаЗапуска = Oint + " " + Библиотека + " " + Метод;
Для Каждого Опция Из Опции Цикл
@ -1816,13 +1820,13 @@
КонецФункции
Функция ПолучитьОбщийМодуль(Знач Имя)
Модуль = Вычислить(Имя);
Возврат Модуль;
КонецФункции
Функция ПолучитьЗначениеДляCLI(Знач Значение)
Функция ПолучитьЗначениеДляCLI(Знач Значение, Знач Вложенный = Ложь)
ТекущийТип = ТипЗнч(Значение);
@ -1831,8 +1835,12 @@
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
ИначеЕсли ТекущийТип = Тип("Строка") Тогда
Значение = """" + Значение + """";
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
Если Не Вложенный Тогда
Значение = """" + Значение + """";
КонецЕсли;
ИначеЕсли ТекущийТип = Тип("Дата") Тогда
@ -1841,11 +1849,11 @@
ИначеЕсли ТекущийТип = Тип("Массив") Тогда
Для Н = 0 По Значение.ВГраница() Цикл
Значение.Установить(Н, ПолучитьЗначениеДляCLI(Значение[Н]));
Значение.Установить(Н, ПолучитьЗначениеДляCLI(Значение[Н], Истина));
КонецЦикла;
Значение = СтрСоединить(Значение, "','");
Значение = "['" + Значение + "']";
Значение = """['" + Значение + "']""";
ИначеЕсли ТекущийТип = Тип("Структура") Или ТекущийТип = Тип("Соответствие") Тогда
@ -1856,6 +1864,10 @@
ЗаписатьJSON(ЗаписьJSON, Значение);
Значение = """" + ЗаписьJSON.Закрыть() + """";
ИначеЕсли ТекущийТип = Тип("Булево") Тогда
Значение = ?(Значение, "true", "false");
ИначеЕсли ТекущийТип = Тип("ДвоичныеДанные") Тогда

View File

@ -294,11 +294,13 @@
КонецФункции
Функция JSONСтрокой(Знач Данные, Знач Экранирование = "Нет") Экспорт
Функция JSONСтрокой(Знач Данные, Знач Экранирование = "Нет", Знач ПереносСтрок = Истина, Знач ДвойныеКавчки = Истина) Экспорт
ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Windows
Перенос = ?(ПереносСтрок, ПереносСтрокJSON.Windows, ПереносСтрокJSON.Нет);
ПараметрыJSON = Новый ПараметрыЗаписиJSON(Перенос
, " "
, Истина
, ДвойныеКавчки
, ЭкранированиеСимволовJSON[Экранирование]
, Ложь
, Ложь

View File

@ -1,4 +1,4 @@
// OneScript: ./OInt/core/Modules/OPI_VK.os
// OneScript: ./OInt/core/Modules/OPI_VK.os
// Lib: VK
// CLI: vk
@ -143,6 +143,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Текст);
OPI_ПреобразованиеТипов.ПолучитьСтроку(СсылкаПодЗаписью);
OPI_ПреобразованиеТипов.ПолучитьБулево(Реклама);
OPI_ПреобразованиеТипов.ПолучитьМассив(Объекты);
Параметры = ПолучитьСтандартныеПараметры(Параметры);
СтрокаВложений = СтрСоединить(Объекты, ",");
@ -693,7 +694,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Текст);
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПользователя);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Communitytoken);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура);
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(Клавиатура);
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Параметры_.Вставить("access_token", Communitytoken);
@ -916,9 +917,7 @@
МассивСтруктур.Добавить(СтруктураКампании);
JSONДата = OPI_Инструменты.JSONСтрокой(МассивСтруктур);
Параметры_.Вставить("data", JSONДата);
Параметры_.Вставить("data", МассивСтруктур);
Ответ = OPI_Инструменты.Get("api.vk.com/method/ads.createCampaigns", Параметры_);
@ -979,8 +978,6 @@
МассивСтруктур.Добавить(СтруктураКампании);
OPI_ПреобразованиеТипов.ПолучитьСтроку(МассивСтруктур, Истина);
Параметры_.Вставить("data" , МассивСтруктур);
Параметры_.Вставить("account_id" , IDКабинета);
@ -1705,7 +1702,7 @@
Клавиатура.Вставить("buttons" , МассивКлавиатуры);
Клавиатура.Вставить("one_time", Ложь);
Возврат OPI_Инструменты.JSONСтрокой(Клавиатура);
Возврат OPI_Инструменты.JSONСтрокой(Клавиатура, , Ложь);
КонецФункции
@ -2030,8 +2027,7 @@
ИначеЕсли Способ = НовыйСпособ Тогда
ОтветСтрокой = OPI_Инструменты.JSONСтрокой(Ответ);
Параметры.Вставить("upload_response", ОтветСтрокой);
Параметры.Вставить("upload_response", Ответ);
Иначе

View File

@ -1,4 +1,4 @@
// OneScript: ./OInt/tools/Modules/internal/Modules/OPI_Инструменты.os
// OneScript: ./OInt/tools/Modules/internal/Modules/OPI_Инструменты.os
// MIT License
@ -294,11 +294,13 @@
КонецФункции
Функция JSONСтрокой(Знач Данные, Знач Экранирование = "Нет") Экспорт
Функция JSONСтрокой(Знач Данные, Знач Экранирование = "Нет", Знач ПереносСтрок = Истина, Знач ДвойныеКавчки = Истина) Экспорт
ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Windows
Перенос = ?(ПереносСтрок, ПереносСтрокJSON.Windows, ПереносСтрокJSON.Нет);
ПараметрыJSON = Новый ПараметрыЗаписиJSON(Перенос
, " "
, Истина
, ДвойныеКавчки
, ЭкранированиеСимволовJSON[Экранирование]
, Ложь
, Ложь

View File

@ -1,4 +1,4 @@
// OneScript: ./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os
// OneScript: ./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os
// MIT License
@ -42,6 +42,7 @@
// Раскомментировать, если выполняется OneScript
// #Использовать "./internal"
// #Использовать asserts
#Область СлужебныйПрограммныйИнтерфейс
Функция ПолучитьСоответствиеРазделовТестирования() Экспорт
@ -398,8 +399,11 @@
Функция ВыполнитьТестCLI(Знач Библиотека, Знач Метод, Знач Опции) Экспорт
//Oint = "oint";
Oint = "C:\Program Files\OneScript\bin\oint.bat";
ФайлРезультата = ПолучитьИмяВременногоФайла();
СтрокаЗапуска = "oint " + Библиотека + " " + Метод;
СтрокаЗапуска = Oint + " " + Библиотека + " " + Метод;
Для Каждого Опция Из Опции Цикл
@ -1822,7 +1826,7 @@
Возврат Модуль;
КонецФункции
Функция ПолучитьЗначениеДляCLI(Знач Значение)
Функция ПолучитьЗначениеДляCLI(Знач Значение, Знач Вложенный = Ложь)
ТекущийТип = ТипЗнч(Значение);
@ -1831,8 +1835,12 @@
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
ИначеЕсли ТекущийТип = Тип("Строка") Тогда
Значение = """" + Значение + """";
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
Если Не Вложенный Тогда
Значение = """" + Значение + """";
КонецЕсли;
ИначеЕсли ТекущийТип = Тип("Дата") Тогда
@ -1841,11 +1849,11 @@
ИначеЕсли ТекущийТип = Тип("Массив") Тогда
Для Н = 0 По Значение.ВГраница() Цикл
Значение.Установить(Н, ПолучитьЗначениеДляCLI(Значение[Н]));
Значение.Установить(Н, ПолучитьЗначениеДляCLI(Значение[Н], Истина));
КонецЦикла;
Значение = СтрСоединить(Значение, "','");
Значение = "['" + Значение + "']";
Значение = """['" + Значение + "']""";
ИначеЕсли ТекущийТип = Тип("Структура") Или ТекущийТип = Тип("Соответствие") Тогда
@ -1856,6 +1864,10 @@
ЗаписатьJSON(ЗаписьJSON, Значение);
Значение = """" + ЗаписьJSON.Закрыть() + """";
ИначеЕсли ТекущийТип = Тип("Булево") Тогда
Значение = ?(Значение, "true", "false");
ИначеЕсли ТекущийТип = Тип("ДвоичныеДанные") Тогда

File diff suppressed because it is too large Load Diff

View File

@ -162,7 +162,7 @@
Или ТипЗнч(Вывод) = Тип("Соответствие")
Или ТипЗнч(Вывод) = Тип("Массив") Тогда
Вывод = OPI_Инструменты.JSONСтрокой(Вывод);
Вывод = OPI_Инструменты.JSONСтрокой(Вывод, , , Ложь);
КонецЕсли;