-
Notifications
You must be signed in to change notification settings - Fork 183
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add Тесты_ПроверкаАвтоРегистрацииПлановОбмена (#807)
- Loading branch information
Showing
6 changed files
with
388 additions
and
0 deletions.
There are no files selected for viewing
62 changes: 62 additions & 0 deletions
62
...e/Тесты_ПроверкаАвтоРегистрацииПлановОбмена/Тесты_ПроверкаАвтоРегистрацииПлановОбмена.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"> | ||
<ExternalDataProcessor uuid="7abb4e0d-97e0-45ee-affc-11fa9d3be324"> | ||
<InternalInfo> | ||
<xr:ContainedObject> | ||
<xr:ClassId>c3831ec8-d8d5-4f93-8a22-f9bfae07327f</xr:ClassId> | ||
<xr:ObjectId>0c32756f-68ca-4b55-9a9f-f3b415ad0b72</xr:ObjectId> | ||
</xr:ContainedObject> | ||
<xr:GeneratedType name="ExternalDataProcessorObject.Тесты_ПроверкаАвтоРегистрацииПлановОбмена" category="Object"> | ||
<xr:TypeId>374454b4-1df5-4b67-9e85-800ed93937ff</xr:TypeId> | ||
<xr:ValueId>95383c60-00b2-4dc5-af00-0832ae567804</xr:ValueId> | ||
</xr:GeneratedType> | ||
</InternalInfo> | ||
<Properties> | ||
<Name>Тесты_ПроверкаАвтоРегистрацииПлановОбмена</Name> | ||
<Synonym> | ||
<v8:item> | ||
<v8:lang>ru</v8:lang> | ||
<v8:content>Тесты "Проверка авто регистрации планов обмена"</v8:content> | ||
</v8:item> | ||
</Synonym> | ||
<Comment/> | ||
<DefaultForm>ExternalDataProcessor.Тесты_ПроверкаАвтоРегистрацииПлановОбмена.Form.Форма</DefaultForm> | ||
<AuxiliaryForm/> | ||
</Properties> | ||
<ChildObjects> | ||
<Attribute uuid="4cbb1eb0-0bd1-44d1-9ff7-c92b90cd091c"> | ||
<Properties> | ||
<Name>Настройки</Name> | ||
<Synonym> | ||
<v8:item> | ||
<v8:lang>ru</v8:lang> | ||
<v8:content>Настройки</v8:content> | ||
</v8:item> | ||
</Synonym> | ||
<Comment/> | ||
<Type/> | ||
<PasswordMode>false</PasswordMode> | ||
<Format/> | ||
<EditFormat/> | ||
<ToolTip/> | ||
<MarkNegatives>false</MarkNegatives> | ||
<Mask/> | ||
<MultiLine>false</MultiLine> | ||
<ExtendedEdit>false</ExtendedEdit> | ||
<MinValue xsi:nil="true"/> | ||
<MaxValue xsi:nil="true"/> | ||
<FillChecking>DontCheck</FillChecking> | ||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems> | ||
<ChoiceParameterLinks/> | ||
<ChoiceParameters/> | ||
<QuickChoice>Auto</QuickChoice> | ||
<CreateOnInput>Auto</CreateOnInput> | ||
<ChoiceForm/> | ||
<LinkByType/> | ||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput> | ||
</Properties> | ||
</Attribute> | ||
<Form>Форма</Form> | ||
</ChildObjects> | ||
</ExternalDataProcessor> | ||
</MetaDataObject> |
1 change: 1 addition & 0 deletions
1
...втоРегистрацииПлановОбмена/Тесты_ПроверкаАвтоРегистрацииПлановОбмена/Ext/ObjectModule.bsl
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
22 changes: 22 additions & 0 deletions
22
...еркаАвтоРегистрацииПлановОбмена/Тесты_ПроверкаАвтоРегистрацииПлановОбмена/Forms/Форма.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"> | ||
<Form uuid="c9a04ab9-402f-4b06-afc5-8bb84fba3f69"> | ||
<Properties> | ||
<Name>Форма</Name> | ||
<Synonym> | ||
<v8:item> | ||
<v8:lang>ru</v8:lang> | ||
<v8:content>Форма</v8:content> | ||
</v8:item> | ||
</Synonym> | ||
<Comment/> | ||
<FormType>Managed</FormType> | ||
<IncludeHelpInContents>false</IncludeHelpInContents> | ||
<UsePurposes> | ||
<v8:Value xsi:type="app:ApplicationUsePurpose">PersonalComputer</v8:Value> | ||
<v8:Value xsi:type="app:ApplicationUsePurpose">MobileDevice</v8:Value> | ||
</UsePurposes> | ||
<ExtendedPresentation/> | ||
</Properties> | ||
</Form> | ||
</MetaDataObject> |
12 changes: 12 additions & 0 deletions
12
...егистрацииПлановОбмена/Тесты_ПроверкаАвтоРегистрацииПлановОбмена/Forms/Форма/Ext/Form.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"> | ||
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/> | ||
<Attributes> | ||
<Attribute name="Объект" id="1"> | ||
<Type> | ||
<v8:Type>cfg:ExternalDataProcessorObject.Тесты_ПроверкаАвтоРегистрацииПлановОбмена</v8:Type> | ||
</Type> | ||
<MainAttribute>true</MainAttribute> | ||
</Attribute> | ||
</Attributes> | ||
</Form> |
272 changes: 272 additions & 0 deletions
272
...цииПлановОбмена/Тесты_ПроверкаАвтоРегистрацииПлановОбмена/Forms/Форма/Ext/Form/Module.bsl
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,272 @@ | ||
#Область ОписаниеПеременных | ||
|
||
&НаКлиенте | ||
Перем КонтекстЯдра; | ||
&НаКлиенте | ||
Перем Утверждения; | ||
&НаКлиенте | ||
Перем СтроковыеУтилиты; | ||
&НаКлиенте | ||
Перем ПрефиксОбъектов; | ||
&НаКлиенте | ||
Перем ОтборПоПрефиксу; | ||
&НаКлиенте | ||
Перем ВыводитьИсключения; | ||
&НаКлиенте | ||
Перем ИсключенияИзПроверок; | ||
|
||
#КонецОбласти | ||
|
||
#Область ИнтерфейсТестирования | ||
|
||
&НаКлиенте | ||
Процедура Инициализация(КонтекстЯдраПараметр) Экспорт | ||
|
||
КонтекстЯдра = КонтекстЯдраПараметр; | ||
Утверждения = КонтекстЯдра.Плагин("БазовыеУтверждения"); | ||
СтроковыеУтилиты = КонтекстЯдра.Плагин("СтроковыеУтилиты"); | ||
|
||
ПутьНастройки = ИмяТеста(); | ||
Настройки(КонтекстЯдра, ПутьНастройки); | ||
|
||
КонецПроцедуры | ||
|
||
&НаКлиенте | ||
Процедура ЗаполнитьНаборТестов(НаборТестов, КонтекстЯдра) Экспорт | ||
|
||
Если Не ВыполнятьТест(КонтекстЯдра) Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
мПланыОбмена = ПланыОбмена(ПрефиксОбъектов, ОтборПоПрефиксу); | ||
|
||
Для Каждого ПланОбмена Из мПланыОбмена Цикл | ||
Если Не ВыводитьИсключения Тогда | ||
МассивТестов = УбратьИсключения(ПланОбмена.Ключ, ПланОбмена.Значение); | ||
Иначе | ||
МассивТестов = ПланОбмена.Значение; | ||
КонецЕсли; | ||
Если МассивТестов.Количество() = 0 Тогда | ||
Продолжить; | ||
КонецЕсли; | ||
НаборТестов.НачатьГруппу(ПланОбмена.Ключ, Ложь); | ||
Для Каждого Элемент Из МассивТестов Цикл | ||
НаборТестов.Добавить( | ||
"ТестДолжен_ПроверитьАвтоРегистрацииПланаОбмена", | ||
НаборТестов.ПараметрыТеста(ПланОбмена.Ключ, Элемент.ПолноеИмя, Элемент.АвтоРегистрация), | ||
КонтекстЯдра.СтрШаблон_("%1 [%2]", Элемент.Имя, НСтр("ru = 'Проверка авторегистрации планов обмена'"))); | ||
КонецЦикла; | ||
КонецЦикла; | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти | ||
|
||
#Область РаботаСНастройками | ||
|
||
&НаКлиенте | ||
Процедура Настройки(КонтекстЯдра, Знач ПутьНастройки) | ||
|
||
Если ЗначениеЗаполнено(Объект.Настройки) Тогда | ||
Возврат; | ||
КонецЕсли; | ||
|
||
ВыводитьИсключения = Истина; | ||
ОтборПоПрефиксу = Ложь; | ||
ПрефиксОбъектов = ""; | ||
ИсключенияИзПроверок = Новый Соответствие; | ||
ПлагинНастроек = КонтекстЯдра.Плагин("Настройки"); | ||
Объект.Настройки = ПлагинНастроек.ПолучитьНастройку(ПутьНастройки); | ||
Настройки = Объект.Настройки; | ||
|
||
Если Не ЗначениеЗаполнено(Настройки) Тогда | ||
Объект.Настройки = Новый Структура(ПутьНастройки, Неопределено); | ||
Возврат; | ||
КонецЕсли; | ||
|
||
Если Настройки.Свойство("Префикс") Тогда | ||
ПрефиксОбъектов = ВРег(Настройки.Префикс); | ||
КонецЕсли; | ||
|
||
Если Настройки.Свойство("ОтборПоПрефиксу") Тогда | ||
ОтборПоПрефиксу = Настройки.ОтборПоПрефиксу; | ||
КонецЕсли; | ||
|
||
Если Настройки.Свойство("ВыводитьИсключения") Тогда | ||
ВыводитьИсключения = Настройки.ВыводитьИсключения; | ||
КонецЕсли; | ||
|
||
Если Настройки.Свойство("ИсключенияИзпроверок") Тогда | ||
ИсключенияИзПроверок(Настройки); | ||
КонецЕсли; | ||
|
||
КонецПроцедуры | ||
|
||
&НаКлиенте | ||
Процедура ИсключенияИзПроверок(Настройки) | ||
|
||
Для Каждого ИсключенияИзПроверокПоОбъектам Из Настройки.ИсключенияИзпроверок Цикл | ||
Для Каждого ИсключениеИзПроверок Из ИсключенияИзПроверокПоОбъектам.Значение Цикл | ||
ИсключенияИзПроверок.Вставить(ВРег(ИсключенияИзПроверокПоОбъектам.Ключ + "." + ИсключениеИзПроверок), Истина); | ||
КонецЦикла; | ||
КонецЦикла; | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти | ||
|
||
#Область Тесты | ||
|
||
&НаКлиенте | ||
Процедура ТестДолжен_ПроверитьАвтоРегистрацииПланаОбмена(ПланОбмена, ПолноеИмяМетаданных, АвтоРегистрация) Экспорт | ||
|
||
ПропускатьТест = ПропускатьТест(ПланОбмена, ПолноеИмяМетаданных); | ||
Результат = (АвтоРегистрация = "Запретить"); | ||
|
||
Если Не Результат И ПропускатьТест.Пропустить Тогда | ||
Утверждения.ПропуститьТест(ПропускатьТест.ТекстСообщения); | ||
Иначе | ||
Утверждения.Проверить(Результат = Истина, ТекстСообщения(ПланОбмена, ПолноеИмяМетаданных)); | ||
КонецЕсли; | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти | ||
|
||
#Область СлужебныеПроцедурыИФункции | ||
|
||
&НаКлиенте | ||
Функция ПропускатьТест(ПланОбмена, ПолноеИмяМетаданных) | ||
|
||
Результат = Новый Структура; | ||
Результат.Вставить("ТекстСообщения", ""); | ||
Результат.Вставить("Пропустить", Ложь); | ||
|
||
Если ИсключенИзПроверок(ПланОбмена, ПолноеИмяМетаданных) Тогда | ||
ШаблонСообшения = НСтр("ru = 'Объект ""%1"" исключен из проверки'"); | ||
Результат.ТекстСообщения = СтроковыеУтилиты.ПодставитьПараметрыВСтроку(ШаблонСообшения, ПолноеИмяМетаданных); | ||
Результат.Пропустить = Истина; | ||
Возврат Результат; | ||
КонецЕсли; | ||
|
||
Возврат Результат; | ||
|
||
КонецФункции | ||
|
||
&НаКлиенте | ||
Функция ИсключенИзПроверок(ПланОбмена, ПолноеИмяМетаданных) | ||
|
||
Результат = Ложь; | ||
МассивСтрокИмени = СтроковыеУтилиты.РазложитьСтрокуВМассивПодстрок(ПланОбмена, "."); | ||
ИмяТеста = СтроковыеУтилиты.ПодставитьПараметрыВСтроку("%1.%2", МассивСтрокИмени[1], ПолноеИмяМетаданных); | ||
ИслючениеВсехОбъектов = СтроковыеУтилиты.ПодставитьПараметрыВСтроку("%1.*", МассивСтрокИмени[0]); | ||
|
||
Если ИсключенияИзПроверок.Получить(ВРег(ИмяТеста)) <> Неопределено | ||
Или ИсключенияИзПроверок.Получить(ВРег(ИслючениеВсехОбъектов)) <> Неопределено Тогда | ||
Результат = Истина; | ||
КонецЕсли; | ||
|
||
Возврат Результат; | ||
|
||
КонецФункции | ||
|
||
&НаКлиенте | ||
Функция УбратьИсключения(ПланОбмена, МассивТестов) | ||
|
||
Исключения = Новый Соответствие; | ||
Результат = Новый Массив; | ||
|
||
Для Каждого Тест Из МассивТестов Цикл | ||
Если ИсключенИзПроверок(ПланОбмена, Тест.ПолноеИмя) Тогда | ||
Исключения.Вставить(Тест, Истина); | ||
КонецЕсли; | ||
КонецЦикла; | ||
|
||
Для Каждого Тест Из МассивТестов Цикл | ||
Если Исключения.Получить(Тест) = Истина Тогда | ||
Продолжить; | ||
КонецЕсли; | ||
Результат.Добавить(Тест); | ||
КонецЦикла; | ||
|
||
Возврат Результат; | ||
|
||
КонецФункции | ||
|
||
&НаКлиенте | ||
Функция ТекстСообщения(ПланОбмена, ПолноеИмяМетаданных) | ||
|
||
ШаблонСообщения = НСтр("ru = 'Для объекта ""%1"" в плане обмена %2 включена авторегистрация.'"); | ||
ТекстСообщения = СтроковыеУтилиты.ПодставитьПараметрыВСтроку( | ||
ШаблонСообщения, ПолноеИмяМетаданных, ПланОбмена); | ||
|
||
Возврат ТекстСообщения; | ||
|
||
КонецФункции | ||
|
||
&НаСервереБезКонтекста | ||
Функция ПланыОбмена(ПрефиксОбъектов, ОтборПоПрефиксу) | ||
|
||
СтроковыеУтилиты = СтроковыеУтилиты(); | ||
мПланыОбмена = Новый Соответствие; | ||
|
||
Для Каждого ПланОбмена Из Метаданные.ПланыОбмена Цикл | ||
мПланыОбмена.Вставить(ПланОбмена.ПолноеИмя(), Новый Массив); | ||
КонецЦикла; | ||
|
||
Для Каждого ПланОбмена Из мПланыОбмена Цикл | ||
|
||
ПланОбменаМетаданные = Метаданные.НайтиПоПолномуИмени(ПланОбмена.Ключ); | ||
Если ОтборПоПрефиксу И СтрНайти(ВРег(ПланОбмена.Ключ), ПрефиксОбъектов) = 0 Тогда | ||
Продолжить; | ||
КонецЕсли; | ||
|
||
Для Каждого ЭлементСостава Из ПланОбменаМетаданные.Состав Цикл | ||
СтруктураЭлемента = Новый Структура; | ||
СтруктураЭлемента.Вставить("ПолноеИмя", ЭлементСостава.Метаданные.ПолноеИмя()); | ||
ИмяТеста = СтроковыеУтилиты.ПодставитьПараметрыВСтроку( | ||
"%1.%2", | ||
ПланОбменаМетаданные.Имя, | ||
ЭлементСостава.Метаданные.ПолноеИмя()); | ||
СтруктураЭлемента.Вставить("Имя", ИмяТеста); | ||
СтруктураЭлемента.Вставить("АвтоРегистрация", Строка(ЭлементСостава.АвтоРегистрация)); | ||
ПланОбмена.Значение.Добавить(СтруктураЭлемента); | ||
КонецЦикла; | ||
|
||
КонецЦикла; | ||
|
||
Возврат мПланыОбмена; | ||
|
||
КонецФункции | ||
|
||
&НаСервереБезКонтекста | ||
Функция СтроковыеУтилиты() | ||
Возврат ВнешниеОбработки.Создать("СтроковыеУтилиты"); | ||
КонецФункции | ||
|
||
&НаСервере | ||
Функция ИмяТеста() | ||
Возврат РеквизитФормыВЗначение("Объект").Метаданные().Имя; | ||
КонецФункции | ||
|
||
&НаКлиенте | ||
Функция ВыполнятьТест(КонтекстЯдра) | ||
|
||
ВыполнятьТест = Истина; | ||
ПутьНастройки = ИмяТеста(); | ||
Настройки(КонтекстЯдра, ПутьНастройки); | ||
Настройки = Объект.Настройки; | ||
|
||
Если Не ЗначениеЗаполнено(Настройки) Тогда | ||
Возврат ВыполнятьТест; | ||
КонецЕсли; | ||
|
||
Если ТипЗнч(Настройки) = Тип("Структура") И Настройки.Свойство("Используется") Тогда | ||
ВыполнятьТест = Настройки.Используется; | ||
КонецЕсли; | ||
|
||
Возврат ВыполнятьТест; | ||
|
||
КонецФункции | ||
|
||
#КонецОбласти |
Oops, something went wrong.