You've already forked OpenIntegrations
							
							
				mirror of
				https://github.com/Bayselonarrend/OpenIntegrations.git
				synced 2025-10-30 23:47:46 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			2379 lines
		
	
	
		
			128 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
			Vendored
		
	
	
	
			
		
		
	
	
			2379 lines
		
	
	
		
			128 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
			Vendored
		
	
	
	
| // OneScript: ./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os
 | |
| 
 | |
| // MIT License
 | |
| 
 | |
| // Copyright (c) 2023 Anton Tsitavets
 | |
| 
 | |
| // Permission is hereby granted, free of charge, to any person obtaining a copy
 | |
| // of this software and associated documentation files (the "Software"), to deal
 | |
| // in the Software without restriction, including without limitation the rights
 | |
| // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | |
| // copies of the Software, and to permit persons to whom the Software is
 | |
| // furnished to do so, subject to the following conditions:
 | |
| 
 | |
| // The above copyright notice and this permission notice shall be included in all
 | |
| // copies or substantial portions of the Software.
 | |
| 
 | |
| // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | |
| // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | |
| // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | |
| // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | |
| // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | |
| // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 | |
| // SOFTWARE.
 | |
| 
 | |
| // https://github.com/Bayselonarrend/OpenIntegrations
 | |
| 
 | |
| // BSLLS:LatinAndCyrillicSymbolInWord-off
 | |
| // BSLLS:IncorrectLineBreak-off
 | |
| // BSLLS:UsingHardcodePath-off
 | |
| // BSLLS:Typo-off
 | |
| // BSLLS:DeprecatedMessage-off
 | |
| // BSLLS:UsingServiceTag-off
 | |
| // BSLLS:ExecuteExternalCodeInCommonModule-off
 | |
| // BSLLS:DuplicateStringLiteral-off
 | |
| // BSLLS:MagicNumber-off
 | |
| 
 | |
| //@skip-check use-non-recommended-method
 | |
| //@skip-check module-structure-top-region
 | |
| //@skip-check module-structure-method-in-regions
 | |
| //@skip-check undefined-function-or-procedure
 | |
| //@skip-check wrong-string-literal-content
 | |
| 
 | |
| // Раскомментировать, если выполняется OneScript
 | |
| #Использовать "./internal"
 | |
| #Использовать asserts
 | |
| 
 | |
| #Область СлужебныйПрограммныйИнтерфейс
 | |
| 
 | |
| Функция ПолучитьСоответствиеРазделовТестирования() Экспорт
 | |
| 
 | |
|     Разделы = Новый Структура;
 | |
|     Разделы.Вставить("Telegram"       , 5);
 | |
|     Разделы.Вставить("VK"             , 5);
 | |
|     Разделы.Вставить("Viber"          , 5);
 | |
|     Разделы.Вставить("Twitter"        , 4);
 | |
|     Разделы.Вставить("SQLite"         , 5);
 | |
|     Разделы.Вставить("YandexDisk"     , 5);
 | |
|     Разделы.Вставить("GoogleWorkspace", 2);
 | |
|     Разделы.Вставить("GoogleCalendar" , 5);
 | |
|     Разделы.Вставить("GoogleDrive"    , 5);
 | |
|     Разделы.Вставить("GoogleSheets"   , 5);
 | |
|     Разделы.Вставить("Notion"         , 5);
 | |
|     Разделы.Вставить("Slack"          , 5);
 | |
|     Разделы.Вставить("Airtable"       , 5);
 | |
|     Разделы.Вставить("Dropbox"        , 5);
 | |
|     Разделы.Вставить("Bitrix24"       , 5);
 | |
|     Разделы.Вставить("VkTeams"        , 5);
 | |
|     Разделы.Вставить("Ozon"           , 5);
 | |
|     Разделы.Вставить("Neocities"      , 5);
 | |
|     Разделы.Вставить("CDEK"           , 5);
 | |
|     Разделы.Вставить("YandexMetrika"  , 5);
 | |
|     Разделы.Вставить("S3"             , 5);
 | |
|     Разделы.Вставить("TCP"            , 5);
 | |
| 
 | |
|     Возврат Разделы;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ПолучитьСоответствиеРазделовТестированияGA() Экспорт
 | |
| 
 | |
|     СтандартныеЗависимости = "[Decode, Build]";
 | |
|     ЗависимостиГугл        = "Testing-GoogleWorkspace";
 | |
| 
 | |
|     Разделы = Новый Структура;
 | |
