diff --git a/.github/workflows/oint_test_Dropbox.yml b/.github/workflows/oint_test_Dropbox.yml index fab3a09c20..bc16a0674e 100644 --- a/.github/workflows/oint_test_Dropbox.yml +++ b/.github/workflows/oint_test_Dropbox.yml @@ -87,6 +87,10 @@ jobs: if: ${{ cancelled() }} == false run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "ДропБокс_ЗагрузитьФайл" + - name: Загрузить файл по URL + if: ${{ cancelled() }} == false + run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "ДропБокс_ЗагрузитьФайлПоURL" + - name: Создать каталог if: ${{ cancelled() }} == false run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "ДропБокс_СоздатьКаталог" diff --git a/.github/workflows/oint_test_full.yml b/.github/workflows/oint_test_full.yml index 5dc1bca81f..1884bfe75f 100644 --- a/.github/workflows/oint_test_full.yml +++ b/.github/workflows/oint_test_full.yml @@ -893,6 +893,10 @@ jobs: if: ${{ cancelled() }} == false run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "ДропБокс_ЗагрузитьФайл" + - name: Загрузить файл по URL + if: ${{ cancelled() }} == false + run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "ДропБокс_ЗагрузитьФайлПоURL" + - name: Создать каталог if: ${{ cancelled() }} == false run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./OInt/tests/Modules/internal/OPI_Тесты.os "ДропБокс_СоздатьКаталог" diff --git a/OInt/core/Modules/OPI_Dropbox.os b/OInt/core/Modules/OPI_Dropbox.os index 79641d5827..1d13c5cc58 100644 --- a/OInt/core/Modules/OPI_Dropbox.os +++ b/OInt/core/Modules/OPI_Dropbox.os @@ -232,6 +232,31 @@ КонецФункции +// Загрузить файл по URL +// Загружает файл на облачный диск, получая его по указанному URL +// +// Параметры: +// Токен - Строка - Токен - token +// URL - Строка - URL источник файла - file +// Путь - Строка - Путь сохранения на Dropbox - path +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Dropbox +Функция ЗагрузитьФайлПоURL(Знач Токен, Знач URL, Знач Путь) Экспорт + + URL = "https://api.dropboxapi.com/2/files/save_url"; + + Параметры = Новый Структура; + OPI_Инструменты.ДобавитьПоле("path", Путь, "Строка", Параметры); + OPI_Инструменты.ДобавитьПоле("url" , URL , "Строка", Параметры); + + Заголовки = ПолучитьЗаголовкиЗапроса(Токен); + Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки); + + Возврат Ответ; + +КонецФункции + // Удалить объект // Удаляет объект с облачного диска // diff --git a/OInt/tests/Modules/internal/OPI_Тесты.os b/OInt/tests/Modules/internal/OPI_Тесты.os index 1940eb2f7e..c0d337484f 100644 --- a/OInt/tests/Modules/internal/OPI_Тесты.os +++ b/OInt/tests/Modules/internal/OPI_Тесты.os @@ -3183,6 +3183,16 @@ КонецПроцедуры +Процедура ДропБокс_ЗагрузитьФайлПоURL() Экспорт + + ПараметрыТеста = Новый Структура; + OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Dropbox_Token", ПараметрыТеста); + OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Document", ПараметрыТеста); + + Dropbox_ЗагрузитьФайлПоURL(ПараметрыТеста); + +КонецПроцедуры + #КонецОбласти #КонецОбласти @@ -4750,6 +4760,27 @@ КонецПроцедуры +Процедура Dropbox_ЗагрузитьФайлПоURL(ПараметрыФункции) + + Путь = "/New/url_doc.docx"; + Токен = ПараметрыФункции["Dropbox_Token"]; + URL = ПараметрыФункции["Document"]; + + Результат = OPI_Dropbox.ЗагрузитьФайлПоURL(Токен, URL, Путь); + + // END + + OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗагрузитьФайлПоURL"); + + //Проверка_ДропБоксФайл(Результат, Путь); + + Результат = OPI_Dropbox.УдалитьОбъект(Токен, Путь); + Проверка_ДропБоксМетаданные(Результат, Путь); + + OPI_Инструменты.Пауза(5); + +КонецПроцедуры + Процедура Dropbox_УдалитьОбъект(ПараметрыФункции) Путь = "/New/pic.png"; @@ -4818,7 +4849,7 @@ // END - OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьКаталог"); + OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПапку"); Проверка_ДропБоксМетаданные(Результат, Путь); @@ -4889,7 +4920,7 @@ // END - OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СкачатьФайл"); + OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокВерсийОбъекта"); Проверка_ДропБоксМассив(Результат, 1); diff --git a/OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os b/OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os index 2fd3c8471e..536497f025 100644 --- a/OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os +++ b/OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os @@ -208,6 +208,7 @@ НовыйТест(ТаблицаТестов, "ДропБокс_ПолучитьОбновитьТокен" , "Получить/Обновить токен" , ДропБокс); НовыйТест(ТаблицаТестов, "ДропБокс_ЗагрузитьФайл" , "Загрузить файл" , ДропБокс); + НовыйТест(ТаблицаТестов, "ДропБокс_ЗагрузитьФайлПоURL" , "Загрузить файл по URL" , ДропБокс); НовыйТест(ТаблицаТестов, "ДропБокс_СоздатьКаталог" , "Создать каталог" , ДропБокс); Возврат ТаблицаТестов;