1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-03-19 21:17:55 +02:00

Дефекты SC

This commit is contained in:
Anton Titovets 2024-12-18 14:22:59 +03:00
parent 08fc4b106b
commit f13a998c54
19 changed files with 5977 additions and 5917 deletions

File diff suppressed because it is too large Load Diff

View File

@ -572,7 +572,7 @@
Если МинимальныйРазмерЧасти > МаксимальныйРазмер Тогда
ВызватьИсключение "ChunkSize слишком мал. Необходимо увеличить размер части (минимум для данного файла - "
+ OPI_Инструменты.ЧислоВСтроку(Окр(МинимальныйРазмерЧасти + 0,5))
+ OPI_Инструменты.ЧислоВСтроку(Окр(МинимальныйРазмерЧасти + 0.5))
+ ")";
КонецЕсли;
@ -1332,7 +1332,6 @@
Сигнатура = OPI_Криптография.HMACSHA256(КлючПодписи, СтрокаДляПодписи);
Сигнатура = нРег(ПолучитьHexСтрокуИзДвоичныхДанных(Сигнатура));
OPI_Инструменты.ДобавитьКлючЗначение(ПараметрыURL, "X-Amz-Signature", Сигнатура);
ПодписьURL = OPI_Инструменты.ПараметрыЗапросаВСтроку(ПараметрыURL);

View File

@ -114,6 +114,10 @@
КонецФункции
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
Функция ПолучитьЗаголовокАвторизации(Знач Токен) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);

View File

@ -225,6 +225,17 @@
КонецФункции
// Получить товары кабинета
// Получает список товаров выбранного кабинета
//
// Параметры:
// Токен - Строка - Токен авторизации (Api-Key) - token
// IDКабинета - Строка, Число - ID кабинета - business
// Фильтры - Структура Из КлючИЗначение - Фильтры для отбора товаров - filters
// ТокенСтраницы - Строка - Токен следующей страницы при большой выборке - page
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Yandex Market
Функция ПолучитьТоварыКабинета(Знач Токен, Знач IDКабинета, Знач Фильтры = "", Знач ТокенСтраницы = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDКабинета);
@ -264,6 +275,8 @@
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
// BSLLS:DuplicateStringLiteral-off
СтруктураТовара = Новый Структура;
СтруктураТовара.Вставить("offerId", "<идентификатор товара в вашей системе>");
@ -385,6 +398,8 @@
СтруктураРазмеров.Вставить("width" , "<ширина в см.>");
СтруктураТовара.Вставить("weightDimensions", "<габариты и вес товара>");
// BSLLS:DuplicateStringLiteral-on
Если Пустая Тогда
СтруктураТовара = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураТовара);

View File

@ -353,6 +353,8 @@
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
// BSLLS:DuplicateStringLiteral-off
СтруктураСчетчика = Новый Структура;
СтруктураСчетчика.Вставить("autogoals_enabled", "<включение автоматических целей>");
@ -502,6 +504,8 @@
СтруктураСчетчика.Вставить("webvisor", СтруктураВебвизора);
// BSLLS:DuplicateStringLiteral-on
Если Пустая Тогда
СтруктураСчетчика = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураСчетчика);
КонецЕсли;

View File

@ -14505,7 +14505,6 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьМетку", "YandexMetrika");
OPI_ПолучениеДанныхТестов.Проверка_МетрикаМетка(Результат, Наименование);
КонецПроцедуры
Процедура YandexMetrika_ПолучитьМетку(ПараметрыФункции)
@ -14625,7 +14624,6 @@
СтруктураСчетчика.Вставить("favorite" , 0);
СтруктураСчетчика.Вставить("filter_robots" , 1);
Результат = OPI_YandexMetrika.ИзменитьСчетчик(Токен, IDСчетчика, СтруктураСчетчика);
// END
@ -15769,7 +15767,6 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьДвоичныеДанные (таймаут)", "TCP");
OPI_ПолучениеДанныхТестов.Проверка_Строка(Результат, Сообщение);
КонецПроцедуры
Процедура TCP_ОбработатьЗапрос(ПараметрыФункции) Экспорт

View File

