From 7e4e624c3bc12f5f863b0dca3baf7c57c753385e Mon Sep 17 00:00:00 2001
From: Anton <bayselonarrend@gmail.com>
Date: Fri, 18 Oct 2024 19:58:28 +0300
Subject: [PATCH] =?UTF-8?q?=D0=A2=D0=B5=D1=81=D1=82=D1=8B=20CLI=20=D0=B4?=
 =?UTF-8?q?=D0=BB=D1=8F=20=D0=BD=D0=B5=D1=81=D0=BA=D0=BE=D0=BB=D1=8C=D0=BA?=
 =?UTF-8?q?=D0=B8=D1=85=20=D0=B1=D0=BB=D0=BE=D0=BA=D0=BE=D0=B2=20B24?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../src/CommonModules/OPI_Тесты/Module.bsl    |   4 +-
 .../src/CommonModules/OPI_ТестыCLI/Module.bsl | 462 ++++++++++++++++++
 2 files changed, 464 insertions(+), 2 deletions(-)

diff --git a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl
index 9c9a3e1452..f6287a0883 100644
--- a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl
+++ b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl
@@ -10962,7 +10962,7 @@
     Токен    = ПараметрыФункции["Bitrix24_Token"];
     IDПоля   = ПараметрыФункции["Bitrix24_TaskFieldID"];
 
-    Результат = OPI_Bitrix24.ПолучитьПользовательскоеПолеЗадачи(URL, IDПоля);
+    Результат = OPI_Bitrix24.ПолучитьПользовательскоеПолеЗадачи(URL, IDПоля, Токен);
 
     // END
 
@@ -10977,7 +10977,7 @@
     URL      = ПараметрыФункции["Bitrix24_Domain"];
     Токен    = ПараметрыФункции["Bitrix24_Token"];
 
-    Результат = OPI_Bitrix24.ПолучитьСписокПользовательскихПолейЗадачи(URL);
+    Результат = OPI_Bitrix24.ПолучитьСписокПользовательскихПолейЗадачи(URL, Токен);
 
     // END
 
diff --git a/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl
index d5e61f0415..095216ef02 100644
--- a/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl
+++ b/src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl
@@ -1816,6 +1816,53 @@
 
 КонецПроцедуры
 
+Процедура CLI_Б24_РаботаСУведомлениями() Экспорт
+
+    ПараметрыТеста = Новый Структура;
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_URL"   , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Domain", ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Token" , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture"        , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture2"       , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Document"       , ПараметрыТеста);
+
+    CLI_Bitrix24_СоздатьПерсональноеУведомление(ПараметрыТеста);
+    CLI_Bitrix24_СоздатьСистемноеУведомление(ПараметрыТеста);
+    CLI_Bitrix24_УдалитьУведомление(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Б24_РаботаСПолямиЗадач() Экспорт
+
+    ПараметрыТеста = Новый Структура;
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_URL"            , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Domain"         , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Token"          , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_HookTaskFieldID", ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_TaskFieldID"    , ПараметрыТеста);
+
+    CLI_Bitrix24_ДобавитьПользовательскоеПолеЗадачи(ПараметрыТеста);
+    CLI_Bitrix24_ИзменитьПользовательскоеПолеЗадачи(ПараметрыТеста);
+    CLI_Bitrix24_ПолучитьПользовательскоеПолеЗадачи(ПараметрыТеста);
+    CLI_Bitrix24_ПолучитьСписокПользовательскихПолейЗадачи(ПараметрыТеста);
+    CLI_Bitrix24_УдалитьПользовательскоеПолеЗадачи(ПараметрыТеста);
+
+КонецПроцедуры
+
+Процедура CLI_Б24_УправлениеПодразделениями() Экспорт
+
+    ПараметрыТеста = Новый Структура;
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_URL"   , ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Domain", ПараметрыТеста);
+    OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Token" , ПараметрыТеста);
+
+    CLI_Bitrix24_СоздатьПодразделение(ПараметрыТеста);
+    CLI_Bitrix24_ПолучитьПодразделения(ПараметрыТеста);
+    CLI_Bitrix24_ИзменитьПодразделение(ПараметрыТеста);
+    CLI_Bitrix24_УдалитьПодразделение(ПараметрыТеста);
+
+КонецПроцедуры
+
 #КонецОбласти
 
 #КонецОбласти
@@ -13159,6 +13206,421 @@
 
 КонецПроцедуры
 
