Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 14 additions & 2 deletions tests/smoke/smoke.bsp.json
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,13 @@
, "ИдентификаторыОбъектовМетаданных"
, "ИдентификаторыОбъектовРасширений"
, "ПредопределенныеВариантыОтчетов"
]
],
"ПроверятьТолькоИзбранные": {
"Справочники": [
"Контрагенты",
"Номенклатура"
]
}
},

"ЗаписьГруппСправочников":{
Expand All @@ -423,7 +429,13 @@
, "ИдентификаторыОбъектовМетаданных"
, "ИдентификаторыОбъектовРасширений"
, "ПредопределенныеВариантыОтчетов"
]
],
"ПроверятьТолькоИзбранные": {
"Справочники": [
"Контрагенты",
"Номенклатура"
]
}
},

"ФормированиеПечатныхФорм":{
Expand Down
16 changes: 14 additions & 2 deletions tests/smoke/smoke.example.json
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,13 @@
, "ИдентификаторыОбъектовМетаданных"
, "ИдентификаторыОбъектовРасширений"
, "ПредопределенныеВариантыОтчетов"
]
],
"ПроверятьТолькоИзбранные": {
"Справочники": [
"Контрагенты",
"Номенклатура"
]
}
},

"ЗаписьГруппСправочников":{
Expand All @@ -236,7 +242,13 @@
, "ИдентификаторыОбъектовМетаданных"
, "ИдентификаторыОбъектовРасширений"
, "ПредопределенныеВариантыОтчетов"
]
],
"ПроверятьТолькоИзбранные": {
"Справочники": [
"Контрагенты",
"Номенклатура"
]
}
},