@ -16478,7 +16478,6 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ИзменитьМетку", "YandexMetrika");
OPI_ПолучениеДанныхТестов.Проверка_МетрикаМетка(Результат, Наименование);
КонецПроцедуры
Процедура CLI_YandexMetrika_ПолучитьМетку(ПараметрыФункции)
@ -17613,6 +17612,7 @@
Наименование = "picture.jpg";
Бакет = "opi-gpbucket3";
Опции = Новый Структура;
Опции.Вставить("name" , Наименование);
Опции.Вставить("bucket", Бакет);
Опции.Вставить("basic" , ОсновныеДанные);
@ -17638,6 +17638,7 @@
ВременныйФайлБольшой = ПолучитьИмяВременногоФайла();
Опции = Новый Структура;
Опции.Вставить("name" , Наименование);
Опции.Вставить("bucket", Бакет);
Опции.Вставить("basic" , ОсновныеДанные);
@ -17649,6 +17650,7 @@
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат.Размер() = 34432400);
УдалитьФайлы(ВременныйФайлБольшой);
Опции = Новый Структура;
Опции.Вставить("name" , Наименование);
Опции.Вставить("bucket", Бакет);
Опции.Вставить("basic" , ОсновныеДанные);

View File

@ -495,7 +495,6 @@
Если OPI_Инструменты.ЭтоWindows() Тогда
Oint = """C:/Program Files/OneScript/bin/oint.bat""";
//"""C:\Program Files (x86)\OInt\bin\oint.bat""";
Иначе
@ -1031,7 +1030,6 @@
ОжидаетЧто(Результат["offset"]).Равно(Отступ);
ОжидаетЧто(Результат["items"]).ИмеетТип("Массив");
КонецПроцедуры
Процедура Проверка_ГКОбъект(Знач Результат, Знач Наименование, Знач Описание) Экспорт
@ -2060,13 +2058,14 @@
КонецФункции
Функция ПолучитьОбщийМодуль(Знач Имя)
Модуль = Вычислить(Имя);
Возврат Модуль;
КонецФункции
// BSLLS:CognitiveComplexity-off
Функция ПолучитьЗначениеДляCLI(Знач Значение, Знач Вложенный = Ложь)
ТекущийТип = ТипЗнч(Значение);
@ -2143,6 +2142,7 @@
Возврат Значение;
КонецФункции
// BSLLS:CognitiveComplexity-on
Функция ОформитьОпцию(Знач Значение, Знач Имя, Знач Вложенный = Ложь)
@ -2157,7 +2157,6 @@
МассивСекретов.Добавить("refresh");
СтруктураЗамен = Новый Структура;
СтруктураЗамен.Вставить("connect", "mongodb://bayselonarrend:***@127.0.0.1:27017");
Если ТипЗнч(Значение) = Тип("Структура") Или ТипЗнч(Значение) = Тип("Соответствие") Тогда

View File

@ -47,29 +47,8 @@
Если ТипЗнч(Значение) = Тип("ДвоичныеДанные") Тогда
Возврат;
Иначе
Файл = Новый Файл(Значение);
Если Файл.Существует() Тогда
Значение = Новый ДвоичныеДанные(Значение);
ИначеЕсли СтрНачинаетсяС(СокрЛ(Значение), "http://")
Или СтрНачинаетсяС(СокрЛ(Значение), "https://") Тогда
Значение = OPI_Инструменты.Get(Значение);
Иначе
Если ПопыткаB64 Тогда
Значение = Base64Значение(Значение);
Иначе
ВызватьИсключение "";
КонецЕсли;
КонецЕсли;
Иначе
ПреобразоватьИсточникВЗначение(Значение, ПопыткаB64);
КонецЕсли;
Исключение
@ -332,4 +311,29 @@
КонецФункции
Процедура ПреобразоватьИсточникВЗначение(Значение, ПопыткаB64)
Файл = Новый Файл(Значение);
Если Файл.Существует() Тогда
Значение = Новый ДвоичныеДанные(Значение);
ИначеЕсли СтрНачинаетсяС(СокрЛ(Значение), "http://")
Или СтрНачинаетсяС(СокрЛ(Значение), "https://") Тогда
Значение = OPI_Инструменты.Get(Значение);
Иначе
Если ПопыткаB64 Тогда
Значение = Base64Значение(Значение);
Иначе
ВызватьИсключение "значение не является путем к файлу или Base64 строкой";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -282,7 +282,7 @@
Запрос.УстановитьИмяФайлаТела(ИмяФайла);
Возврат Запрос
Возврат Запрос;
КонецФункции
@ -924,7 +924,7 @@
ВывестиТекстВТекущуюСтроку(Буфер , "Зеленый");
ВывестиТекстВТекущуюСтроку(Информация);
Если Процент = 100 Тогда
Если Процент = Целое Тогда
ВывестиТекстВТекущуюСтроку(Символы.ПС, , Истина);
КонецЕсли;
@ -1649,8 +1649,12 @@
ЭлементыПути = СтрРазделить(КаталогПрограммы, "/");
ЭлементыПути.Удалить(ЭлементыПути.ВГраница());
// BSLLS:UsingHardcodePath-off
КаталогКомпонент = СтрСоединить(ЭлементыПути, "/") + "/lib/oint/addins/";
// BSLLS:UsingHardcodePath-on
Возврат КаталогКомпонент;
КонецФункции

