diff --git a/fixtures/demo-configuration/src/CommonModules/ПодпискиНаСобытия/Module.bsl b/fixtures/demo-configuration/src/CommonModules/ПодпискиНаСобытия/Module.bsl new file mode 100644 index 00000000..0a2b6235 --- /dev/null +++ b/fixtures/demo-configuration/src/CommonModules/ПодпискиНаСобытия/Module.bsl @@ -0,0 +1,8 @@ + +#Область СлужебныйПрограммныйИнтерфейс + +Процедура ПередЗаписьюСправочникаПередЗаписью(Источник, Отказ) Экспорт + //Выполнение действий +КонецПроцедуры + +#КонецОбласти diff --git a/fixtures/demo-configuration/src/CommonModules/ПодпискиНаСобытия/ПодпискиНаСобытия.mdo b/fixtures/demo-configuration/src/CommonModules/ПодпискиНаСобытия/ПодпискиНаСобытия.mdo new file mode 100644 index 00000000..381b37b4 --- /dev/null +++ b/fixtures/demo-configuration/src/CommonModules/ПодпискиНаСобытия/ПодпискиНаСобытия.mdo @@ -0,0 +1,11 @@ + + + ПодпискиНаСобытия + + ru + Подписки на события + + true + true + true + diff --git a/fixtures/demo-configuration/src/Configuration/Configuration.mdo b/fixtures/demo-configuration/src/Configuration/Configuration.mdo index f6eaab09..a8282415 100644 --- a/fixtures/demo-configuration/src/Configuration/Configuration.mdo +++ b/fixtures/demo-configuration/src/Configuration/Configuration.mdo @@ -147,11 +147,13 @@ CommonModule.СервисныеМеханизмы CommonModule.УведомленияКлиент CommonModule.УведомленияСервер + CommonModule.ПодпискиНаСобытия ExchangePlan.Мобильные XDTOPackage.ОбменСМобильнымУстройством WebService.MAExchange HTTPService.ОписанияТоваров HTTPService.Товары + EventSubscription.ПередЗаписьюСправочника ScheduledJob.ОбновлениеАгрегатовПродаж ScheduledJob.ОбновлениеИндексаППД ScheduledJob.ОбновлениеИсторииДанных diff --git a/fixtures/demo-configuration/src/EventSubscriptions/ПередЗаписьюСправочника/ПередЗаписьюСправочника.mdo b/fixtures/demo-configuration/src/EventSubscriptions/ПередЗаписьюСправочника/ПередЗаписьюСправочника.mdo new file mode 100644 index 00000000..b560ff88 --- /dev/null +++ b/fixtures/demo-configuration/src/EventSubscriptions/ПередЗаписьюСправочника/ПередЗаписьюСправочника.mdo @@ -0,0 +1,13 @@ + + + ПередЗаписьюСправочника + + ru + Перед записью справочника + + + CatalogObject.Товары + + BeforeWrite + CommonModule.ПодпискиНаСобытия.ПередЗаписьюСправочникаПередЗаписью + diff --git a/tests/src/CommonModules/ОМ_ЮТТестовыеДанные/Module.bsl b/tests/src/CommonModules/ОМ_ЮТТестовыеДанные/Module.bsl index 02629a79..ac9fb323 100644 --- a/tests/src/CommonModules/ОМ_ЮТТестовыеДанные/Module.bsl +++ b/tests/src/CommonModules/ОМ_ЮТТестовыеДанные/Module.bsl @@ -26,6 +26,7 @@ .ДобавитьТест("Удалить") .ДобавитьТест("ВариантыПараметров") .ДобавитьТест("СоздатьГруппу") + //.ДобавитьСерверныйТест("СоздатьГруппуСПередачейПараметров") .ДобавитьТест("ЗагрузитьИзМакета_ТабличныйДокумент") .ДобавитьТест("ЗагрузитьИзМакета_MarkDown") .ДобавитьТест("ЗагрузитьИзМакета_ЧастичнаяЗагрузкаДанных") @@ -95,6 +96,44 @@ КонецПроцедуры +#Если Сервер Тогда + +Процедура СоздатьГруппуСПередачейПараметров() Экспорт + + СлучайноеСвойство = ЮТест.Данные().СлучайнаяСтрока(); + СлучайноеЗначение = Новый УникальныйИдентификатор(); + ТекстИсключения = "Проверка прошла успешна"; + + ЛюбойПараметр = Мокито.ЛюбойПараметр(); + УсловиеПредикат = ЮТест.Предикат() + .ИмеетТип("СправочникОбъект.Товары") + .Реквизит("ОбменДанными.Загрузка").Равно(Истина) + .Реквизит("ДополнительныеСвойства." + СлучайноеСвойство).Равно(СлучайноеЗначение) + .Получить(); + + Мокито.Обучение(ПодпискиНаСобытия) + .Когда("ПередЗаписьюСправочникаПередЗаписью", + Мокито.МассивПараметров(УсловиеПредикат, ЛюбойПараметр)) + .ВыброситьИсключение(ТекстИсключения) + .Прогон(); + + ПараметрыЗаписи = ЮТОбщий.ПараметрыЗаписи(); + ПараметрыЗаписи.ОбменДаннымиЗагрузка = Истина; + ПараметрыЗаписи.ДополнительныеСвойства.Вставить(СлучайноеСвойство, СлучайноеЗначение); + + ПараметрыМетода = ЮТОбщий.ЗначениеВМассиве( + "Справочники.Товары", "Тестовое наименование", Неопределено, ПараметрыЗаписи); + + ЮТУтверждения.Что(ЮТТестовыеДанные) + .Метод("СоздатьГруппу", ПараметрыМетода) + .ВыбрасываетИсключение(ТекстИсключения); + + Мокито.Сбросить(); + +КонецПроцедуры + +#КонецЕсли + Процедура СлучайныйИдентификатор() Экспорт Проверка = Новый Структура(); diff --git a/tests/src/CommonModules/ПодпискиНаСобытия/Module.bsl b/tests/src/CommonModules/ПодпискиНаСобытия/Module.bsl new file mode 100644 index 00000000..939f97dd --- /dev/null +++ b/tests/src/CommonModules/ПодпискиНаСобытия/Module.bsl @@ -0,0 +1,19 @@ + +&Вместо("ПередЗаписьюСправочникаПередЗаписью") +Процедура Расш1_ПередЗаписьюСправочникаПередЗаписью(Источник, Отказ) Экспорт + + // Собираем параметры в массив + ПараметрыМетода = Мокито.МассивПараметров(Источник, Отказ); + + // Отправляем данные на анализ + ПрерватьВыполнение = Ложь; + Результат = Мокито.АнализВызова(ПодпискиНаСобытия, "ПередЗаписьюСправочникаПередЗаписью", ПараметрыМетода, ПрерватьВыполнение); + + // Обрабатываем результат анализа + Если НЕ ПрерватьВыполнение Тогда + Возврат ПродолжитьВызов(Источник, Отказ); + Иначе + Возврат Результат; + КонецЕсли; + +КонецПроцедуры diff --git a/tests/src/CommonModules/ПодпискиНаСобытия/ПодпискиНаСобытия.mdo b/tests/src/CommonModules/ПодпискиНаСобытия/ПодпискиНаСобытия.mdo new file mode 100644 index 00000000..4a80513c --- /dev/null +++ b/tests/src/CommonModules/ПодпискиНаСобытия/ПодпискиНаСобытия.mdo @@ -0,0 +1,17 @@ + + + ПодпискиНаСобытия + Adopted + + Extended + Checked + Checked + Checked + Checked + Checked + Checked + + true + true + true + diff --git a/tests/src/Configuration/Configuration.mdo b/tests/src/Configuration/Configuration.mdo index 02b5d323..68aa40d1 100644 --- a/tests/src/Configuration/Configuration.mdo +++ b/tests/src/Configuration/Configuration.mdo @@ -48,6 +48,7 @@ CommonModule.ОМ_ЮТУтвержденияИБ CommonModule.ОМ_ЮТФильтрация CommonModule.ОМ_ЮТЧитатель + CommonModule.ПодпискиНаСобытия CommonModule.Пользователи CommonModule.ПомощникТестированияВызовСервера Catalog.Встречи