1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-02-13 19:42:02 +02:00

Поддержка метода другого модуля при переопределении обработчиков событий

This commit is contained in:
Potoyalo 2023-07-30 02:19:47 +07:00
parent 10e0ca02a3
commit 7501de2d1a
4 changed files with 97 additions and 1 deletions

View File

@ -274,12 +274,19 @@
//
Процедура ВызватьОбработчикТестовогоМодуля(Знач ИмяСобытия, ОписаниеСобытия)
ИмяМодуля = ОписаниеСобытия.Модуль.МетаданныеМодуля.Имя;
НовоеИмяСобытия = ПереопределенноеИмяСобытия(ИмяСобытия);
Если ЗначениеЗаполнено(НовоеИмяСобытия) Тогда
ИмяСобытия = НовоеИмяСобытия;
КонецЕсли;
ИмяМодуля = ОписаниеСобытия.Модуль.МетаданныеМодуля.Имя;
ЧастиКоманды = СтрРазделить(ИмяСобытия, ".");
Если ЧастиКоманды.Количество() = 2 Тогда
ИмяМодуля = ЧастиКоманды[0];
ИмяСобытия = ЧастиКоманды[1];
КонецЕсли;
Ошибка = Неопределено;
Если ЮТОбщий.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда

View File

@ -0,0 +1,77 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// Copyright 2021-2023 BIA-Technologies Limited Liability Company
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область СлужебныйПрограммныйИнтерфейс
Процедура ИсполняемыеСценарии() Экспорт
ЮТТесты.Перед("ОМ_ЮТест.ПередВсемиТестами")
.ДобавитьТест("ПроверкаКонтекста")
;
КонецПроцедуры
Процедура ПередТестовымНабором() Экспорт
ЮТест.Контекст().УстановитьЗначение("Набор", 2);
ЮТест.Контекст().Значение("Коллекция").Добавить("ПередТестовымНабором");
КонецПроцедуры
Процедура ПередКаждымТестом() Экспорт
ЮТест.Контекст().УстановитьЗначение("Тест", 3);
ЮТест.Контекст().УстановитьЗначение("Заменяемый", 3);
ЮТест.Контекст().Значение("Коллекция").Добавить("ПередКаждымТестом");
КонецПроцедуры
Процедура ПослеКаждогоТеста() Экспорт
ЮТест.Контекст().Значение("Коллекция").Добавить("ПослеКаждогоТеста");
КонецПроцедуры
Процедура ПослеТестовогоНабора() Экспорт
ЮТест.Контекст().Значение("Коллекция").Добавить("ПослеТестовогоНабора");
КонецПроцедуры
Процедура ПослеВсехТестов() Экспорт
ЮТест.Контекст().Значение("Коллекция").Добавить("ПослеВсехТестов");
ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Коллекция")).ИмеетДлину(6);
КонецПроцедуры
Процедура ПроверкаКонтекста() Экспорт
ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Глобальный"), "Значение глобального контекста").Равно(1);
ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Набор"), "Значение контекста набора").Равно(2);
ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Тест"), "Значение контекста теста").Равно(3);
ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Заменяемый"), "Замененное значение контекста").Равно(3);
ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Коллекция"))
.ИмеетДлинуБольше(2)
.Содержит("ПередВсемиТестами")
.Содержит("ПередТестовымНабором")
.Содержит("ПередКаждымТестом");
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="63d6c40e-3773-40d3-ab65-addf6be0e949">
<name>ОМ_ЮТестПереопределяемый</name>
<synonym>
<key>ru</key>
<value>О м ест</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -29,6 +29,7 @@
<commonModules>CommonModule.ОМ_Общий</commonModules>
<commonModules>CommonModule.ОМ_ОшибкаЗагрузкиСценариев</commonModules>
<commonModules>CommonModule.ОМ_ЮТест</commonModules>
<commonModules>CommonModule.ОМ_ЮТестПереопределяемый</commonModules>
<commonModules>CommonModule.ОМ_ЮТЗапросы</commonModules>
<commonModules>CommonModule.ОМ_ЮТКонструкторТестовыхДанных</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Банки</commonModules>