View File

@ -572,7 +572,7 @@
Если МинимальныйРазмерЧасти > МаксимальныйРазмер Тогда
ВызватьИсключение "ChunkSize слишком мал. Необходимо увеличить размер части (минимум для данного файла - "
+ OPI_Инструменты.ЧислоВСтроку(Окр(МинимальныйРазмерЧасти + 0,5))
+ OPI_Инструменты.ЧислоВСтроку(Окр(МинимальныйРазмерЧасти + 0.5))
+ ")";
КонецЕсли;
@ -1332,7 +1332,6 @@
Сигнатура = OPI_Криптография.HMACSHA256(КлючПодписи, СтрокаДляПодписи);
Сигнатура = нРег(ПолучитьHexСтрокуИзДвоичныхДанных(Сигнатура));
OPI_Инструменты.ДобавитьКлючЗначение(ПараметрыURL, "X-Amz-Signature", Сигнатура);
ПодписьURL = OPI_Инструменты.ПараметрыЗапросаВСтроку(ПараметрыURL);

View File

@ -114,6 +114,10 @@
КонецФункции
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
Функция ПолучитьЗаголовокАвторизации(Знач Токен) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);

View File

@ -225,6 +225,17 @@
КонецФункции
// Получить товары кабинета
// Получает список товаров выбранного кабинета
//
// Параметры:
// Токен - Строка - Токен авторизации (Api-Key) - token
// IDКабинета - Строка, Число - ID кабинета - business
// Фильтры - Структура Из КлючИЗначение - Фильтры для отбора товаров - filters
// ТокенСтраницы - Строка - Токен следующей страницы при большой выборке - page
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Yandex Market
Функция ПолучитьТоварыКабинета(Знач Токен, Знач IDКабинета, Знач Фильтры = "", Знач ТокенСтраницы = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDКабинета);
@ -264,6 +275,8 @@
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
// BSLLS:DuplicateStringLiteral-off
СтруктураТовара = Новый Структура;
СтруктураТовара.Вставить("offerId", "<идентификатор товара в вашей системе>");
@ -385,6 +398,8 @@
СтруктураРазмеров.Вставить("width" , "<ширина в см.>");
СтруктураТовара.Вставить("weightDimensions", "<габариты и вес товара>");
// BSLLS:DuplicateStringLiteral-on
Если Пустая Тогда
СтруктураТовара = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураТовара);

View File

@ -353,6 +353,8 @@
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
// BSLLS:DuplicateStringLiteral-off
СтруктураСчетчика = Новый Структура;
СтруктураСчетчика.Вставить("autogoals_enabled", "<включение автоматических целей>");
@ -502,6 +504,8 @@
СтруктураСчетчика.Вставить("webvisor", СтруктураВебвизора);
// BSLLS:DuplicateStringLiteral-on
Если Пустая Тогда
СтруктураСчетчика = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураСчетчика);
КонецЕсли;

View File

@ -282,7 +282,7 @@
Запрос.УстановитьИмяФайлаТела(ИмяФайла);
Возврат Запрос
Возврат Запрос;
КонецФункции
@ -924,7 +924,7 @@
ВывестиТекстВТекущуюСтроку(Буфер , "Зеленый");
ВывестиТекстВТекущуюСтроку(Информация);
Если Процент = 100 Тогда
Если Процент = Целое Тогда
ВывестиТекстВТекущуюСтроку(Символы.ПС, , Истина);
КонецЕсли;
@ -1649,8 +1649,12 @@
ЭлементыПути = СтрРазделить(КаталогПрограммы, "/");
ЭлементыПути.Удалить(ЭлементыПути.ВГраница());
// BSLLS:UsingHardcodePath-off
КаталогКомпонент = СтрСоединить(ЭлементыПути, "/") + "/lib/oint/addins/";
// BSLLS:UsingHardcodePath-on
Возврат КаталогКомпонент;
КонецФункции

View File