"ФормированиеПечатныхФорм":{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,21 @@

Если МожноМенять И Иерархический И ПравоДоступа("Изменение", МетаОбъект)
И (Не Настройки.ОтборПоПрефиксу ИЛИ СтрНачинаетсяС(ВРег(МетаОбъект.Имя), ВРег(Настройки.Префикс))) Тогда

ИмяМетаданного = МетаОбъект.Имя;

ФильтрМетаданных = НайтиКоллекциюФильтрМетаданныхИзНастроек("Справочники", Настройки, "ПроверятьТолькоИзбранные");
ЕстьОтборТолькоДляВключенияМетаданных = ЗначениеЗаполнено(ФильтрМетаданных );

Если ЕстьОтборТолькоДляВключенияМетаданных Тогда
ВключатьТест = НайтиИмяВКоллекции(ИмяМетаданного, ФильтрМетаданных, КонтекстЯдра);
Если Не ВключатьТест Тогда
Продолжить;
КонецЕсли;
КонецЕсли;

ДобавитьТестыДляСправочника(НаборТестов, МетаОбъект);

КонецЕсли;
КонецЦикла;

Expand Down Expand Up @@ -129,6 +142,7 @@
Результат.Вставить("Исключения", Новый Массив);
Результат.Вставить("Префикс", "");
Результат.Вставить("ОтборПоПрефиксу", Ложь);
Результат.Вставить("ПроверятьТолькоИзбранные", Новый Массив);

Возврат Результат;
КонецФункции
Expand All @@ -154,6 +168,44 @@

КонецФункции

Функция НайтиКоллекциюФильтрМетаданныхИзНастроек(Знач КлючМетаданных, Знач Настройки, Знач ИмяОбщейКоллекции)

// TODO использовать метод плагина Настройки.ЕстьНастройка

ОбщаяКоллекция = ЗначениеИзСтруктуры(Настройки, ИмяОбщейКоллекции, Новый Структура);

ЗначениеПоУмолчанию = Новый Массив;

Если Не ЗначениеЗаполнено(ОбщаяКоллекция) Тогда
Возврат ЗначениеПоУмолчанию;
КонецЕсли;

Возврат ЗначениеИзСтруктуры(ОбщаяКоллекция, КлючМетаданных, ЗначениеПоУмолчанию);

КонецФункции

Функция НайтиИмяВКоллекции(Знач ЧтоИщем, Знач КоллекцияДляПоиска, Знач КонтекстЯдра)

Если Не ЗначениеЗаполнено(КоллекцияДляПоиска) Тогда
Возврат Ложь;
КонецЕсли;

Возврат КонтекстЯдра.ЕстьВИсключаемойКоллекции(ЧтоИщем, КоллекцияДляПоиска);

КонецФункции

Функция ЗначениеИзСтруктуры(Знач Структура, Знач ИмяНастройки, Знач ЗначениеПоУмолчанию)

Результат = Неопределено;

Если Не Структура.Свойство(ИмяНастройки, Результат) Или Не ЗначениеЗаполнено(Результат) Тогда
Результат = ЗначениеПоУмолчанию;
КонецЕсли;

Возврат Результат;

КонецФункции

#КонецОбласти

Процедура ДобавитьТестыДляСправочника(НаборТестов, МетаОбъект)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
ЗапросыИзБД = КонтекстЯдра.Плагин("ЗапросыИзБД");
ЗапросыИзБД.Инициализация(КонтекстЯдра);


ЗагрузитьНастройки();

Если Не НужноВыполнятьТест() Тогда
Expand All @@ -49,8 +48,21 @@

Если МожноМенять И ПравоДоступа("Изменение", МетаОбъект)
И (Не Настройки.ОтборПоПрефиксу ИЛИ СтрНачинаетсяС(ВРег(МетаОбъект.Имя), ВРег(Настройки.Префикс))) Тогда

ИмяМетаданного = МетаОбъект.Имя;

ФильтрМетаданных = НайтиКоллекциюФильтрМетаданныхИзНастроек("Справочники", Настройки, "ПроверятьТолькоИзбранные");
ЕстьОтборТолькоДляВключенияМетаданных = ЗначениеЗаполнено(ФильтрМетаданных );

Если ЕстьОтборТолькоДляВключенияМетаданных Тогда
ВключатьТест = НайтиИмяВКоллекции(ИмяМетаданного, ФильтрМетаданных, КонтекстЯдра);
Если Не ВключатьТест Тогда
Продолжить;
КонецЕсли;
КонецЕсли;

ДобавитьТестыДляСправочника(НаборТестов, МетаОбъект);

КонецЕсли;
КонецЦикла;

Expand Down Expand Up @@ -128,6 +140,7 @@
Результат.Вставить("ВыводитьИсключения", Ложь);
Результат.Вставить("Префикс", "");
Результат.Вставить("ОтборПоПрефиксу", Ложь);
Результат.Вставить("ПроверятьТолькоИзбранные", Новый Массив);

Возврат Результат;
КонецФункции
Expand All @@ -153,6 +166,44 @@

КонецФункции

Функция НайтиКоллекциюФильтрМетаданныхИзНастроек(Знач КлючМетаданных, Знач Настройки, Знач ИмяОбщейКоллекции)

// TODO использовать метод плагина Настройки.ЕстьНастройка

ОбщаяКоллекция = ЗначениеИзСтруктуры(Настройки, ИмяОбщейКоллекции, Новый Структура);

ЗначениеПоУмолчанию = Новый Массив;

Если Не ЗначениеЗаполнено(ОбщаяКоллекция) Тогда
Возврат ЗначениеПоУмолчанию;
КонецЕсли;

Возврат ЗначениеИзСтруктуры(ОбщаяКоллекция, КлючМетаданных, ЗначениеПоУмолчанию);

КонецФункции

Функция НайтиИмяВКоллекции(Знач ЧтоИщем, Знач КоллекцияДляПоиска, Знач КонтекстЯдра)

Если Не ЗначениеЗаполнено(КоллекцияДляПоиска) Тогда
Возврат Ложь;
КонецЕсли;

Возврат КонтекстЯдра.ЕстьВИсключаемойКоллекции(ЧтоИщем, КоллекцияДляПоиска);

КонецФункции

Функция ЗначениеИзСтруктуры(Знач Структура, Знач ИмяНастройки, Знач ЗначениеПоУмолчанию)

Результат = Неопределено;

Если Не Структура.Свойство(ИмяНастройки, Результат) Или Не ЗначениеЗаполнено(Результат) Тогда
Результат = ЗначениеПоУмолчанию;
КонецЕсли;

Возврат Результат;

КонецФункции

#КонецОбласти

Процедура ДобавитьТестыДляСправочника(НаборТестов, МетаОбъект)
Expand Down