+Процедура CLI_Bitrix24_СоздатьПерсональноеУведомление(ПараметрыФункции)
+
+    IDПользователя = 1;
+
+    URL      = ПараметрыФункции["Bitrix24_URL"];
+    Текст    = "Текст сообщения";
+    Картинка = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
+    Файл     = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
+
+    Вложения = Новый Массив;
+    Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокКартинки("Картинка1", Картинка));
+    Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокФайла("Файл1.docx"  , Файл));
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"   , URL);
+    Опции.Вставить("user"  , IDПользователя);
+    Опции.Вставить("text"  , Текст);
+    Опции.Вставить("blocks", Вложения);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "СоздатьПерсональноеУведомление", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПерсональноеУведомление (хук)", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат); // SKIP
+
+    IDСообщения = Результат["result"];                                                        // SKIP
+    OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_PersoalHookNotifyID", IDСообщения);  // SKIP
+    ПараметрыФункции.Вставить("Bitrix24_PersoalHookNotifyID", IDСообщения);                   // SKIP
+
+    URL            = ПараметрыФункции["Bitrix24_Domain"];
+    Токен          = ПараметрыФункции["Bitrix24_Token"];
+    Тег            = "Новый";
+    IDПользователя = 10;
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"   , URL);
+    Опции.Вставить("user"  , IDПользователя);
+    Опции.Вставить("text"  , Текст);
+    Опции.Вставить("tag"   , Тег);
+    Опции.Вставить("token" , Токен);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "СоздатьПерсональноеУведомление", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПерсональноеУведомление", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат);
+
+    IDСообщения = Результат["result"];
+    OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_PersoalNotifyID", IDСообщения);
+    ПараметрыФункции.Вставить("Bitrix24_PersoalNotifyID", IDСообщения);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_СоздатьСистемноеУведомление(ПараметрыФункции)
+
+    IDПользователя = 1;
+
+    URL      = ПараметрыФункции["Bitrix24_URL"];
+    Текст    = "Текст сообщения";
+    Картинка = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
+    Файл     = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
+
+    Вложения = Новый Массив;
+    Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокКартинки("Картинка1", Картинка));
+    Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокФайла("Файл1.docx"  , Файл));
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"   , URL);
+    Опции.Вставить("user"  , IDПользователя);
+    Опции.Вставить("text"  , Текст);
+    Опции.Вставить("blocks", Вложения);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "СоздатьСистемноеУведомление", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьСистемноеУведомление (хук)", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат); // SKIP
+
+    IDСообщения = Результат["result"];                                                       // SKIP
+    OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_SystemHookNotifyID", IDСообщения);  // SKIP
+    ПараметрыФункции.Вставить("Bitrix24_SystemHookNotifyID", IDСообщения);                   // SKIP
+
+    URL            = ПараметрыФункции["Bitrix24_Domain"];
+    Токен          = ПараметрыФункции["Bitrix24_Token"];
+    Тег            = "Новый";
+    IDПользователя = 10;
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"   , URL);
+    Опции.Вставить("user"  , IDПользователя);
+    Опции.Вставить("text"  , Текст);
+    Опции.Вставить("tag"   , Тег);
+    Опции.Вставить("token" , Токен);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "СоздатьСистемноеУведомление", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьСистемноеУведомление", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат);
+
+    IDСообщения = Результат["result"];
+    OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_SystemNotifyID", IDСообщения);
+    ПараметрыФункции.Вставить("Bitrix24_SystemNotifyID", IDСообщения);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_УдалитьУведомление(ПараметрыФункции)
+
+    URL           = ПараметрыФункции["Bitrix24_URL"];
+    IDУведомления = ПараметрыФункции["Bitrix24_PersoalHookNotifyID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"   , URL);
+    Опции.Вставить("notif" , IDУведомления);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "УдалитьУведомление", Опции);
+    
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьУведомление", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксИстина(Результат); // SKIP
+
+    URL           = ПараметрыФункции["Bitrix24_Domain"];
+    Токен         = ПараметрыФункции["Bitrix24_Token"];
+    IDУведомления = ПараметрыФункции["Bitrix24_PersoalNotifyID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"   , URL);
+    Опции.Вставить("notif" , IDУведомления);
+    Опции.Вставить("token" , Токен);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "УдалитьУведомление", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьУведомление (приложение)", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксБулево(Результат);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_ДобавитьПользовательскоеПолеЗадачи(ПараметрыФункции)
+
+    URL = ПараметрыФункции["Bitrix24_URL"];
+
+    Тип = "date";
+    Имя = "BIRTHDAY_FIELD";
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"      , URL);
+    Опции.Вставить("type"     , Тип);
+    Опции.Вставить("fieldname", Имя);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ДобавитьПользовательскоеПолеЗадачи", Опции);
+    
+    URL   = ПараметрыФункции["Bitrix24_Domain"];
+    Токен = ПараметрыФункции["Bitrix24_Token"];
+
+    Тип        = "string";
+    Имя        = "TEXT_FIELD";
+    ВнешнийКод = "BITRIX_TEXT_FIELD";
+    Заголовок  = "Поле для текста";
+    Подпись    = Новый Структура("en,ru", "Some field", "Некоторое поле");
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"       , URL);
+    Опции.Вставить("type"      , Тип);
+    Опции.Вставить("fieldname" , Имя);
+    Опции.Вставить("externalid", ВнешнийКод);
+    Опции.Вставить("title"     , Заголовок);
+    Опции.Вставить("label"     , Подпись);
+    Опции.Вставить("token"     , Токен);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ДобавитьПользовательскоеПолеЗадачи", Опции);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_ИзменитьПользовательскоеПолеЗадачи(ПараметрыФункции)
+
+    URL = ПараметрыФункции["Bitrix24_URL"];
+
+    IDПоля    = ПараметрыФункции["Bitrix24_HookTaskFieldID"];
+    Заголовок = "Новый заголовок";
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"      , URL);
+    Опции.Вставить("fieldid"  , IDПоля);
+    Опции.Вставить("title"    , Заголовок);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ИзменитьПользовательскоеПолеЗадачи", Опции);
+
+    URL   = ПараметрыФункции["Bitrix24_Domain"];
+    Токен = ПараметрыФункции["Bitrix24_Token"];
+
+    IDПоля     = ПараметрыФункции["Bitrix24_TaskFieldID"];
+    ВнешнийКод = "NEW_TEXT_FIELD";
+    Подпись    = Новый Структура("en,ru", "Updated field", "Измененное поле");
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"       , URL);
+    Опции.Вставить("fieldid"   , IDПоля);
+    Опции.Вставить("externalid", ВнешнийКод);
+    Опции.Вставить("label"     , Подпись);
+    Опции.Вставить("token"     , Токен);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ДобавитьПользовательскоеПолеЗадачи", Опции);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_ПолучитьПользовательскоеПолеЗадачи(ПараметрыФункции)
+
+    URL      = ПараметрыФункции["Bitrix24_URL"];
+    IDПоля   = ПараметрыФункции["Bitrix24_HookTaskFieldID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"      , URL);
+    Опции.Вставить("fieldid"  , IDПоля);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ПолучитьПользовательскоеПолеЗадачи", Опции);
+
+    URL      = ПараметрыФункции["Bitrix24_Domain"];
+    Токен    = ПараметрыФункции["Bitrix24_Token"];
+    IDПоля   = ПараметрыФункции["Bitrix24_TaskFieldID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("fieldid" , IDПоля);
+    Опции.Вставить("token"   , Токен);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ПолучитьПользовательскоеПолеЗадачи", Опции);
+    
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_ПолучитьСписокПользовательскихПолейЗадачи(ПараметрыФункции)
+
+    URL       = ПараметрыФункции["Bitrix24_URL"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"      , URL);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ПолучитьСписокПользовательскихПолейЗадачи", Опции);
+    
+    URL      = ПараметрыФункции["Bitrix24_Domain"];
+    Токен    = ПараметрыФункции["Bitrix24_Token"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"  , URL);
+    Опции.Вставить("token", Токен);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ПолучитьСписокПользовательскихПолейЗадачи", Опции);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_УдалитьПользовательскоеПолеЗадачи(ПараметрыФункции)
+    
+    URL    = ПараметрыФункции["Bitrix24_URL"];
+    IDПоля = ПараметрыФункции["Bitrix24_HookTaskFieldID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"    , URL);
+    Опции.Вставить("fieldid", IDПоля);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "УдалитьПользовательскоеПолеЗадачи", Опции);
+
+    URL      = ПараметрыФункции["Bitrix24_Domain"];
+    Токен    = ПараметрыФункции["Bitrix24_Token"];
+    IDПоля   = ПараметрыФункции["Bitrix24_TaskFieldID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"    , URL);
+    Опции.Вставить("fieldid", IDПоля);
+    Опции.Вставить("token"  , Токен);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "УдалитьПользовательскоеПолеЗадачи", Опции);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_СоздатьПодразделение(ПараметрыФункции)
+
+    URL = ПараметрыФункции["Bitrix24_URL"];
+
+    Наименование = "Главное подразделение";
+    IDРодителя   = 1;
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("title"   , Наименование);
+    Опции.Вставить("parentid", IDРодителя);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "СоздатьПодразделение", Опции);
+    
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПодразделение (хук)", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат); // SKIP
+
+    IDПодразделения = Результат["result"];                                              // SKIP
+    OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_HookDepID", IDПодразделения);  // SKIP
+    ПараметрыФункции.Вставить("Bitrix24_HookDepID", IDПодразделения);                   // SKIP
+
+    URL      = ПараметрыФункции["Bitrix24_Domain"];
+    Токен    = ПараметрыФункции["Bitrix24_Token"];
+
+    Наименование   = "Подчиненное подразделение";
+    IDРодителя     = ПараметрыФункции["Bitrix24_HookDepID"];
+    IDРуководителя = 1;
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("title"   , Наименование);
+    Опции.Вставить("parentid", IDРодителя);
+    Опции.Вставить("headid"  , IDРуководителя);
+    Опции.Вставить("token"   , Токен);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "СоздатьПодразделение", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьПодразделение", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксЧисло(Результат);
+
+    IDПодразделения = Результат["result"];
+    OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_DepID", IDПодразделения);
+    ПараметрыФункции.Вставить("Bitrix24_DepID", IDПодразделения);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_ИзменитьПодразделение(ПараметрыФункции)
+
+    URL = ПараметрыФункции["Bitrix24_URL"];
+
+    IDПодразделения = ПараметрыФункции["Bitrix24_HookDepID"];
+    IDРодителя      = 7;
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("depid"   , IDПодразделения);
+    Опции.Вставить("parentid", IDРодителя);
+
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ИзменитьПодразделение", Опции);
+    
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьПодразделение (хук)", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксИстина(Результат); // SKIP
+
+    URL      = ПараметрыФункции["Bitrix24_Domain"];
+    Токен    = ПараметрыФункции["Bitrix24_Token"];
+
+    IDПодразделения = ПараметрыФункции["Bitrix24_DepID"];
+    Наименование    = "Новое подразделение";
+    IDРодителя      = 1;
+    IDРуководителя  = 10;
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("depid"   , IDПодразделения);
+    Опции.Вставить("title"   , Наименование);
+    Опции.Вставить("parentid", IDРодителя);
+    Опции.Вставить("headid"  , IDРуководителя);
+    Опции.Вставить("token"   , Токен);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ИзменитьПодразделение", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьПодразделение", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксИстина(Результат);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_УдалитьПодразделение(ПараметрыФункции)
+
+    URL             = ПараметрыФункции["Bitrix24_URL"];
+    IDПодразделения = ПараметрыФункции["Bitrix24_DepID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("depid"   , IDПодразделения);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "УдалитьПодразделение", Опции);
+    
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьПодразделение (хук)", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксИстина(Результат); // SKIP
+
+    URL             = ПараметрыФункции["Bitrix24_Domain"];
+    Токен           = ПараметрыФункции["Bitrix24_Token"];
+    IDПодразделения = ПараметрыФункции["Bitrix24_HookDepID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("depid"   , IDПодразделения);
+    Опции.Вставить("token"   , Токен);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "УдалитьПодразделение", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УдалитьПодразделение", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксИстина(Результат);
+
+КонецПроцедуры
+
+Процедура CLI_Bitrix24_ПолучитьПодразделения(ПараметрыФункции)
+
+    URL             = ПараметрыФункции["Bitrix24_URL"];
+    IDПодразделения = ПараметрыФункции["Bitrix24_DepID"];
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("depid"   , IDПодразделения);
+        
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ПолучитьПодразделения", Опции);
+
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьПодразделения (хук)", "Bitrix24");
+
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксМассив(Результат); // SKIP
+
+    URL             = ПараметрыФункции["Bitrix24_Domain"];
+    Токен           = ПараметрыФункции["Bitrix24_Token"];
+    IDРуководителя  = 1;
+
+    Опции = Новый Структура;
+    Опции.Вставить("url"     , URL);
+    Опции.Вставить("headid"  , IDРуководителя);
+    Опции.Вставить("token"   , Токен);
+    
+    Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("bitrix24", "ПолучитьПодразделения", Опции);
+    
+    OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьПодразделения", "Bitrix24");
+    OPI_ПолучениеДанныхТестов.Проверка_БитриксМассив(Результат);
+
+КонецПроцедуры
+
 #КонецОбласти
 
 #КонецОбласти