|     Разделы.Вставить("Telegram"       , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("VK"             , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Viber"          , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Twitter"        , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("SQLite"         , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("YandexDisk"     , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("GoogleWorkspace", СтандартныеЗависимости);
 | |
|     Разделы.Вставить("GoogleCalendar" , ЗависимостиГугл);
 | |
|     Разделы.Вставить("GoogleDrive"    , ЗависимостиГугл);
 | |
|     Разделы.Вставить("GoogleSheets"   , ЗависимостиГугл);
 | |
|     Разделы.Вставить("Notion"         , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Slack"          , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Airtable"       , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Dropbox"        , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Bitrix24"       , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("VkTeams"        , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Ozon"           , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("Neocities"      , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("CDEK"           , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("YandexMetrika"  , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("S3"             , СтандартныеЗависимости);
 | |
|     Разделы.Вставить("TCP"            , СтандартныеЗависимости);
 | |
| 
 | |
|     Возврат Разделы;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ПолучитьТаблицуТестов() Экспорт
 | |
| 
 | |
|     Телеграм  = "Telegram";
 | |
|     ВКонтакте = "VK";
 | |
|     ЯДиск     = "YandexDisk";
 | |
|     Календарь = "GoogleCalendar";
 | |
|     Твиттер   = "Twitter";
 | |
|     Вайбер    = "Viber";
 | |
|     Драйв     = "GoogleDrive";
 | |
|     ВСпейс    = "GoogleWorkspace";
 | |
|     Ноушн     = "Notion";
 | |
|     Слак      = "Slack";
 | |
|     Таблицы   = "GoogleSheets";
 | |
|     АирТ      = "Airtable";
 | |
|     ДропБокс  = "Dropbox";
 | |
|     Битрикс   = "Bitrix24";
 | |
|     ВКТ       = "VkTeams";
 | |
|     Озон      = "Ozon";
 | |
|     Неоситиз  = "Neocities";
 | |
|     Сдэк      = "CDEK";
 | |
|     Метрика   = "YandexMetrika";
 | |
|     S3_       = "S3";
 | |
|     TCP       = "TCP";
 | |
|     SQLite    = "SQLite";
 | |
| 
 | |
|     ТаблицаТестов = Новый ТаблицаЗначений;
 | |
|     ТаблицаТестов.Колонки.Добавить("Метод");
 | |
|     ТаблицаТестов.Колонки.Добавить("Синоним");
 | |
|     ТаблицаТестов.Колонки.Добавить("Раздел");
 | |
| 
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ПолучитьИнформациюБота"      , "Получить информацию бота"       , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ПолучитьОбновления"          , "Получить обновления"            , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_УстановитьWebhook"           , "Установить Webhook"             , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьТекстовоеСообщение" , "Отправить текстовое сообщение"  , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьКартинку"           , "Отправить картинку"             , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьВидео"              , "Отправить видео"                , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьАудио"              , "Отправить аудио"                , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьДокумент"           , "Отправить документ"             , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьГифку"              , "Отправить гифку"                , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьМедиагруппу"        , "Отправить медиагруппу"          , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьМестоположение"     , "Отправить местоположение"       , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьКонтакт"            , "Отправить контакт"              , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ОтправитьОпрос"              , "Отправить опрос"                , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ПереслатьСообщение"          , "Переслать сообщение"            , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_БанРазбан"                   , "Бан/Разбан"                     , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_СоздатьСсылкуПриглашение"    , "Создать ссылку-приглашение"     , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ЗакрепитьОткрепитьСообщение" , "Закрепить/Открепить сообщение"  , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ПолучитьЧислоУчастников"     , "Получить число участников"      , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ПолучитьСписокАватаровФорума", "Получить список аватаров форума", Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_СоздатьУдалитьТемуФорума"    , "Создать/Удалить тему форума"    , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_ИзменитьИмяГлавнойТемы"      , "Изменить имя главной темы"      , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "Телеграм_СкрытьПоказатьГлавнуюТему"   , "Скрыть/Показать главную тему"   , Телеграм);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьСсылкуТокена"               , "Создать ссылку получения токена", ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьУдалитьПост"                , "Создать/Удалить пост"           , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьСоставнойПост"              , "Создать/Удалить составной пост" , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьОпрос"                      , "Создать опрос"                  , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СохранитьУдалитьКартинку"          , "Добавить/Удалить картинку"      , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьИсторию"                    , "Создать историю"                , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_МетодыОбсуждений"                  , "Действия с обсуждениями"        , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ЛайкРепостКоммент"                 , "Лайк/Репост/Комментарий"        , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ПолучитьСтатистику"                , "Получить статистику"            , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ПолучитьСтатистикуПостов"          , "Получить статистику постов"     , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьРекламнуюКампанию"          , "Создать рекламную кампанию"     , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ОтправитьСообщение"                , "Отправить сообщение"            , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ПолучитьКатегорииТоваров"          , "Получить категории товаров"     , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьТоварПодборку"              , "Создать товар и подборку"       , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_СоздатьТоварСоСвойствами"          , "Создать товар со свойствами"    , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ПолучитьСписокТоваров"             , "Получить список товаров"        , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ПолучитьСписокПодборок"            , "Получить список подборок"       , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ПолучитьСписокСвойств"             , "Получить список свойств"        , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ПолучитьСписокЗаказов"             , "Получить список заказов"        , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ВК_ЗагрузитьВидео"                    , "Загрузить видео"                , ВКонтакте);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ПолучитьИнформациюОДиске"       , "Получить информацию о диске"    , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_СоздатьПапку"                   , "Создать папку"                  , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ЗагрузитьПоАдресуПолучитьОбъект", "Загрузить по URL и получить"    , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ЗагрузитьУдалитьФайл"           , "Загрузить/Удалить файл"         , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_СоздатьКопиюОбъекта"            , "Создать копию объекта"          , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ПолучитьСсылкуНаСкачивание"     , "Получить ссылку на скачивание"  , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ПолучитьСписокФайлов"           , "Получить список файлов"         , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ПереместитьОбъект"              , "Переместить объект"             , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ДействияПубличныхОбъектов"      , "Действия с публичными объектами", ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ЯДиск_ПолучитьСписокОпубликованных"   , "Получить список опубликованных" , ЯДиск);
 | |
|     НовыйТест(ТаблицаТестов, "ГВ_Авторизация"                       , "Авторизация"                    , ВСпейс);
 | |
|     НовыйТест(ТаблицаТестов, "ГВ_Авторизация"                       , "Авторизация"                    , Календарь);
 | |
|     НовыйТест(ТаблицаТестов, "ГК_ПолучитьСписокКалендарей"          , "Получить список календарей"     , Календарь);
 | |
|     НовыйТест(ТаблицаТестов, "ГК_СоздатьУдалитьКалендарь"           , "Создать/Удалить календарь"      , Календарь);
 | |
|     НовыйТест(ТаблицаТестов, "ГК_СоздатьУдалитьСобытие"             , "Создать/Удалить событие"        , Календарь);
 | |
|     НовыйТест(ТаблицаТестов, "ГВ_Авторизация"                       , "Авторизация"                    , Драйв);
 | |
|     НовыйТест(ТаблицаТестов, "ГД_ПолучитьСписокКаталогов"           , "Получить список каталогов"      , Драйв);
 | |
|     НовыйТест(ТаблицаТестов, "ГД_ЗагрузитьУдалитьФайл"              , "Загрузить/Удалить Файл"         , Драйв);
 | |
|     НовыйТест(ТаблицаТестов, "ГД_СоздатьУдалитьКомментарий"         , "Создать/Удалить кооментарий"    , Драйв);
 | |
|     НовыйТест(ТаблицаТестов, "ГД_СоздатьКаталог"                    , "Создать/Удалить каталог"        , Драйв);
 | |
|     НовыйТест(ТаблицаТестов, "ГВ_Авторизация"                       , "Авторизация"                    , Таблицы);
 | |
|     НовыйТест(ТаблицаТестов, "ГТ_СоздатьТаблицу"                    , "Создать таблицу"                , Таблицы);
 | |
|     НовыйТест(ТаблицаТестов, "ГТ_ЗаполнитьОчиститьЯчейки"           , "Заполнить/Очистить ячейки"      , Таблицы);
 | |
|     НовыйТест(ТаблицаТестов, "Твиттер_ДанныеАккаунта"               , "Данные аккаунта"                , Твиттер);
 | |
|     НовыйТест(ТаблицаТестов, "Твиттер_Твиты"                        , "Создание твитов"                , Твиттер);
 | |
|     НовыйТест(ТаблицаТестов, "Вайбер_ПолучениеИнформации"           , "Получение информации"           , Вайбер);
 | |
|     НовыйТест(ТаблицаТестов, "Вайбер_ОтправкаСообщений"             , "Отправка сообщений"             , Вайбер);
 | |
|     НовыйТест(ТаблицаТестов, "НоушнАпи_СоздатьСтраницу"             , "Создать страницу"               , Ноушн);
 | |
|     НовыйТест(ТаблицаТестов, "НоушнАпи_СоздатьИзменитьБазу"         , "Создать/Изменить базу"          , Ноушн);
 | |
|     НовыйТест(ТаблицаТестов, "НоушнАпи_СоздатьУдалитьБлок"          , "Создать/Удалить блок"           , Ноушн);
 | |
|     НовыйТест(ТаблицаТестов, "НоушнАпи_ПолучитьПользователей"       , "Получить пользователей"         , Ноушн);
 | |
|     НовыйТест(ТаблицаТестов, "Слак_ПолучитьИнформацию"              , "Получить информацию"            , Слак);
 | |
|     НовыйТест(ТаблицаТестов, "Слак_ОтправитьУдалитьСообщение"       , "Отправить/Удалить сообщение"    , Слак);
 | |
|     НовыйТест(ТаблицаТестов, "Слак_СоздатьАрхивироватьКанал"        , "Создать/Архивировать канал"     , Слак);
 | |
|     НовыйТест(ТаблицаТестов, "Слак_ОткрытьЗакрытьДиалог"            , "Открыть/Закрыть диалог"         , Слак);
 | |
|     НовыйТест(ТаблицаТестов, "Слак_ЗагрузитьУдалитьФайл"            , "Загрузить/Удалить файл"         , Слак);
 | |
|     НовыйТест(ТаблицаТестов, "Слак_ЗагрузитьУдалитьВФ"              , "Загрузить/Удалить внеш. файл"   , Слак);
 | |
|     НовыйТест(ТаблицаТестов, "АТ_СоздатьБазу"                       , "Создать/Изменить базу"          , АирТ);
 | |
|     НовыйТест(ТаблицаТестов, "АТ_СоздатьТаблицу"                    , "Создать/Изменить таблицу"       , АирТ);
 | |
|     НовыйТест(ТаблицаТестов, "АТ_СоздатьПоле"                       , "Создать/Изменить поле"          , АирТ);
 | |
|     НовыйТест(ТаблицаТестов, "АТ_СоздатьУдалитьЗаписи"              , "Создать/Удалить записи"         , АирТ);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_ПолучитьОбновитьТокен"       , "Получить/Обновить токен"        , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_ЗагрузитьФайл"               , "Загрузить файл"                 , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_ЗагрузитьФайлПоURL"          , "Загрузить файл по URL"          , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_СоздатьКаталог"              , "Создать каталог"                , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_СоздатьУдалитьТег"           , "Создать/Удалить тег"            , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_ПолучитьАккаунт"             , "Получить данные аккаунта"       , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_РаботаСДоступами"            , "Работа с доступами"             , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "ДропБокс_ПолучитьСписокФайловПапки"   , "Получить список файлов папки"   , ДропБокс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСТокеном"                   , "Работа с токеном"               , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_СерверноеВремя"                   , "Серверное время"                , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСНовостями"                 , "Работа с новостями"             , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСЗадачами"                  , "Работа с задачами"              , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСКомментариями"             , "Работа с комментариями"         , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСДиском"                    , "Работа с диском"                , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_Канбан"                           , "Канбан"                         , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_УчетРабочегоВремени"              , "Учет рабочего времени"          , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСЧатами"                    , "Работа с чатами"                , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСУведомлениями"             , "Работа с уведомлениями"         , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСПолямиЗадач"               , "Работа с польз. полями задач"   , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_УправлениеПодразделениями"        , "Управление подразделениями"     , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_УправлениеПользователями"         , "Управление пользователями"      , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСЛидами"                    , "Работа с лидами"                , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "Б24_РаботаСоСделками"                 , "Работа со сделками"             , Битрикс);
 | |
|     НовыйТест(ТаблицаТестов, "ВКТ_ОтправкаСообщений"                , "Отправка сообщений"             , ВКТ);
 | |
|     НовыйТест(ТаблицаТестов, "ВКТ_ОбщиеМетоды"                      , "Общие методы"                   , ВКТ);
 | |
|     НовыйТест(ТаблицаТестов, "ВКТ_УправлениеЧатами"                 , "Управление чатами"              , ВКТ);
 | |
|     НовыйТест(ТаблицаТестов, "ОзонАПИ_АтрибутыИХарактеристики"      , "Атрибуты и характеристики"      , Озон);
 | |
|     НовыйТест(ТаблицаТестов, "ОзонАПИ_ЗагрузкаИОбновлениеТоваров"   , "Загрузка и обновление товаров"  , Озон);
 | |
|     НовыйТест(ТаблицаТестов, "ОзонАПИ_Штрихкоды"                    , "Штрихкоды"                      , Озон);
 | |
|     НовыйТест(ТаблицаТестов, "ОзонАПИ_ЦеныИОстаткиТоваров"          , "Цены и остатки товаров"         , Озон);
 | |
|     НовыйТест(ТаблицаТестов, "ОзонАПИ_РаботаСАкциями"               , "Работа с акциями"               , Озон);
 | |
|     НовыйТест(ТаблицаТестов, "ОзонАПИ_РаботаСоСкладами"             , "Работа со складами"             , Озон);
 | |
|     НовыйТест(ТаблицаТестов, "ОзонАПИ_СхемаFBO"                     , "Схема FBO"                      , Озон);
 | |
|     НовыйТест(ТаблицаТестов, "НС_РаботаСФайлами"                    , "Работа с файлами"               , Неоситиз);
 | |
|     НовыйТест(ТаблицаТестов, "НС_ПолучениеДанных"                   , "Получение данных"               , Неоситиз);
 | |
|     НовыйТест(ТаблицаТестов, "СдэкАПИ_ОбщиеМетоды"                  , "Общие методы"                   , Сдэк);
 | |
|     НовыйТест(ТаблицаТестов, "СдэкАПИ_РаботаСЗаказами"              , "Работа с заказами"              , Сдэк);
 | |
|     НовыйТест(ТаблицаТестов, "СдэкАПИ_РаботаСЗаявкамиНаВызовКурьера", "Работа с заявками курьера"      , Сдэк);
 | |
|     НовыйТест(ТаблицаТестов, "ЯМетрика_УправлениеМетками"           , "Управление метками"             , Метрика);
 | |
|     НовыйТест(ТаблицаТестов, "ЯМетрика_УправлениеСчетчиками"        , "Управление счетчиками"          , Метрика);
 | |
|     НовыйТест(ТаблицаТестов, "ЯМетрика_УправлениеОперациями"        , "Управление операциями"          , Метрика);
 | |
|     НовыйТест(ТаблицаТестов, "AWS_ОбщиеМетоды"                      , "Общие методы"                   , S3_);
 | |
|     НовыйТест(ТаблицаТестов, "AWS_РаботаСБакетами"                  , "Работа с бакетами"              , S3_);
 | |
|     НовыйТест(ТаблицаТестов, "AWS_РаботаСОбъектами"                 , "Работа с объектами"             , S3_);
 | |
|     НовыйТест(ТаблицаТестов, "TC_Клиент"                            , "TCP Клиент"                     , TCP);
 | |
|     НовыйТест(ТаблицаТестов, "SQLL_ОсновныеМетоды"                  , "Основные методы"                , SQLite);
 | |
|     НовыйТест(ТаблицаТестов, "SQLL_ORM"                             , "ORM"                            , SQLite);
 | |
| 
 | |
|     Возврат ТаблицаТестов;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ОжидаетЧто(Значение) Экспорт
 | |
| 
 | |
|     Попытка
 | |
| 
 | |
|         Модуль  = ПолучитьОбщийМодуль("ЮТест");
 | |
|         Ожидаем = ТипЗнч(Модуль) = Тип("ОбщийМодуль");
 | |
|         Возврат Модуль.ОжидаетЧто(Значение);
 | |
| 
 | |
|     Исключение
 | |
|         Возврат Ожидаем.Что(Значение);
 | |
|     КонецПопытки;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция СформироватьТестыЯкс() Экспорт
 | |
| 
 | |
|     Модуль        = ПолучитьОбщийМодуль("ЮТТесты");
 | |
|     Разделы       = ПолучитьСоответствиеРазделовТестирования();
 | |
|     ТаблицаТестов = ПолучитьТаблицуТестов();
 | |
| 
 | |
|     Для Каждого Раздел Из Разделы Цикл
 | |
| 
 | |
|         ТекущийРаздел = Раздел.Ключ;
 | |
|         Отбор         = Новый Структура("Раздел", ТекущийРаздел);
 | |
|         ТестыРаздела  = ТаблицаТестов.НайтиСтроки(Отбор);
 | |
| 
 | |
|         Набор = Модуль.ДобавитьТестовыйНабор(ТекущийРаздел);
 | |
| 
 | |
|         Для Каждого Тест Из ТестыРаздела Цикл
 | |
|             Набор.ДобавитьСерверныйТест(Тест.Метод, Тест.Синоним);
 | |
|         КонецЦикла;
 | |
| 
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Возврат "";
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция СформироватьТестыЯксCLI() Экспорт
 | |
| 
 | |
|     Модуль        = ПолучитьОбщийМодуль("ЮТТесты");
 | |
|     Разделы       = ПолучитьСоответствиеРазделовТестирования();
 | |
|     ТаблицаТестов = ПолучитьТаблицуТестов();
 | |
| 
 | |
|     Для Каждого Раздел Из Разделы Цикл
 | |
| 
 | |
|         ТекущийРаздел = Раздел.Ключ;
 | |
|         Отбор         = Новый Структура("Раздел", ТекущийРаздел);
 | |
|         ТестыРаздела  = ТаблицаТестов.НайтиСтроки(Отбор);
 | |
| 
 | |
|         Набор = Модуль.ДобавитьТестовыйНабор("CLI_" + ТекущийРаздел);
 | |
| 
 | |
|         Для Каждого Тест Из ТестыРаздела Цикл
 | |
|             Набор.ДобавитьСерверныйТест("CLI_" + Тест.Метод, Тест.Синоним);
 | |
|         КонецЦикла;
 | |
| 
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Возврат "";
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция СформироватьТестыАссертс() Экспорт
 | |
| 
 | |
|     ТаблицаТестов = ПолучитьТаблицуТестов();
 | |
|     МассивТестов  = Новый Массив;
 | |
| 
 | |
|     Для Каждого Тест Из ТаблицаТестов Цикл
 | |
|         МассивТестов.Добавить(Тест.Метод);
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Возврат МассивТестов;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция СформироватьТестыАссертсCLI() Экспорт
 | |
| 
 | |
|     ТаблицаТестов = ПолучитьТаблицуТестов();
 | |
|     МассивТестов  = Новый Массив;
 | |
| 
 | |
|     Для Каждого Тест Из ТаблицаТестов Цикл
 | |
|         МассивТестов.Добавить("CLI_" + Тест.Метод);
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Возврат МассивТестов;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ПолучитьПараметр(Параметр) Экспорт
 | |
| 
 | |
|     Путь = ПутьКФайлуДанных();
 | |
|     Возврат ПолучитьЗначениеИзФайла(Параметр, Путь);
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ПолучитьДвоичные(Параметр) Экспорт
 | |
| 
 | |
|     Путь     = ПутьКФайлуДанных();
 | |
|     Значение = ПолучитьЗначениеИзФайла(Параметр, Путь);
 | |
| 
 | |
|     Если ТипЗнч(Значение) = Тип("Строка") Тогда
 | |
| 
 | |
|         Значение = ПолучитьФайлПути(Значение);
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
|     Возврат Значение;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ПолучитьФайлПути(Знач Путь) Экспорт
 | |
| 
 | |
|     Если СтрНайти(Путь, "http") > 0 Или СтрНайти(Путь, "www") > 0 Тогда
 | |
| 
 | |
|         ИВФ      = ПолучитьИмяВременногоФайла();
 | |
|         КопироватьФайл(Путь, ИВФ);
 | |
|         Путь     = ИВФ;
 | |
|         Двоичные = Новый ДвоичныеДанные(Путь);
 | |
| 
 | |
|         УдалитьФайлы(ИВФ);
 | |
| 
 | |
|     Иначе
 | |
| 
 | |
|         Двоичные = Новый ДвоичныеДанные(Путь);
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
|     Возврат Двоичные;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Процедура ПараметрВКоллекцию(Параметр, Коллекция) Экспорт
 | |
| 
 | |
|     Значение = ПолучитьПараметр(Параметр);
 | |
|     Коллекция.Вставить(Параметр, Значение);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура ДвоичныеВКоллекцию(Параметр, Коллекция) Экспорт
 | |
| 
 | |
|     Значение = ПолучитьДвоичные(Параметр);
 | |
|     Коллекция.Вставить(Параметр, Значение);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура ЗаписатьПараметр(Параметр, Значение) Экспорт
 | |
| 
 | |
|     Путь = ПутьКФайлуДанных();
 | |
|     ЗаписатьПараметрВФайл(Параметр, Значение, Путь);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура ЗаписатьЛог(Знач Результат, Знач Метод, Знач Библиотека = "") Экспорт
 | |
| 
 | |
|     Шапка = Строка(OPI_Инструменты.ПолучитьТекущуюДату()) + " | " + Метод;
 | |
| 
 | |
|     Попытка
 | |
|         Данные = OPI_Инструменты.JSONСтрокой(Результат);
 | |
|     Исключение
 | |
|         Данные = "Не JSON: " + Строка(Результат);
 | |
|     КонецПопытки;
 | |
| 
 | |
|     Данные = "    " + Данные;
 | |
| 
 | |
|     Сообщить(Шапка);
 | |
|     Сообщить(Символы.ПС);
 | |
|     Сообщить(Данные);
 | |
|     Сообщить(Символы.ПС);
 | |
|     Сообщить("---------------------------------");
 | |
|     Сообщить(Символы.ПС);
 | |
| 
 | |
|     Если ЗначениеЗаполнено(Библиотека) Тогда
 | |
| 
 | |
|         Попытка
 | |
|             Библиотека = Новый ЗащищенноеСоединениеOpenSSL; // Проверка на работу в 1С
 | |
|         Исключение
 | |
|             ЗаписатьФайлЛога(Данные, Метод, Библиотека);
 | |
|         КонецПопытки;
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура ЗаписатьФайлЛога(Знач Данные, Знач Метод, Знач Библиотека, Знач Принудительно = Ложь) Экспорт
 | |
| 
 | |
|     Попытка
 | |
| 
 | |
|         ПутьЛогов           = "./docs/ru/results";
 | |
|         ПутьЛоговБиблиотеки = ПутьЛогов + "/" + Библиотека;
 | |
| 
 | |
|         КаталогЛогов = Новый Файл(ПутьЛогов);
 | |
| 
 | |
|         Если Не КаталогЛогов.Существует() Тогда
 | |
|             СоздатьКаталог(ПутьЛогов);
 | |
|         КонецЕсли;
 | |
| 
 | |
|         КаталогЛоговБиблиотеки = Новый Файл(ПутьЛоговБиблиотеки);
 | |
| 
 | |
|         Если Не КаталогЛоговБиблиотеки.Существует() Тогда
 | |
|             СоздатьКаталог(ПутьЛоговБиблиотеки);
 | |
|         КонецЕсли;
 | |
| 
 | |
|         ПутьКФайлу = ПутьЛоговБиблиотеки + "/" + Метод + ".log";
 | |
|         ФайлЛога   = Новый Файл(ПутьКФайлу);
 | |
| 
 | |
|         Если Не ФайлЛога.Существует() Или Принудительно Тогда
 | |
|             ДокументЛога = Новый ТекстовыйДокумент;
 | |
|             ДокументЛога.УстановитьТекст(Данные);
 | |
|             ДокументЛога.Записать(ПутьКФайлу);
 | |
|         КонецЕсли;
 | |
| 
 | |
|     Исключение
 | |
|         Сообщить("Не удалось записать файл лога!: " + ОписаниеОшибки());
 | |
|     КонецПопытки;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура ЗаписатьЛогCLI(Знач Результат, Знач Метод, Знач Библиотека = "") Экспорт
 | |
| 
 | |
|     ЗаписатьЛог(Результат, Метод + " (CLI)");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Функция ВыполнитьТестCLI(Знач Библиотека, Знач Метод, Знач Опции) Экспорт
 | |
| 
 | |
|     Если OPI_Инструменты.ЭтоWindows() Тогда
 | |
| 
 | |
|         Oint = """C:/Program Files/OneScript/bin/oint.bat""";
 | |
| 
 | |
|     Иначе
 | |
| 
 | |
|         Oint = "sudo oint";
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
|     ФайлРезультата = ПолучитьИмяВременногоФайла();
 | |
|     СтрокаЗапуска  = Oint + " " + Библиотека + " " + Метод;
 | |
| 
 | |
|     Для Каждого Опция Из Опции Цикл
 | |
| 
 | |
|         ТекущееЗначение = ПолучитьЗначениеДляCLI(Опция.Значение);
 | |
| 
 | |
|         СтрокаЗапуска = СтрокаЗапуска
 | |
|             + " --"
 | |
|             + Опция.Ключ
 | |
|             + " "
 | |
|             + ТекущееЗначение;
 | |
| 
 | |
|     КонецЦикла;
 | |
| 
 | |
|     ЗапуститьПриложение(СтрокаЗапуска + " --out """ + ФайлРезультата + """", , Истина);
 | |
| 
 | |
|     Попытка
 | |
| 
 | |
|         ЧтениеJSON = Новый ЧтениеJSON();
 | |
|         ЧтениеJSON.ОткрытьФайл(ФайлРезультата);
 | |
|         Результат  = ПрочитатьJSON(ЧтениеJSON, Истина);
 | |
|         ЧтениеJSON.Закрыть();
 | |
| 
 | |
|     Исключение
 | |
| 
 | |
|         Сообщить(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
 | |
| 
 | |
|         Попытка
 | |
|             Результат =  Новый ДвоичныеДанные(ФайлРезультата);
 | |
|         Исключение
 | |
|             Результат = null;
 | |
|         КонецПопытки;
 | |
| 
 | |
|     КонецПопытки;
 | |
| 
 | |
|     ЗаписатьВызовCLI(Библиотека, Метод, Опции);
 | |
| 
 | |
|     Попытка
 | |
|         УдалитьФайлы(ФайлРезультата);
 | |
|     Исключение
 | |
|         Сообщить("Не удалось удалить временный файл после теста!");
 | |
|     КонецПопытки;
 | |
| 
 | |
|     Возврат Результат;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| #Область Проверки
 | |
| 
 | |
| Процедура Проверка_Пусто(Знач Результат) Экспорт
 | |
| 
 | |
|     Если Не нРег(Строка(Результат)) = "null" Тогда
 | |
|         ОжидаетЧто(ЗначениеЗаполнено(Результат)).Равно(Ложь);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Строка(Знач Результат, Знач ОбъектСравнения = "") Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Строка");
 | |
| 
 | |
|     Если ЗначениеЗаполнено(ОбъектСравнения) Тогда
 | |
|         ОжидаетЧто(Результат).Равно(ОбъектСравнения);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДвоичныеДанные(Знач Результат, Знач Размер = Неопределено) Экспорт
 | |
| 
 | |
|     МинимальныйРазмер = 500000;
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("ДвоичныеДанные");
 | |
| 
 | |
|     Если Не Размер = Неопределено Тогда
 | |
|         ОжидаетЧто(Результат.Размер() >= Размер).Равно(Истина);
 | |
|     Иначе
 | |
|         ОжидаетЧто(Результат.Размер() > МинимальныйРазмер).Равно(Истина);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Массив(Знач Результат, Знач Количество = Неопределено) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Массив");
 | |
| 
 | |
|     Если Не Количество = Неопределено Тогда
 | |
|        ОжидаетЧто(Результат).ИмеетДлину(Количество);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Соответствие(Знач Результат, Знач Заполненность = Истина) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
| 
 | |
|     Если Заполненность Тогда
 | |
|         ОжидаетЧто(Результат).Заполнено();
 | |
|     Иначе
 | |
|         ОжидаетЧто(ЗначениеЗаполнено(Результат)).Равно(Ложь);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Структура(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Структура").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Заполнено(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(ЗначениеЗаполнено(Результат)).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Истина(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмИстина(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмИнформацияБота(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["username"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмМассив(Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие") .Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмУстановкаВебхук(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["description"]).Равно("Webhook was set");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмУдалениеВебхук(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["description"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмСообщение(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["text"]).Равно(Текст);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмКартинка(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие") .Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["caption"]).Равно(Текст);
 | |
|     ОжидаетЧто(Результат["result"]["photo"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмВидео(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["caption"]).Равно(Текст);
 | |
|     ОжидаетЧто(Результат["result"]["video"]["mime_type"]).Равно("video/mp4");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмАудио(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["caption"]).Равно(Текст);
 | |
|     ОжидаетЧто(Результат["result"]["audio"]["mime_type"]).Равно("audio/mpeg");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмДокумент(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["caption"]).Равно(Текст);
 | |
|     ОжидаетЧто(Результат["result"]["document"]).ИмеетТип("Соответствие").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмГифка(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     Result_ = "result";
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат[Result_]["caption"]).Равно(Текст);
 | |
|     ОжидаетЧто(Результат[Result_]["document"]).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат[Result_]["animation"]["mime_type"]).Равно("video/mp4");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмМедиагруппа(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмМестоположение(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["location"]).ИмеетТип("Соответствие").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмКонтакт(Знач Результат, Знач Имя) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["contact"]).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["result"]["contact"]["first_name"]).Равно(Имя);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмОпрос(Знач Результат, Знач Вопрос) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["poll"]).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["result"]["poll"]["question"]).Равно(Вопрос);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмПереслать(Знач Результат, Знач IDСообщения) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["forward_origin"]["message_id"]).Равно(Число(IDСообщения));
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмБан(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["description"]).Равно("Bad Request: can't remove chat owner");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмПриглашение(Знач Результат, Знач Заголовок, Знач UnixИстечение) Экспорт
 | |
| 
 | |
|     Result_ = "result";
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат[Result_]["member_limit"]).Равно(200);
 | |
|     ОжидаетЧто(Результат[Result_]["name"]).Равно(Заголовок);
 | |
|     ОжидаетЧто(Результат[Result_]["expire_date"]).Равно(Число(UnixИстечение));
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмЧисло(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Число");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмОк(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТелеграмСозданиеТемы(Знач Результат, Знач Имя, Иконка) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["result"]["name"]).Равно(Имя);
 | |
|     ОжидаетЧто(Результат["result"]["icon_custom_emoji_id"]).Равно(Иконка);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКПост(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["post_id"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКИстина(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]).ИмеетТип("Число").Равно(1);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКЭлементы(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["items"]).ИмеетТип("Массив").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКАльбом(Знач Результат, Знач Описание) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["description"]).Равно(Описание);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВККартинкаАльбома(Знач Результат, Знач ОписаниеКартинки, Знач ИДАльбома = "") Экспорт
 | |
| 
 | |
|     Response = "response";
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат[Response][0]["text"]).Равно(ОписаниеКартинки);
 | |
| 
 | |
|     Если ЗначениеЗаполнено(ИДАльбома) Тогда
 | |
|         ОжидаетЧто(Результат[Response][0]["album_id"]).Равно(ИДАльбома);
 | |
|     Иначе
 | |
|         ОжидаетЧто(Результат[Response][0]["album_id"]).Заполнено();
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКИстория(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["count"]).ИмеетТип("Число").Равно(1);
 | |
|     ОжидаетЧто(Результат["response"]["items"]).ИмеетТип("Массив").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКОбсуждение(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКЛайк(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["likes"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКРепост(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["success"]).ИмеетТип("Число").Равно(1);
 | |
|     ОжидаетЧто(Результат["response"]["wall_repost_count"]).ИмеетТип("Число").Равно(1);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВККомментарий(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["comment_id"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКСтатистика(Знач Результат) Экспорт
 | |
| 
 | |
|     ТипСоответствие = "Соответствие";
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип(ТипСоответствие).Заполнено();
 | |
|     ОжидаетЧто(Результат["response"][0]["visitors"]).ИмеетТип(ТипСоответствие).Заполнено();
 | |
|     ОжидаетЧто(Результат["response"][0]["reach"]).ИмеетТип(ТипСоответствие).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКСтатистикаПостов(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Массив").ИмеетДлину(2);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКЧисло(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКПодборка(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]["albums_count"]).ИмеетТип("Число").Заполнено();
 | |
|     ОжидаетЧто(Результат["response"]["market_album_id"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТовар(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]["market_item_id"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКСвойство(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]["property_id"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКВариантСвойства(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]["variant_id"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКИНформацияОТоварах(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]["items"]).ИмеетТип("Массив").ИмеетДлину(2);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКГруппаТоваров(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]["item_group_id"]).ИмеетТип("Число").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКВидео(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["video_id"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["video_hash"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВККатегории(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["response"]["v2"]).ИмеетТип("Массив").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯДискДиск(Знач Результат) Экспорт
 | |
| 
 | |
|     Соответствие_ = "Соответствие";
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип(Соответствие_).Заполнено();
 | |
|     ОжидаетЧто(Результат["system_folders"]).ИмеетТип(Соответствие_);
 | |
|     ОжидаетЧто(Результат["user"]).ИмеетТип(Соответствие_);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯДискКаталог(Знач Результат, Знач Путь) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["type"]).Равно("dir");
 | |
|     ОжидаетЧто(Результат["path"]).Равно("disk:" + Путь);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯДискПуть(Знач Результат, Знач Путь = "", Знач Публичный = Неопределено) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["type"]).Равно("file");
 | |
| 
 | |
|     Если ЗначениеЗаполнено(Путь) Тогда
 | |
|         ОжидаетЧто(Результат["path"]).Равно("disk:" + Путь);
 | |
|     Иначе
 | |
|         ОжидаетЧто(Результат["path"]).Заполнено();
 | |
|     КонецЕсли;
 | |
| 
 | |
|     Если Не Публичный = Неопределено Тогда
 | |
| 
 | |
|         Если Публичный Тогда
 | |
|              ОжидаетЧто(Результат["public_url"]).ИмеетТип("Строка").Заполнено();
 | |
|         Иначе
 | |
|             ОжидаетЧто(Результат["public_url"]).ИмеетТип("Неопределено");
 | |
|         КонецЕсли;
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯДискСсылка(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["method"]).Равно("GET");
 | |
|     ОжидаетЧто(Результат["href"]).ИмеетТип("Строка").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯДискПроцедура(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["href"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["method"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯДискСписокФайлов(Знач Результат, Знач Количество, Знач Отступ) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["limit"]).Равно(Количество);
 | |
|     ОжидаетЧто(Результат["offset"]).Равно(Отступ);
 | |
|     ОжидаетЧто(Результат["items"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГКОбъект(Знач Результат, Знач Наименование, Знач Описание) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["summary"]).Равно(Наименование);
 | |
|     ОжидаетЧто(Результат["description"]).Равно(Описание);
 | |
|     ОжидаетЧто(Результат["id"]).ИмеетТип("Строка").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТвиттерТекст(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     ТекстОтвета = Результат["data"]["text"];
 | |
|     ТекстОтвета = Лев(ТекстОтвета, СтрДлина(Текст));
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(ТекстОтвета).Равно(Текст);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВайберОк(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["status_message"]).Равно("ok");
 | |
|     ОжидаетЧто(Результат["status"]).Равно(0);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВайберПользователь(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["chat_hostname"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["status_message"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВайберОнлайн(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["status_message"]).Равно("ok");
 | |
|     ОжидаетЧто(Результат["status"]).Равно(0);
 | |
|     ОжидаетЧто(Результат["users"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВайберСообщение(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["message_token"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["status_message"]).Равно("ok");
 | |
|     ОжидаетЧто(Результат["status"]).Равно(0);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглТокен(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["access_token"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглКалендарь(Знач Результат, Знач Наименование) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["summary"]).Равно(Наименование);
 | |
|     ОжидаетЧто(Результат["id"]).ИмеетТип("Строка").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглЦветКалендаря(Знач Результат, Знач ОсновнойЦвет, Знач ДополнительныйЦвет) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["foregroundColor"]).Равно(ОсновнойЦвет);
 | |
|     ОжидаетЧто(Результат["backgroundColor"]).Равно(ДополнительныйЦвет);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглКаталоги(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["mimeType"]).Равно("application/vnd.google-apps.folder");
 | |
|     ОжидаетЧто(Результат["name"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглКаталог(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["mimeType"]).Равно("application/vnd.google-apps.folder");
 | |
|     ОжидаетЧто(Результат["name"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглОбъект(Знач Результат, Знач Описание) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["mimeType"]).Равно(Описание["MIME"]);
 | |
|     ОжидаетЧто(Результат["name"]).Равно(Описание["Имя"]);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглКомментарий(Знач Результат, Знач Комментарий) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["content"]).Равно(Комментарий);
 | |
|     ОжидаетЧто(Результат["kind"]).Равно("drive#comment");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглКнига(Знач Результат, Знач Наименование, Знач МассивЛистов = "") Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["properties"]["title"]).Равно(Наименование);
 | |
| 
 | |
|     Если ЗначениеЗаполнено(МассивЛистов) Тогда
 | |
| 
 | |
|         Для Н = 0 По МассивЛистов.ВГраница() Цикл
 | |
| 
 | |
|             ИмяЛиста = Результат["sheets"][Н]["properties"]["title"];
 | |
|             ОжидаетЧто(ИмяЛиста).Равно(МассивЛистов[Н]);
 | |
| 
 | |
|         КонецЦикла;
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглЛист(Знач Результат, Знач Книга = "") Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["title"]).Заполнено();
 | |
| 
 | |
|     Если ЗначениеЗаполнено(Книга) Тогда
 | |
| 
 | |
|         ОжидаетЧто(Результат["spreadsheetId"]).Равно(Книга);
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглЭлементКниги(Знач Результат, Знач Книга) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["spreadsheetId"]).Равно(Книга);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглИмяТаблицы(Знач Результат, Знач Наименование) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["properties"]["title"]).Равно(Наименование);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглОбновлениеЯчеек(Знач Результат, Знач Количество) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["totalUpdatedCells"]).Равно(Количество);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглЗначенияЯчеек(Знач Результат, Знач Количество) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["valueRanges"].Количество()).Равно(Количество);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ГуглОчисткаЯчеек(Знач Результат, Знач Количество) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["clearedRanges"].Количество()).Равно(Количество);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ТвиттерТокен(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["access_token"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["refresh_token"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_НоушнОбъект(Знач Результат, Знач Вид = "page") Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["object"]).Равно(Вид);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_НоушнСтраницаБазы(Знач Результат, Знач База) Экспорт
 | |
| 
 | |
|     Проверка_НоушнОбъект(Результат);
 | |
| 
 | |
|     Родитель = Результат["parent"]["database_id"];
 | |
|     ОжидаетЧто(Родитель).Равно(База);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакОк(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакБот(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["bot_id"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["user_id"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакПользователи(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["members"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакОбласти(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["teams"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакСообщение(Знач Результат, Знач Текст, Знач Канал) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["channel"]).Равно(Канал);
 | |
|     ОжидаетЧто(Результат["ts"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["message"]["text"]).Равно(Текст);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакСообщения(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["messages"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакСсылкаСообщения(Знач Результат, Знач Канал) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["channel"]).Равно(Канал);
 | |
|     ОжидаетЧто(Результат["permalink"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакОтложенноеСообщение(Знач Результат, Знач Канал) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["channel"]).Равно(Канал);
 | |
|     ОжидаетЧто(Результат["scheduled_message_id"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакЭфемерное(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["message_ts"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакОтложенные(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["scheduled_messages"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакКанал(Знач Результат, Знач Имя = "") Экспорт
 | |
| 
 | |
|     Данные = Результат["channel"];
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
| 
 | |
|     Если ЗначениеЗаполнено(Имя) Тогда
 | |
|         ОжидаетЧто(Данные["name"]).Равно(Имя);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакТемаКанала(Знач Результат, Знач Тема) Экспорт
 | |
| 
 | |
|     Данные = Результат["channel"];
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Данные["topic"]["value"]).Равно(Тема);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакИсторияКанала(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["messages"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакПользователиКанала(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["members"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакСписокКаналов(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["channels"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакДиалог(Знач Результат) Экспорт
 | |
| 
 | |
|     Диалог = Результат["channel"]["id"];
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["channel"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Диалог).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакСписокФайлов(Знач Результат) Экспорт
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(Результат["files"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакФайл(Знач Результат, Знач ИмяФайла) Экспорт
 | |
| 
 | |
|     Если ЗначениеЗаполнено(Результат["files"]) Тогда
 | |
|         ЗагруженныйФайл = Результат["files"][0];
 | |
|     Иначе
 | |
|         ЗагруженныйФайл = Результат["file"];
 | |
|     КонецЕсли;
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(ЗагруженныйФайл["name"]).Равно(ИмяФайла);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СлакВнешнийФайл(Знач Результат, Знач Заголовок) Экспорт
 | |
| 
 | |
|     ЗагруженныйФайл = Результат["file"];
 | |
| 
 | |
|     Проверка_СлакОк(Результат);
 | |
|     ОжидаетЧто(ЗагруженныйФайл["title"]).Равно(Заголовок);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТБазаСТаблицей(Знач Результат, Знач ИмяТаблицы) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["id"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["tables"][0]["name"]).Равно(ИмяТаблицы);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТСписокТаблиц(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["tables"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["tables"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТСписокБаз(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["bases"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["bases"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТТаблица(Знач Результат, Знач Наименование, Знач Описание) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["name"]).Равно(Наименование);
 | |
|     ОжидаетЧто(Результат["description"]).Равно(Описание);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТПоле(Знач Результат, Знач Имя) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["name"]).Равно(Имя);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТЗаписи(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["records"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["records"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТЗаписьНомерСтрока(Знач Результат, Знач Числовой, Знач Строчный) Экспорт
 | |
| 
 | |
|     ОдиночнаяЗапись = Результат["id"];
 | |
|     ОжидаетЧто(ОдиночнаяЗапись).Заполнено();
 | |
|     ОжидаетЧто(Результат["createdTime"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["fields"]["Номер"]).Равно(Числовой);
 | |
|     ОжидаетЧто(СокрЛП(Результат["fields"]["Строковое"])).Равно(Строчный);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТЗапись(Знач Результат, Знач Запись) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["id"]).Равно(Запись);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТТекст(Знач Результат, Знач Текст) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["text"]).Равно(Текст);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТКомментарии(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["comments"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_АТУдалениеКомментария(Знач Результат, Знач Комментарий) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["deleted"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["id"]).Равно(Комментарий);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропБоксФайл(Знач Результат, Знач Путь) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["path_display"]).Равно(Путь);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропБоксМетаданные(Знач Результат, Знач Путь) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["metadata"]["path_display"]).Равно(Путь);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропБоксМассив(Знач Результат, Знач Количество = Неопределено) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["entries"]).ИмеетТип("Массив");
 | |
| 
 | |
|     Если Не Количество = Неопределено Тогда
 | |
|         ОжидаетЧто(Результат["entries"].Количество()).Равно(Количество);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропБоксРабота(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["async_job_id"]).Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропБоксСтатус(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат[".tag"]).Равно("complete");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропБоксТеги(Знач Результат, Знач Количество) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["paths_to_tags"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["paths_to_tags"].Количество()).Равно(Количество);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропбоксАккаунт(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["account_id"]).Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропбоксПространство(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["used"]).Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропбоксУчастник(Знач Результат, Знач Почта, Знач ТолькоПросмотр) Экспорт
 | |
|     ОжидаетЧто(Результат[0]["result"][".tag"]).Равно("success");
 | |
|     ОжидаетЧто(Результат[0]["member"]["email"]).Равно(Почта);
 | |
|     ОжидаетЧто(
 | |
|         Результат[0]["result"]["success"][".tag"]).Равно(?(ТолькоПросмотр, "viewer", "editor"));
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ДропбоксПубличнаяПапка(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["shared_folder_id"]).Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксВремя(Знач Результат) Экспорт
 | |
| 
 | |
|     Время = Результат["result"];
 | |
| 
 | |
|     Если Не ТипЗнч(Время) = Тип("Дата") Тогда
 | |
|        Время = XMLЗначение(Тип("Дата"), Время);
 | |
|     КонецЕсли;
 | |
| 
 | |
|     ОжидаетЧто(Время).ИмеетТип("Дата").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксАвторизация(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["access_token"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["refresh_token"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксЧисло(Знач Результат) Экспорт
 | |
|    ОжидаетЧто(Результат["result"]).ИмеетТип("Число").Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксИстина(Знач Результат) Экспорт
 | |
|    ОжидаетЧто(Результат["result"]).ИмеетТип("Булево").Равно(Истина);
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксБулево(Знач Результат) Экспорт
 | |
|    ОжидаетЧто(Результат["result"]).ИмеетТип("Булево");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСтрока(Знач Результат) Экспорт
 | |
|    ОжидаетЧто(Результат["result"]).ИмеетТип("Строка").Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксМассив(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСоответствие(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСписок(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]["list"]).ИмеетТип("Массив");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксМассивОбъектов(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"][0]["ID"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксПоля(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["fields"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксЗадача(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["task"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСписокЗадач(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]["tasks"]).ИмеетТип("Массив");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксХранилища(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["total"]).Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксОбъект(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["ID"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксЛид(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["PHONE"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["result"]["NAME"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСделка(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["ID"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["result"]["BEGINDATE"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксВложение(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["attachmentId"]).Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксДоступныеДействия(Знач Результат, Знач Количество) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
| 
 | |
|     Действия = Результат["result"]["allowedActions"];
 | |
|     ОжидаетЧто(Действия).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Действия.Количество()).Равно(Количество);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксКомментарий(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["POST_MESSAGE"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксРезультат(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["text"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксНеопределено(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Неопределено");
 | |
|     ОжидаетЧто(Результат["time"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСписокКомментариев(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"][0]["POST_MESSAGE"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСписокРезультатов(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"][0]["text"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСообщения(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["messages"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксДиалог(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["dialogId"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксСообщение(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["id"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксФайлСообщение(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["MESSAGE_ID"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксУчетВремени(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["STATUS"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_БитриксНастройкиУчетаВремени(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["result"]["UF_TIMEMAN"]).ИмеетТип("Булево");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТПользователь(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["userId"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТСобытия(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["events"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТСообщение(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["msgId"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТИстина(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТФайл(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["ok"]).Равно(Истина);
 | |
|     ОжидаетЧто(Результат["type"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["size"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТСписок(Знач Результат, Знач ИмяПоля) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат[ИмяПоля]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТЧат(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["type"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["inviteLink"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ВКТЗаявки(Знач Результат) Экспорт
 | |
| 
 | |
|     Если Не Результат["ok"] Тогда
 | |
|         ОжидаетЧто(Результат["description"]).Равно("User is not pending or nobody in pending list");
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонСписокКатегорий(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"][0]["category_name"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонСписокХарактеристик(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"][0]["description"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["result"][0]["id"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонСписокЗначенийХарактеристики(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"][0]["value"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["result"][0]["id"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонЗаданиеЗагрузки(Знач Результат, Знач Вложенный = Истина) Экспорт
 | |
| 
 | |
|     Если Вложенный Тогда
 | |
|         IDЗадачи = Результат["result"]["task_id"];
 | |
|     Иначе
 | |
|         IDЗадачи = Результат["task_id"];
 | |
|     КонецЕсли;
 | |
| 
 | |
|     ОжидаетЧто(IDЗадачи).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонНовыеТовары(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["items"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"]["items"][0]["status"]).Равно("imported");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонМассивОбъектов(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["items"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонМассивОбновлено(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"][0]["updated"]).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонМассивРейтингов(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["products"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонТовар(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["id"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["result"]["name"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонТовары(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["items"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["result"]["items"][0]["name"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["result"]["items"][0]["id"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонЛимиты(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["daily_create"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["daily_update"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонКартинки(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["pictures"]).ИмеетТип("Массив").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонБезОшибок(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["errors"].Количество()).Равно(0);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонИстина(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонМассив(Знач Результат, Знач Поле = "result") Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат[Поле]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонУдалениеТовара(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["status"][0]["is_deleted"]).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонДобавлениеКодов(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["status"]).Равно("imported");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонПодписчики(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"][0]["count"]).ИмеетТип("Число");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонSKU(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["items"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["items"][0]["availability"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонЧерновик(Знач Результат) Экспорт
 | |
| 
 | |
|      ОжидаетЧто(Результат["operation_id"]).ИмеетТип("Строка").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонПоиск(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["search"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонКластеры(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["clusters"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонГотовыйЧерновик(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["status"]).Равно("CALCULATION_STATUS_SUCCESS");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ОзонТаймслоты(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["drop_off_warehouse_timeslots"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_НСУспех(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).Равно("success");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_НСФайлыКаталога(Знач Результат, Знач Количество) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]).Равно("success");
 | |
|     ОжидаетЧто(Результат["files"].Количество()).Равно(Количество);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_НССинхронизация(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["errors"]).Равно(0);
 | |
|     ОжидаетЧто(Результат["items"].Количество()).Равно(0);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СдэкТокен(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["access_token"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["expires_in"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["token_type"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СдэкЗаказ(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["entity"]["uuid"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["requests"]).ИмеетТип("Массив").Заполнено();
 | |
| 
 | |
|     Статус = Результат["requests"][0]["state"];
 | |
| 
 | |
|     ОжидаетЧто(Статус = "ACCEPTED" Или Статус = "SUCCESSFUL").Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СдэкКвитанция(Знач Результат) Экспорт
 | |
| 
 | |
|     URL = Результат["entity"]["url"];
 | |
| 
 | |
|     ОжидаетЧто(URL).Заполнено();
 | |
|     ОжидаетЧто(СтрЗаканчиваетсяНа(URL, ".pdf")).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СдэкДанныеЗаказа(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["entity"]["uuid"]).Заполнено();
 | |
|     ОжидаетЧто(Результат["entity"]["number"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СдэкИнтервалыДоставки(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["date_intervals"]).ИмеетТип("Массив");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СдэкПаспорт(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["orders"][0]["passport"][0]["client"]).Равно("SENDER");
 | |
|     ОжидаетЧто(Результат["orders"][0]["passport"][1]["client"]).Равно("RECEIVER");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_СдэкЧек(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["check_info"]).ИмеетТип("Массив");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯМаркетМагазины(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["campaigns"]).ИмеетТип("Массив");
 | |
|     ОжидаетЧто(Результат["pager"]).ИмеетТип("Соответствие").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯМаркетМагазин(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["campaign"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["campaign"]["id"]).Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯМаркетКабинет(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["result"]["settings"]).ИмеетТип("Соответствие").Заполнено();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_ЯМаркетОк(Знач Результат) Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["status"]).Равно("OK");
 | |
|     ОжидаетЧто(Результат["results"]).Равно(Неопределено);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_МетрикаМетки(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["labels"]).ИмеетТип("Массив");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_МетрикаМетка(Знач Результат, Знач Наименование = "") Экспорт
 | |
| 
 | |
|     ОжидаетЧто(Результат["label"]).ИмеетТип("Соответствие");
 | |
|     ОжидаетЧто(Результат["label"]["id"]).Заполнено();
 | |
| 
 | |
|     Если ЗначениеЗаполнено(Наименование) Тогда
 | |
|         ОжидаетЧто(Результат["label"]["name"]).Равно(Наименование);
 | |
|     КонецЕсли;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_МетрикаУспех(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["success"]).Равно(Истина);
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_МетрикаСчетчик(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["counter"]).ИмеетТип("Соответствие").Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_МетрикаСчетчики(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["counters"]).ИмеетТип("Массив").Заполнено();
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_МетрикаОперации(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["operations"]).ИмеетТип("Массив");
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_S3Успех(Знач Результат) Экспорт
 | |
| 
 | |
|     Успех = Результат["status"] >= 200 И Результат["status"] < 300;
 | |
|     ОжидаетЧто(Успех).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_S3НеНайдено(Знач Результат) Экспорт
 | |
| 
 | |
|     НеНайдено = Результат["status"] = 404;
 | |
|     ОжидаетЧто(НеНайдено).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_S3НеПоддерживается(Знач Результат) Экспорт
 | |
| 
 | |
|     Успех = Результат["status"] = 501;
 | |
|     ОжидаетЧто(Успех).Равно(Истина);
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Компонента(Знач Результат, Знач ИмяТипа) Экспорт
 | |
|     ОжидаетЧто(Строка(ТипЗнч(Результат))).Равно(ИмяТипа);
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_Равенство(Знач Значение1, Знач Значение2) Экспорт
 | |
|     ОжидаетЧто(Значение1).Равно(Значение2);
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_SQLiteУспех(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]).Равно(Истина);
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_SQLiteОшибка(Знач Результат) Экспорт
 | |
|     ОжидаетЧто(Результат["result"]).Равно(Ложь);
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_SQLiteСтроки(Знач Результат, Знач Количество) Экспорт
 | |
|     ОжидаетЧто(Результат["rows"]).Равно(Количество);
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура Проверка_SQLiteЗначенияПолей(Знач Результат, Знач СтруктураЗначений) Экспорт
 | |
| 
 | |
|     Для Каждого Значение Из СтруктураЗначений Цикл
 | |
|         Результат[Значение.Ключ] = Значение.Значение;
 | |
|     КонецЦикла;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| #КонецОбласти
 | |
| 
 | |
| #КонецОбласти
 | |
| 
 | |
| #Область СлужебныеПроцедурыИФункции
 | |
| 
 | |
| Функция ПолучитьЗначениеИзФайла(Параметр, Путь)
 | |
| 
 | |
|     Значения = OPI_Инструменты.ПрочитатьJSONФайл(Путь);
 | |
|     Возврат ?(Значения.Свойство(Параметр), Значения[Параметр], "");
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ПутьКФайлуДанных()
 | |
| 
 | |
|     Путь          = "";
 | |
|     ВозможныеПути = Новый Массив;
 | |
|     ВозможныеПути.Добавить("./data.json");
 | |
|     ВозможныеПути.Добавить("C:\GDrive\Мой диск\data.json");
 | |
| 
 | |
|     Для Каждого ВозможныйПуть Из ВозможныеПути Цикл
 | |
| 
 | |
|         ФайлРепозитория = Новый Файл(ВозможныйПуть);
 | |
| 
 | |
|         Если ФайлРепозитория.Существует() Тогда
 | |
|             Путь = ВозможныйПуть;
 | |
|             Прервать;
 | |
|         КонецЕсли;
 | |
| 
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Возврат Путь;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ПолучитьОбщийМодуль(Знач Имя)
 | |
| 
 | |
|     Модуль = Вычислить(Имя);
 | |
| 
 | |
|     Возврат Модуль;
 | |
| КонецФункции
 | |
| 
 | |
| // BSLLS:CognitiveComplexity-off
 | |
| 
 | |
| Функция ПолучитьЗначениеДляCLI(Знач Значение, Знач Вложенный = Ложь)
 | |
| 
 | |
|     ТекущийТип = ТипЗнч(Значение);
 | |
| 
 | |
|     Если ТекущийТип = Тип("Число") Тогда
 | |
| 
 | |
|         Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
 | |
| 
 | |
|     ИначеЕсли ТекущийТип = Тип("Строка") Тогда
 | |
| 
 | |
|         Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
 | |
| 
 | |
|         Если Не Вложенный Тогда
 | |
|             Значение = """" + Значение + """";
 | |
|         КонецЕсли;
 | |
| 
 | |
|     ИначеЕсли ТекущийТип = Тип("Дата") Тогда
 | |
| 
 | |
|         Значение = """" + XMLСтрока(Значение) + """";
 | |
| 
 | |
|     ИначеЕсли ТекущийТип = Тип("Структура")
 | |
|         Или ТекущийТип = Тип("Соответствие")
 | |
|         Или ТекущийТип = Тип("Массив") Тогда
 | |
| 
 | |
|         ЗаписьJSON = Новый ЗаписьJSON();
 | |
| 
 | |
|         Если OPI_Инструменты.ЭтоOneScript() Или ТекущийТип = Тип("Массив") Тогда
 | |
| 
 | |
|             ПараметрыЗаписи = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет, , Ложь);
 | |
|             ЗаписьJSON.УстановитьСтроку(ПараметрыЗаписи);
 | |
|             ЗаписатьJSON(ЗаписьJSON, Значение);
 | |
|             Значение        = """" + ЗаписьJSON.Закрыть() + """";
 | |
| 
 | |
|         Иначе
 | |
| 
 | |
|             // BSLLS:MissingTemporaryFileDeletion-off
 | |
| 
 | |
|             //@skip-check missing-temporary-file-deletion
 | |
|             ИВТ   = ПолучитьИмяВременногоФайла("json");
 | |
|             // BSLLS:MissingTemporaryFileDeletion-on
 | |
| 
 | |
|             Поток = Новый ФайловыйПоток(ИВТ, РежимОткрытияФайла.Создать);
 | |
| 
 | |
|             ЗаписьJSON.ОткрытьПоток(Поток);
 | |
|             ЗаписатьJSON(ЗаписьJSON, Значение);
 | |
|             ЗаписьJSON.Закрыть();
 | |
|             Поток.Закрыть();
 | |
| 
 | |
|             Значение = ИВТ;
 | |
| 
 | |
|         КонецЕсли;
 | |
| 
 | |
|     ИначеЕсли ТекущийТип = Тип("Булево") Тогда
 | |
| 
 | |
|         Значение = ?(Значение, "true", "false");
 | |
| 
 | |
|     ИначеЕсли ТекущийТип = Тип("ДвоичныеДанные") Тогда
 | |
| 
 | |
|         // BSLLS:MissingTemporaryFileDeletion-off
 | |
| 
 | |
|         //@skip-check missing-temporary-file-deletion
 | |
|         ИВФ = ПолучитьИмяВременногоФайла();
 | |
|         Значение.Записать(ИВФ);
 | |
|         Значение = """" + ИВФ + """";
 | |
| 
 | |
|         // BSLLS:MissingTemporaryFileDeletion-on
 | |
| 
 | |
|     Иначе
 | |
| 
 | |
|         ВызватьИсключение "Неподдерживаемый тип " + Строка(ТекущийТип);
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
|     Возврат Значение;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| // BSLLS:CognitiveComplexity-on
 | |
| 
 | |
| Функция ОформитьОпцию(Знач Значение, Знач Имя, Знач Вложенный = Ложь)
 | |
| 
 | |
|     МассивСекретов = Новый Массив();
 | |
|     МассивСекретов.Добавить("token");
 | |
|     МассивСекретов.Добавить("key");
 | |
|     МассивСекретов.Добавить("secret");
 | |
|     МассивСекретов.Добавить("pass");
 | |
|     МассивСекретов.Добавить("client");
 | |
|     МассивСекретов.Добавить("api");
 | |
|     МассивСекретов.Добавить("refresh");
 | |
| 
 | |
|     СтруктураЗамен = Новый Структура;
 | |
| 
 | |
|     Если ТипЗнч(Значение) = Тип("Структура") Или ТипЗнч(Значение) = Тип("Соответствие") Тогда
 | |
| 
 | |
|         Значение = ОформитьОпциюКоллекцию(Значение);
 | |
| 
 | |
|     ИначеЕсли ТипЗнч(Значение) = Тип("Массив") Тогда
 | |
| 
 | |
|         Значение = ОформитьОпциюМассив(Значение, Имя);
 | |
| 
 | |
|     Иначе
 | |
| 
 | |
|         Для Каждого СекретныйКлюч Из МассивСекретов Цикл
 | |
| 
 | |
|             Если СтрНайти(нРег(Имя), СекретныйКлюч) <> 0 Тогда
 | |
|                 Значение = "***";
 | |
|             КонецЕсли;
 | |
| 
 | |
|         КонецЦикла;
 | |
| 
 | |
|         Для Каждого ЗаменяемыйКлюч Из СтруктураЗамен Цикл
 | |
| 
 | |
|             Если нРег(Имя) = ЗаменяемыйКлюч.Ключ Тогда
 | |
|                 Значение = ЗаменяемыйКлюч.Значение;
 | |
|             КонецЕсли;
 | |
| 
 | |
|         КонецЦикла;
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
|     Если Не Вложенный Тогда
 | |
|         Значение = "--" + Имя + " " + ПолучитьЗначениеДляCLI(Значение);
 | |
|     КонецЕсли;
 | |
| 
 | |
|     Возврат Значение;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ОформитьОпциюКоллекцию(Знач Значение)
 | |
| 
 | |
|     Значение_ = ?(ТипЗнч(Значение) = Тип("Структура"), Новый Структура, Новый Соответствие);
 | |
| 
 | |
|     Для Каждого Элемент Из Значение Цикл
 | |
| 
 | |
|         Значение_.Вставить(Элемент.Ключ, ОформитьОпцию(Элемент.Значение, Элемент.Ключ, Истина));
 | |
| 
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Возврат Значение_;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Функция ОформитьОпциюМассив(Знач Значение, Знач Имя)
 | |
| 
 | |
|     Значение_ = Новый Массив;
 | |
| 
 | |
|     Для Каждого Элемент Из Значение Цикл
 | |
|         Значение_.Добавить(ОформитьОпцию(Элемент, Имя, Истина));
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Возврат Значение_;
 | |
| 
 | |
| КонецФункции
 | |
| 
 | |
| Процедура НовыйТест(ТаблицаЗначений, Знач Метод, Знач Синоним, Знач Раздел)
 | |
| 
 | |
|     НовыйТест         = ТаблицаЗначений.Добавить();
 | |
|     НовыйТест.Метод   = Метод;
 | |
|     НовыйТест.Синоним = Синоним;
 | |
|     НовыйТест.Раздел  = Раздел;
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура ЗаписатьПараметрВФайл(Знач Параметр, Знач Значение, Знач Путь)
 | |
| 
 | |
|     Значения = OPI_Инструменты.ПрочитатьJSONФайл(Путь);
 | |
|     Значения.Вставить(Параметр, Значение);
 | |
| 
 | |
|     Запись              = Новый ЗаписьJSON;
 | |
|     ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Авто, Символы.Таб);
 | |
|     Запись.ОткрытьФайл(Путь, , , ПараметрыЗаписиJSON);
 | |
|     ЗаписатьJSON(Запись, Значения);
 | |
|     Запись.Закрыть();
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| Процедура ЗаписатьВызовCLI(Знач Библиотека, Знач Метод, Знач Опции)
 | |
| 
 | |
|     Если Не OPI_Инструменты.ЭтоOneScript() Тогда
 | |
|         Возврат;
 | |
|     КонецЕсли;
 | |
| 
 | |
|     КаталогПримеров = "./docs/ru/cli/NEW_CLI/" + Библиотека;
 | |
|     ФайлПримеров    = Новый Файл(КаталогПримеров);
 | |
| 
 | |
|     Если Не ФайлПримеров.Существует() Тогда
 | |
|         СоздатьКаталог(КаталогПримеров);
 | |
|     КонецЕсли;
 | |
| 
 | |
|     КаталогМетода = КаталогПримеров + "/" + Метод;
 | |
|     ФайлМетода    = Новый Файл(КаталогМетода);
 | |
| 
 | |
|     Если Не ФайлМетода.Существует() Тогда
 | |
|         СоздатьКаталог(КаталогМетода);
 | |
|     КонецЕсли;
 | |
| 
 | |
|     МассивОпций = Новый Массив;
 | |
|     ЕстьJSON    = Ложь;
 | |
| 
 | |
|     Для Каждого Опция Из Опции Цикл
 | |
| 
 | |
|         Если ТипЗнч(Опция.Значение) = Тип("Структура")
 | |
|             Или ТипЗнч(Опция.Значение) = Тип("Соответствие") Тогда
 | |
| 
 | |
|                 ЕстьJSON = Истина;
 | |
| 
 | |
|         КонецЕсли;
 | |
| 
 | |
|         ТекущаяОпция = ОформитьОпцию(Опция.Значение, Опция.Ключ);
 | |
|         МассивОпций.Добавить(ТекущаяОпция);
 | |
| 
 | |
|     КонецЦикла;
 | |
| 
 | |
|     Начало = "oint ";
 | |
| 
 | |
|     Если ЕстьJSON Тогда
 | |
| 
 | |
|         Информация = "JSON данные также могут быть переданы как путь к файлу .json";
 | |
| 
 | |
|         НачалоBat  = ":: " + Информация + Символы.ПС + Символы.ПС + Начало;
 | |
|         НачалоBash = "# " + Информация + Символы.ПС + Символы.ПС + Начало;
 | |
| 
 | |
|     Иначе
 | |
| 
 | |
|         НачалоBat  = Начало;
 | |
|         НачалоBash = Начало;
 | |
| 
 | |
|     КонецЕсли;
 | |
| 
 | |
|     РазделительBat  = " ^" + Символы.ПС + "  ";
 | |
|     РазделительBash = " \" + Символы.ПС + "  ";
 | |
| 
 | |
|     СтрокаBat  = НачалоBat + Библиотека + " " + Метод + РазделительBat + СтрСоединить(МассивОпций, РазделительBat);
 | |
|     СтрокаBash = НачалоBash + Библиотека + " " + Метод + РазделительBash + СтрСоединить(МассивОпций, РазделительBash);
 | |
| 
 | |
|     ПолучитьДвоичныеДанныеИзСтроки(СтрокаBat).Записать(КаталогМетода + "/bat.txt");
 | |
|     ПолучитьДвоичныеДанныеИзСтроки(СтрокаBash).Записать(КаталогМетода + "/bash.txt");
 | |
| 
 | |
| КонецПроцедуры
 | |
| 
 | |
| #КонецОбласти
 |