@ -495,7 +495,6 @@
Если OPI_Инструменты.ЭтоWindows() Тогда
Oint = """C:/Program Files/OneScript/bin/oint.bat""";
//"""C:\Program Files (x86)\OInt\bin\oint.bat""";
Иначе
@ -1031,7 +1030,6 @@
ОжидаетЧто(Результат["offset"]).Равно(Отступ);
ОжидаетЧто(Результат["items"]).ИмеетТип("Массив");
КонецПроцедуры
Процедура Проверка_ГКОбъект(Знач Результат, Знач Наименование, Знач Описание) Экспорт
@ -2067,6 +2065,7 @@
КонецФункции
// BSLLS:CognitiveComplexity-off
Функция ПолучитьЗначениеДляCLI(Знач Значение, Знач Вложенный = Ложь)
ТекущийТип = ТипЗнч(Значение);
@ -2143,6 +2142,7 @@
Возврат Значение;
КонецФункции
// BSLLS:CognitiveComplexity-on
Функция ОформитьОпцию(Знач Значение, Знач Имя, Знач Вложенный = Ложь)
@ -2157,7 +2157,6 @@
МассивСекретов.Добавить("refresh");
СтруктураЗамен = Новый Структура;
СтруктураЗамен.Вставить("connect", "mongodb://bayselonarrend:***@127.0.0.1:27017");
Если ТипЗнч(Значение) = Тип("Структура") Или ТипЗнч(Значение) = Тип("Соответствие") Тогда

View File

@ -47,29 +47,8 @@
Если ТипЗнч(Значение) = Тип("ДвоичныеДанные") Тогда
Возврат;
Иначе
Файл = Новый Файл(Значение);
Если Файл.Существует() Тогда
Значение = Новый ДвоичныеДанные(Значение);
ИначеЕсли СтрНачинаетсяС(СокрЛ(Значение), "http://")
Или СтрНачинаетсяС(СокрЛ(Значение), "https://") Тогда
Значение = OPI_Инструменты.Get(Значение);
Иначе
Если ПопыткаB64 Тогда
Значение = Base64Значение(Значение);
Иначе
ВызватьИсключение "";
КонецЕсли;
КонецЕсли;
Иначе
ПреобразоватьИсточникВЗначение(Значение, ПопыткаB64);
КонецЕсли;
Исключение
@ -332,4 +311,29 @@
КонецФункции
Процедура ПреобразоватьИсточникВЗначение(Значение, ПопыткаB64)
Файл = Новый Файл(Значение);
Если Файл.Существует() Тогда
Значение = Новый ДвоичныеДанные(Значение);
ИначеЕсли СтрНачинаетсяС(СокрЛ(Значение), "http://")
Или СтрНачинаетсяС(СокрЛ(Значение), "https://") Тогда
Значение = OPI_Инструменты.Get(Значение);
Иначе
Если ПопыткаB64 Тогда
Значение = Base64Значение(Значение);
Иначе
ВызватьИсключение "значение не является путем к файлу или Base64 строкой";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -14505,7 +14505,6 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьМетку", "YandexMetrika");
OPI_ПолучениеДанныхТестов.Проверка_МетрикаМетка(Результат, Наименование);
КонецПроцедуры
Процедура YandexMetrika_ПолучитьМетку(ПараметрыФункции)
@ -14625,7 +14624,6 @@
СтруктураСчетчика.Вставить("favorite" , 0);
СтруктураСчетчика.Вставить("filter_robots" , 1);
Результат = OPI_YandexMetrika.ИзменитьСчетчик(Токен, IDСчетчика, СтруктураСчетчика);
// END
@ -15769,7 +15767,6 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьДвоичныеДанные (таймаут)", "TCP");
OPI_ПолучениеДанныхТестов.Проверка_Строка(Результат, Сообщение);
КонецПроцедуры
Процедура TCP_ОбработатьЗапрос(ПараметрыФункции) Экспорт

View File

@ -1,4 +1,4 @@
// OneScript: ./OInt/tests/Modules/internal/OPI_ТестыCLI.os
// OneScript: ./OInt/tests/Modules/internal/OPI_ТестыCLI.os
// MIT License
@ -16478,7 +16478,6 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ИзменитьМетку", "YandexMetrika");
OPI_ПолучениеДанныхТестов.Проверка_МетрикаМетка(Результат, Наименование);
КонецПроцедуры
Процедура CLI_YandexMetrika_ПолучитьМетку(ПараметрыФункции)
@ -17613,6 +17612,7 @@
Наименование = "picture.jpg";
Бакет = "opi-gpbucket3";
Опции = Новый Структура;
Опции.Вставить("name" , Наименование);
Опции.Вставить("bucket", Бакет);
Опции.Вставить("basic" , ОсновныеДанные);
@ -17638,6 +17638,7 @@
ВременныйФайлБольшой = ПолучитьИмяВременногоФайла();
Опции = Новый Структура;
Опции.Вставить("name" , Наименование);
Опции.Вставить("bucket", Бакет);
Опции.Вставить("basic" , ОсновныеДанные);
@ -17649,6 +17650,7 @@
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат.Размер() = 34432400);
УдалитьФайлы(ВременныйФайлБольшой);
Опции = Новый Структура;
Опции.Вставить("name" , Наименование);
Опции.Вставить("bucket", Бакет);
Опции.Вставить("basic" , ОсновныеДанные);