mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2024-12-04 10:34:52 +02:00
DB: Теги
This commit is contained in:
parent
ee68023914
commit
b893bd934a
@ -464,6 +464,66 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область РаботаСТегами
|
||||
|
||||
// Получить список тегов
|
||||
// Получает список тегов выбранных файлов
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен - token
|
||||
// Пути - Строка, Массив Из Строка - Путь или набору путей к файлам - paths
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Dropbox
|
||||
Функция ПолучитьСписокТегов(Знач Токен, Знач Пути) Экспорт
|
||||
|
||||
URL = "https://api.dropboxapi.com/2/files/tags/get";
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("path", Пути, "Массив", Параметры);
|
||||
|
||||
Заголовки = ПолучитьЗаголовкиЗапроса(Токен);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Добавить тег
|
||||
// Добавляет новый текстовый тег к файлу или каталогу
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен - token
|
||||
// Путь - Строка - Путь к объекту, для которого необходимо создать тег - path
|
||||
// Тег - Строка - Текст тега - tag
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Dropbox
|
||||
Функция ДобавитьТег(Знач Токен, Знач Путь, Знач Тег) Экспорт
|
||||
|
||||
Возврат ОбработатьТег(Токен, Путь, Тег);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Удалить тег
|
||||
// Удаляет текстовый тег файла или каталога
|
||||
//
|
||||
// Параметры:
|
||||
// Токен - Строка - Токен - token
|
||||
// Путь - Строка - Путь к объекту, тег которого необходимо удалить - path
|
||||
// Тег - Строка - Текст тега - tag
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Dropbox
|
||||
Функция УдалитьТег(Знач Токен, Знач Путь, Знач Тег) Экспорт
|
||||
|
||||
Возврат ОбработатьТег(Токен, Путь, Тег, Истина);
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
@ -485,6 +545,26 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ОбработатьТег(Знач Токен, Знач Путь, Знач Тег, Знач ЭтоУдаление = Ложь)
|
||||
|
||||
Если ЭтоУдаление Тогда
|
||||
URL = "https://api.dropboxapi.com/2/files/tags/remove";
|
||||
Иначе
|
||||
URL = "https://api.dropboxapi.com/2/files/tags/add";
|
||||
КонецЕсли;
|
||||
|
||||
Параметры = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("path" , Путь, "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("tag_text" , Тег , "Строка", Параметры);
|
||||
|
||||
Заголовки = ПолучитьЗаголовкиЗапроса(Токен);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьЗаголовкиЗапроса(Знач Токен, Знач Параметры = "")
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
|
||||
|
@ -210,6 +210,7 @@
|
||||
НовыйТест(ТаблицаТестов, "ДропБокс_ЗагрузитьФайл" , "Загрузить файл" , ДропБокс);
|
||||
НовыйТест(ТаблицаТестов, "ДропБокс_ЗагрузитьФайлПоURL" , "Загрузить файл по URL" , ДропБокс);
|
||||
НовыйТест(ТаблицаТестов, "ДропБокс_СоздатьКаталог" , "Создать каталог" , ДропБокс);
|
||||
НовыйТест(ТаблицаТестов, "ДропБокс_СоздатьУдалитьТег" , "Создать/Удалить тег" , ДропБокс);
|
||||
|
||||
Возврат ТаблицаТестов;
|
||||
|
||||
|
@ -3194,6 +3194,17 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ДропБокс_СоздатьУдалитьТег() Экспорт
|
||||
|
||||
ПараметрыТеста = Новый Структура;
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Dropbox_Token", ПараметрыТеста);
|
||||
|
||||
Dropbox_ДобавитьТег(ПараметрыТеста);
|
||||
Dropbox_ПолчитьСписокТегов(ПараметрыТеста);
|
||||
Dropbox_УдалитьТег(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
@ -3546,6 +3557,13 @@
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат[".tag"]).Равно("complete");
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ДропБоксТеги(Знач Результат, Знач Количество)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["paths_to_tags"]).ИмеетТип("Массив");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["paths_to_tags"].Количество()).Равно(Количество);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область АтомарныеТесты
|
||||
@ -4991,6 +5009,78 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Dropbox_ПолчитьСписокТегов(ПараметрыФункции)
|
||||
|
||||
Токен = ПараметрыФункции["Dropbox_Token"];
|
||||
|
||||
МассивПутей = Новый Массив;
|
||||
МассивПутей.Добавить("/New/pic.png");
|
||||
МассивПутей.Добавить("/New/mydoc.docx");
|
||||
|
||||
Результат = OPI_Dropbox.ПолучитьСписокТегов(Токен, МассивПутей);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокТегов");
|
||||
|
||||
Проверка_ДропБоксТеги(Результат, МассивПутей.Количество());
|
||||
|
||||
Результат = OPI_Dropbox.ПолучитьСписокТегов(Токен, "/New/pic.png");
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокТегов (одиночный)");
|
||||
|
||||
Проверка_ДропБоксТеги(Результат, 1);
|
||||
|
||||
ЕстьТег = Ложь;
|
||||
|
||||
Для Каждого Тег Из Результат["paths_to_tags"][0]["tags"] Цикл
|
||||
Если Тег["tag_text"] = "Важное" Тогда
|
||||
ЕстьТег = Истина;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(ЕстьТег).Равно(Истина);
|
||||
|
||||
OPI_Инструменты.Пауза(5);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Dropbox_ДобавитьТег(ПараметрыФункции)
|
||||
|
||||
Тег = "Важное";
|
||||
Токен = ПараметрыФункции["Dropbox_Token"];
|
||||
Путь = "/New/pic.png";
|
||||
|
||||
Результат = OPI_Dropbox.ДобавитьТег(Токен, Путь, Тег);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьТег");
|
||||
|
||||
Проверка_Пусто(Результат);
|
||||
|
||||
OPI_Инструменты.Пауза(5);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Dropbox_УдалитьТег(ПараметрыФункции)
|
||||
|
||||
Тег = "Важное";
|
||||
Токен = ПараметрыФункции["Dropbox_Token"];
|
||||
Путь = "/New/pic.png";
|
||||
|
||||
Результат = OPI_Dropbox.УдалитьТег(Токен, Путь, Тег);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьТег");
|
||||
|
||||
Проверка_Пусто(Результат);
|
||||
|
||||
OPI_Инструменты.Пауза(5);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
Loading…
Reference in New Issue
Block a user