From 7a0cfc4985f111dbd626d25178323c71a6989e90 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Tue, 7 May 2024 15:13:15 +0300 Subject: [PATCH 01/54] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=B1=D0=B8=D1=82=D0=B0=D1=8F=20?= =?UTF-8?q?=D1=81=D1=81=D1=8B=D0=BB=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- documentation/blog/2024/05/07-engine-release.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/documentation/blog/2024/05/07-engine-release.md b/documentation/blog/2024/05/07-engine-release.md index cd3d1f632..164e9bc53 100644 --- a/documentation/blog/2024/05/07-engine-release.md +++ b/documentation/blog/2024/05/07-engine-release.md @@ -24,7 +24,7 @@ tags: [releases, yaxunit] ### Прочее * Рефакторинг механизма событий [#315](https://github.com/bia-technologies/yaxunit/issues/315) - Добавлена возможность создавать обработчики событий за пределами расширения движка, подробнее в [документации](docs/features/events) + Добавлена возможность создавать обработчики событий за пределами расширения движка, подробнее в [документации](/docs/features/events) * Добавлен шаблон PR ## Исправленные ошибки From 818a38b6bc9a881c632f83aeb4bcc7b658771bea Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Wed, 8 May 2024 14:51:56 +0300 Subject: [PATCH 02/54] =?UTF-8?q?#256=20=D0=A2=D0=B5=D1=81=D1=82=D1=8B=20?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=BF=D0=BE=D0=BB=D1=83=D1=87=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85=20=D1=81=D1=83?= =?UTF-8?q?=D0=B1=D0=BA=D0=BE=D0=BD=D1=82=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\276\320\262\320\275\320\276\320\271.mdo" | 53 +++++++ ...0\276\320\262\320\275\320\276\320\271.mdo" | 134 ++++++++++++++++++ ...0\272\320\276\320\275\321\202\320\276.mdo" | 83 +++++++++++ .../src/Configuration/Configuration.mdo | 3 + .../ObjectModule.bsl" | 56 +++++++- ...0\276\320\262\320\260\321\200\320\260.mdo" | 1 + ...0\276\320\262\320\260\321\200\320\260.mdo" | 1 + .../Module.bsl" | 76 +++++++--- 8 files changed, 388 insertions(+), 19 deletions(-) create mode 100644 "fixtures/demo-configuration/src/AccountingRegisters/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" create mode 100644 "fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" create mode 100644 "fixtures/demo-configuration/src/ChartsOfCharacteristicTypes/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276.mdo" diff --git "a/fixtures/demo-configuration/src/AccountingRegisters/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" "b/fixtures/demo-configuration/src/AccountingRegisters/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" new file mode 100644 index 000000000..31347d25a --- /dev/null +++ "b/fixtures/demo-configuration/src/AccountingRegisters/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" @@ -0,0 +1,53 @@ + + + + + + + + + + + + Основной + + ru + Основной + + true + ChartOfAccounts.Основной + Managed + true + + Организация + + ru + Организация + + + CatalogRef.Организации + + + + Use + true + + + Сумма + + ru + Сумма + + + Number + + 10 + 2 + + + + + Use + true + + diff --git "a/fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" "b/fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" new file mode 100644 index 000000000..77ff20a5f --- /dev/null +++ "b/fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" @@ -0,0 +1,134 @@ + + + + + + + + + + + + Основной + + ru + Основной + + true + ChartOfAccounts.Основной.StandardAttribute.Code + ChartOfAccounts.Основной.StandardAttribute.Description + DontUse + DontUse + Managed + Use + ChartOfCharacteristicTypes.ВидыСубконто + 3 + 9 + 25 + true + + + Товары + Товары + 1 + ActivePassive + + ChartOfCharacteristicTypes.ВидыСубконто.Контрагент + + + ChartOfCharacteristicTypes.ВидыСубконто.Склад + + + + Деньги + Деньги + 2 + ActivePassive + + ChartOfCharacteristicTypes.ВидыСубконто.Контрагент + + + ChartOfCharacteristicTypes.ВидыСубконто.РасчетныйСчетКонтрагента + + + ChartOfCharacteristicTypes.ВидыСубконто.Валюта + + + + InDialog + BothWays + + Реквизит + + ru + Реквизит + + + String + + 10 + + + + + + Use + Use + + + + + + + ТабличнаяЧасть + + ru + Табличная часть + + + Реквизит + + ru + Реквизит + + + String + + 10 + + + + + Use + Use + + + + ПризнакУчета + + ru + Признак учета + + + Boolean + + + + Use + + + + ПризнакУчетаСубконто + + ru + Признак учета субконто + + + Boolean + + + + Use + + + diff --git "a/fixtures/demo-configuration/src/ChartsOfCharacteristicTypes/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276.mdo" "b/fixtures/demo-configuration/src/ChartsOfCharacteristicTypes/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276.mdo" new file mode 100644 index 000000000..c0140074a --- /dev/null +++ "b/fixtures/demo-configuration/src/ChartsOfCharacteristicTypes/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276/\320\222\320\270\320\264\321\213\320\241\321\203\320\261\320\272\320\276\320\275\321\202\320\276.mdo" @@ -0,0 +1,83 @@ + + + + + + + + + + + ВидыСубконто + + ru + Виды субконто + + true + ChartOfCharacteristicTypes.ВидыСубконто.StandardAttribute.Code + ChartOfCharacteristicTypes.ВидыСубконто.StandardAttribute.Description + DontUse + DontUse + Managed + Use + + CatalogRef.ВидыЦен + CatalogRef.Валюты + CatalogRef.Контрагенты + CatalogRef.РасчетныеСчета + CatalogRef.РасчетныеСчетаКонтрагентов + CatalogRef.Склады + CatalogRef.Товары + + true + 9 + Variable + 25 + true + true + AsDescription + + + Контрагент + Контрагент + 000000001 + + CatalogRef.Контрагенты + + + + Валюта + Валюта + 000000002 + + CatalogRef.Валюты + + + + РасчетныйСчет + Расчетный счет + 000000003 + + CatalogRef.РасчетныеСчета + + + + Склад + Склад + 000000004 + + CatalogRef.Склады + + + + РасчетныйСчетКонтрагента + Расчетный счет контрагент + 000000005 + + CatalogRef.РасчетныеСчетаКонтрагентов + + + + InDialog + BothWays + diff --git a/fixtures/demo-configuration/src/Configuration/Configuration.mdo b/fixtures/demo-configuration/src/Configuration/Configuration.mdo index 27e86a9f3..64339fd74 100644 --- a/fixtures/demo-configuration/src/Configuration/Configuration.mdo +++ b/fixtures/demo-configuration/src/Configuration/Configuration.mdo @@ -290,4 +290,7 @@ AccumulationRegister.Продажи AccumulationRegister.ТоварныеЗапасы ChartOfCharacteristicTypes.ВидыХарактеристик + ChartOfCharacteristicTypes.ВидыСубконто + ChartOfAccounts.Основной + AccountingRegister.Основной diff --git "a/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" "b/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" index d467041cc..813e70811 100644 --- "a/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" +++ "b/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" @@ -39,6 +39,8 @@ КонецЕсли; КонецЕсли; + + СформироватьПроводкиБухгалтерия(); КонецПроцедуры @@ -63,7 +65,6 @@ КонецПроцедуры - Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) //Удалим из списка проверяемых реквизитов валюту, если по организации не ведется @@ -74,3 +75,56 @@ КонецПроцедуры +Процедура СформироватьПроводкиБухгалтерия() + + Курс = РегистрыСведений.КурсыВалют.ПолучитьПоследнее(Дата, Новый Структура("Валюта", Валюта)).Курс; + + Если Курс = 0 Тогда + Сумма = Товары.Итог("Сумма"); + Иначе + Сумма = Товары.Итог("Сумма") / Курс; + КонецЕсли; + + Движения.Основной.Записывать = Истина; + Проводка = Движения.Основной.ДобавитьКредит(); + Проводка.Организация = Организация; + Проводка.Период = Дата; + Проводка.Сумма = Сумма; + Проводка.Счет = ПланыСчетов.Основной.Деньги; + Проводка.Субконто[ПланыВидовХарактеристик.ВидыСубконто.Контрагент] = Поставщик; + Проводка.Субконто[ПланыВидовХарактеристик.ВидыСубконто.Валюта] = Валюта; + Проводка.Субконто[ПланыВидовХарактеристик.ВидыСубконто.РасчетныйСчетКонтрагента] = РасчетныйСчетКонтрагента(Поставщик); + + Проводка = Движения.Основной.ДобавитьДебет(); + Проводка.Организация = Организация; + Проводка.Период = Дата; + Проводка.Сумма = Сумма; + Проводка.Счет = ПланыСчетов.Основной.Товары; + Проводка.Субконто[ПланыВидовХарактеристик.ВидыСубконто.Контрагент] = Поставщик; + Проводка.Субконто[ПланыВидовХарактеристик.ВидыСубконто.Склад] = Склад; + +КонецПроцедуры + +Функция РасчетныйСчетКонтрагента(Контрагент) + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | РасчетныеСчетаКонтрагентов.Ссылка + |ИЗ + | Справочник.РасчетныеСчетаКонтрагентов КАК РасчетныеСчетаКонтрагентов + |ГДЕ + | РасчетныеСчетаКонтрагентов.Владелец = &Владелец + | И НЕ РасчетныеСчетаКонтрагентов.ПометкаУдаления"; + + Запрос.УстановитьПараметр("Владелец", Контрагент); + + Выборка = Запрос.Выполнить().Выбрать(); + + Если Выборка.Следующий() Тогда + Возврат Выборка[0]; + Иначе + Возврат Неопределено; + КонецЕсли; + +КонецФункции diff --git "a/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" "b/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" index 88341518c..003c31cb2 100644 --- "a/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" +++ "b/fixtures/demo-configuration/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" @@ -94,6 +94,7 @@ Document.ПриходТовара.Form.ФормаСписка AccumulationRegister.ТоварныеЗапасы AccumulationRegister.Взаиморасчеты + AccountingRegister.Основной true true diff --git "a/fixtures/demo-configuration/src/Documents/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" "b/fixtures/demo-configuration/src/Documents/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" index 95f9da26a..e0766b138 100644 --- "a/fixtures/demo-configuration/src/Documents/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" +++ "b/fixtures/demo-configuration/src/Documents/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/\320\240\320\260\321\201\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260.mdo" @@ -107,6 +107,7 @@ AccumulationRegister.Продажи AccumulationRegister.ТоварныеЗапасы AccumulationRegister.Взаиморасчеты + AccountingRegister.Основной true true diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213/Module.bsl" index ae504ca5b..9b10792c1 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213/Module.bsl" @@ -28,6 +28,8 @@ .ДобавитьТест("РезультатПустой") .ДобавитьТест("Запись") .ДобавитьТест("Записи") + .ДобавитьТест("Запись_Субконто") + .ДобавитьТест("Записи_Субконто") .ДобавитьТест("ЗначенияРеквизитовЗаписи") .ДобавитьТест("ЗначениеРеквизитаЗаписи") .ДобавитьТест("ДвиженияДокумента") @@ -208,14 +210,7 @@ .НеЗаполнено(); // Документ, тест на табличную часть - Конструктор = ЮТест.Данные().КонструкторОбъекта("Документы.ПриходТовара") - .Фикция("Склад") - .Фикция("Организация") - .Фикция("Поставщик") - .ТабличнаяЧасть("Товары") - .ДобавитьСтроку() - .Фикция("Товар") - .Фикция("Цена"); + Конструктор = ПриходТовара(); Ссылка = Конструктор.Записать(); ДанныеОбъекта = Конструктор.ДанныеОбъекта(); @@ -228,7 +223,7 @@ .Свойство("Поставщик").Равно(ДанныеОбъекта.Поставщик) .Свойство("Товары") .ИмеетТип("Массив") - .ИмеетДлину(1) + .ИмеетДлину(2) .Свойство("Товары[0].НомерСтроки").Равно(1) .Свойство("Товары[0].Товар").Равно(ДанныеОбъекта.Товары[0].Товар); @@ -284,6 +279,42 @@ КонецПроцедуры +Процедура Запись_Субконто() Экспорт + + Ссылка = ПриходТовара().Провести(); + Запись = ЮТЗапросы.Запись("РегистрБухгалтерии.Основной.ДвиженияССубконто", ЮТест.Предикат() + .Реквизит("Регистратор").Равно(Ссылка)); + + ЮТест.ОжидаетЧто(Запись) + .ИмеетТип("Структура") + .ИмеетСвойство("ВидСубконто1") + .ИмеетСвойство("ВидСубконто2") + .ИмеетСвойство("ВидСубконто3") + .ИмеетСвойство("Субконто1") + .ИмеетСвойство("Субконто2") + .ИмеетСвойство("Субконто3"); + +КонецПроцедуры + +Процедура Записи_Субконто() Экспорт + + Ссылка = ПриходТовара().Провести(); + Записи = ЮТЗапросы.Записи("РегистрБухгалтерии.Основной.ДвиженияССубконто", ЮТест.Предикат() + .Реквизит("Регистратор").Равно(Ссылка)); + + ЮТест.ОжидаетЧто(Записи) + .ИмеетТип("Массив") + .ИмеетДлину(2) + .КаждыйЭлементСодержитСвойство("ВидСубконто1") + .КаждыйЭлементСодержитСвойство("ВидСубконто2") + .КаждыйЭлементСодержитСвойство("ВидСубконто3") + .КаждыйЭлементСодержитСвойство("Субконто1") + .КаждыйЭлементСодержитСвойство("Субконто2") + .КаждыйЭлементСодержитСвойство("Субконто3") + ; + +КонецПроцедуры + Процедура ЗначенияРеквизитовЗаписи() Экспорт Конструктор = ЮТест.Данные().КонструкторОбъекта("Справочники.Товары") @@ -353,15 +384,7 @@ Процедура ДвиженияДокумента() Экспорт - Конструктор = ЮТест.Данные().КонструкторОбъекта("Документ.ПриходТовара") - .ФикцияОбязательныхПолей() - .ТабличнаяЧасть("Товары") - .ДобавитьСтроку() - .Установить("Сумма", ЮТест.Данные().СлучайноеПоложительноеЧисло(999999)) // иначе возможно переполнение - .ФикцияОбязательныхПолей() - .ДобавитьСтроку() - .Установить("Сумма", ЮТест.Данные().СлучайноеПоложительноеЧисло(999999)) // иначе возможно переполнение - .ФикцияОбязательныхПолей(); + Конструктор = ПриходТовара(); Документ = Конструктор.Провести(); ДанныеОбъекта = Конструктор.ДанныеОбъекта(); @@ -437,4 +460,21 @@ КонецФункции +Функция ПриходТовара() + + Возврат ЮТест.Данные().КонструкторОбъекта("Документы.ПриходТовара") + .Фикция("Склад") + .Фикция("Организация") + .Фикция("Поставщик") + .Фикция("Валюта") + .ТабличнаяЧасть("Товары") + .ДобавитьСтроку() + .Установить("Сумма", ЮТест.Данные().СлучайноеПоложительноеЧисло(999999)) // иначе возможно переполнение + .ФикцияОбязательныхПолей() + .ДобавитьСтроку() + .Установить("Сумма", ЮТест.Данные().СлучайноеПоложительноеЧисло(999999)) // иначе возможно переполнение + .ФикцияОбязательныхПолей(); + +КонецФункции + #КонецОбласти From 020a037a9a312c10534eab451ecb9108a7fb4821 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Mon, 13 May 2024 22:54:57 +0300 Subject: [PATCH 03/54] =?UTF-8?q?#342=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 5091b1bab..203bf989c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -89,10 +89,10 @@ Иначе ДанныеОтчета.Записать(ИмяФайлаОтчета); КонецЕсли; + + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьОбработчик(Обработчик); КонецЕсли; - ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьОбработчик(Обработчик); - КонецПроцедуры Процедура ПодготовитьИмяФайлаОтчета(ПараметрыФормирования, Обработчик) From b286be4dcede53020583b8f48a6f9f7a71db66fa Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Mon, 13 May 2024 00:45:35 +0300 Subject: [PATCH 04/54] =?UTF-8?q?#61=20=D0=92=D1=8B=D0=B2=D0=BE=D0=B4=20?= =?UTF-8?q?=D1=82=D0=B5=D0=B3=D0=BE=D0=B2=20=D0=B2=20=D0=BE=D1=82=D1=87?= =?UTF-8?q?=D0=B5=D1=82=D0=B5=20=D0=B8=20=D0=BE=D0=BF=D1=82=D0=B8=D0=BC?= =?UTF-8?q?=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=20=D1=80=D0=B0=D0=B1=D0=BE?= =?UTF-8?q?=D1=82=D1=8B=20=D1=84=D0=BE=D1=80=D0=BC=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Form.form" | 86 ++++++++++++++++++- .../Module.bsl" | 21 +++-- 2 files changed, 96 insertions(+), 11 deletions(-) diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Form.form" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Form.form" index bcd4f6619..1df9b1f5a 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Form.form" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Form.form" @@ -355,7 +355,6 @@ 8.0 true - Style.NormalTextFont @@ -409,6 +408,59 @@ true + + ДеревоТестовТеги + 147 + true + true + + true + + + ДеревоТестов.Теги + + + ДеревоТестовТегиРасширеннаяПодсказка + 149 + true + true + + true + + Label + true + true + + Left + + + + ДеревоТестовТегиКонтекстноеМеню + 148 + true + true + + true + + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + + Style.FieldSelectionBackColor + + + ДеревоТестовГруппаПрогресс 102 @@ -1444,7 +1496,6 @@ false 12.0 - Style.NormalTextFont Left @@ -1689,6 +1740,24 @@ true + + Теги + + <key>ru</key> + <value>Теги</value> + + 131 + + String + + + + true + + + true + + ДеревоТестов.Ошибки @@ -2003,6 +2072,19 @@ TextPicture DontUse + + АдресХранилища + + String + + + + + ЗагрузитьТесты + + Boolean + + diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" index f0b5e5234..f1de9a9db 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" @@ -31,11 +31,11 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("АдресХранилища") И ЭтоАдресВременногоХранилища(Параметры.АдресХранилища) Тогда + Если ЭтоАдресВременногоХранилища(Параметры.АдресХранилища) Тогда АдресОтчета = Параметры.АдресХранилища; КонецЕсли; - Параметры.Свойство("ЗагрузитьТесты", ЗагрузитьТестыПриОткрытии); + ЗагрузитьТестыПриОткрытии = Параметры.ЗагрузитьТесты; Для Каждого Формат Из ФорматыВыводаОшибки() Цикл Элементы.ФорматВыводаОшибки.СписокВыбора.Добавить(Формат.Ключ, Формат.Ключ); @@ -251,7 +251,7 @@ КонецФункции -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Процедура ЗаполнитьОшибки(СтрокаДерева, ОписаниеОбъекта) СтрокаДерева.Ошибки.Очистить(); @@ -284,7 +284,7 @@ КонецФункции -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Функция НормализоватьКонтекст(Контекст) Если СтрНачинаетсяС(Контекст, "Клиент") Тогда @@ -295,7 +295,7 @@ КонецФункции -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Процедура ИнкрементСтатистики(Статистика, Статус, Знач Статусы = Неопределено) Если Статусы = Неопределено Тогда @@ -336,7 +336,7 @@ #Область Интерфейсное -&НаСервереБезКонтекста +&НаКлиенте Функция КартинкаСтатуса(Статус) Статусы = ЮТФабрика.СтатусыИсполненияТеста(); @@ -365,7 +365,7 @@ КонецФункции -&НаСервереБезКонтекста +&НаКлиенте Функция ПредставлениеСтатистики(Статистика) БлокиСтатистики = Новый Массив(); @@ -410,7 +410,7 @@ КонецФункции -&НаСервереБезКонтекста +&НаКлиенте Функция ГрафическоеПредставлениеСтатистики(Статистика) Текст = БлокиСтатистики(Статистика); @@ -419,7 +419,7 @@ КонецФункции -&НаСервереБезКонтекста +&НаКлиенте Функция БлокиСтатистики(Статистика) Блоки = Новый Массив(); @@ -492,6 +492,7 @@ СтрокаНабора.ПредставлениеВремяВыполнения = ЮТОбщий.ПредставлениеПродолжительности(Набор.Длительность); СтрокаНабора.ВремяВыполнения = Набор.Длительность; СтрокаНабора.ТипОбъекта = 2; + СтрокаНабора.Теги = СтрСоединить(Набор.Теги, ", "); ЗаполнитьОшибки(СтрокаНабора, Набор); @@ -502,6 +503,7 @@ СтрокаТеста = СтрокаНабора.ПолучитьЭлементы().Добавить(); ОтобразитьРезультатТеста(СтрокаТеста, Тест, Набор); + СтрокаТеста.Теги = СтрСоединить(Тест.Теги, ", "); Тест.Вставить("Идентификатор", СтрокаТеста.ПолучитьИдентификатор()); @@ -938,6 +940,7 @@ Блоки.Добавить(""); КонецПроцедуры + &НаСервереБезКонтекста Функция ЗаменитьСпецСимволы(Знач Стр) From 8796a2cdba2db002f2f9187875baf12c1b1ca1bc Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Mon, 13 May 2024 00:49:05 +0300 Subject: [PATCH 05/54] =?UTF-8?q?#61=20=D0=A4=D0=B8=D0=BB=D1=8C=D1=82?= =?UTF-8?q?=D1=80=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BF=D0=BE=20=D1=82=D0=B5?= =?UTF-8?q?=D0=B3=D0=B0=D0=BC=20=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D0=BD=D0=B3=20=D1=84=D0=B8=D0=BB=D1=8C=D1=82=D1=80?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B8=20=D1=80=D0=B5=D0=B3=D0=B8?= =?UTF-8?q?=D1=81=D1=82=D1=80=D0=B0=D1=86=D0=B8=D0=B8=20=D1=82=D0=B5=D1=81?= =?UTF-8?q?=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- exts/yaxunit/.settings/Default.cset | 6 +- .../Module.bsl" | 5 +- .../Module.bsl" | 7 +- .../Module.bsl" | 31 +- .../Module.bsl" | 136 ++++---- .../Module.bsl" | 13 +- .../Module.bsl" | 205 +++++++----- .../Module.bsl" | 14 +- ...0\265\321\201\321\202\320\276\320\262.mdo" | 1 + .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 5 +- .../Module.bsl" | 292 ++++++++++++++---- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 32 ++ ...0\265\321\201\321\202\320\276\320\262.mdo" | 11 + tests/src/Configuration/Configuration.mdo | 1 + 20 files changed, 523 insertions(+), 248 deletions(-) create mode 100644 "tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" create mode 100644 "tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" diff --git a/exts/yaxunit/.settings/Default.cset b/exts/yaxunit/.settings/Default.cset index e17003ccb..c1197d704 100644 --- a/exts/yaxunit/.settings/Default.cset +++ b/exts/yaxunit/.settings/Default.cset @@ -1,8 +1,4 @@ { "version": 1, - "settings": { - "common-module-type": { - "enabled": false - } - } + "settings": {} } \ No newline at end of file diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 51d5db8ff..aeea92987 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -144,10 +144,9 @@ // // Параметры: // МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля -// ИсполняемыеСценарии - см. ЮТТесты.СценарииМодуля -Процедура ПослеЧтенияСценариевМодуля(МетаданныеМодуля, ИсполняемыеСценарии) Экспорт +Процедура ПослеЧтенияСценариевМодуля(ОписаниеТестовогоМодуля) Экспорт - ЮТЛогирование.Информация(СтрШаблон("Загрузка сценариев модуля завершена `%1`", МетаданныеМодуля.Имя)); + ЮТЛогирование.Информация(СтрШаблон("Загрузка сценариев модуля завершена `%1`", ОписаниеТестовогоМодуля.МетаданныеМодуля.Имя)); КонецПроцедуры diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index cc1d3aeea..e7a318880 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -211,11 +211,10 @@ // После чтения сценариев модуля. // Позволяет настроить/обработать параметры загруженных настроек тестов модуля // Параметры: -// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля -// ИсполняемыеСценарии - см. ЮТТестыСлужебный.СценарииМодуля -Процедура ПослеЧтенияСценариевМодуля(МетаданныеМодуля, ИсполняемыеСценарии) Экспорт +// ОписаниеТестовогоМодуля - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля +Процедура ПослеЧтенияСценариевМодуля(ОписаниеТестовогоМодуля) Экспорт - Параметры = ЮТКоллекции.ЗначениеВМассиве(МетаданныеМодуля, ИсполняемыеСценарии); + Параметры = ЮТКоллекции.ЗначениеВМассиве(ОписаниеТестовогоМодуля); ВызватьПодключаемыйОбработчикСобытия("ПослеЧтенияСценариевМодуля", "ЗагрузкаТестов", Параметры); КонецПроцедуры diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" index df772a099..254d53128 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" @@ -37,6 +37,13 @@ КонецФункции +Функция Тег(ИмяТега) Экспорт + + ЮТТестыСлужебный.ДобавитьТег(ИмяТега); + + Возврат ЮТТесты; + +КонецФункции // Регистрирует тест, исполняемый в контекстах, в которых доступен тестовый модуль. // Например // @@ -105,7 +112,7 @@ // ОбщийМодуль - Этот же модуль Функция НастройкаИсполнения(ИмяПараметра, Значение) Экспорт - ЮТТестыСлужебный.НастройкаИсполнения(ИмяПараметра, Значение); + ЮТТестыСлужебный.УстановитьНастройкуИсполнения(ИмяПараметра, Значение); Возврат ЮТТесты; @@ -120,7 +127,7 @@ // ОбщийМодуль - Этот же модуль Функция ВТранзакции(ВыполнятьВТранзакции = Истина) Экспорт - ЮТТестыСлужебный.НастройкаИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().ВТранзакции, ВыполнятьВТранзакции); + ЮТТестыСлужебный.УстановитьНастройкуИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().ВТранзакции, ВыполнятьВТранзакции); Возврат ЮТТесты; @@ -141,7 +148,7 @@ // ОбщийМодуль - Этот же модуль Функция УдалениеТестовыхДанных(УдалятьСозданныеДанные = Истина) Экспорт - ЮТТестыСлужебный.НастройкаИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().УдалениеТестовыхДанных, УдалятьСозданныеДанные); + ЮТТестыСлужебный.УстановитьНастройкуИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().УдалениеТестовыхДанных, УдалятьСозданныеДанные); Возврат ЮТТесты; @@ -156,7 +163,7 @@ // ОбщийМодуль - Этот же модуль Функция Перед(ВыполнитьПеред = "") Экспорт - ЮТТестыСлужебный.НастройкаИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().Перед, ВыполнитьПеред); + ЮТТестыСлужебный.УстановитьНастройкуИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().Перед, ВыполнитьПеред); Возврат ЮТТесты; @@ -171,7 +178,7 @@ // ОбщийМодуль - Этот же модуль Функция После(ВыполнитьПосле = "") Экспорт - ЮТТестыСлужебный.НастройкаИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().После, ВыполнитьПосле); + ЮТТестыСлужебный.УстановитьНастройкуИсполнения(ЮТФабрика.ПараметрыИсполненияТеста().После, ВыполнитьПосле); Возврат ЮТТесты; @@ -361,4 +368,18 @@ КонецФункции +// Используется для вызова произвольной функции внутри текучего интерфейса +// +// Параметры: +// _ - Произвольный +// +// Возвращаемое значение: +// CommonModule.ЮТТесты - Вызыов +//@skip-check bsl-variable-name-invalid +Функция Вызыов(_) Экспорт + + Возврат ЮТТесты; + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index dc0a45cca..4fa1a51b8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -20,39 +20,35 @@ Процедура ДобавитьТестовыйНабор(Имя, ТегиСтрокой) Экспорт - ИсполняемыеСценарии = СценарииМодуля(); - - Если НЕ ЭтоИсполняемыеСценарии(ИсполняемыеСценарии) Тогда - ВызватьИсключение "Первый параметр должен быть результатом метода ЮТТесты.ИсполняемыеСценарии"; - КонецЕсли; - Если ПустаяСтрока(Имя) Тогда ВызватьИсключение "Имя тестового набора не может быть пустым"; КонецЕсли; Контекст = Контекст(); - НовыйТестовыйНабор = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(Имя, ТегиСтрокой); - ИсполняемыеСценарии.ТестовыеНаборы.Добавить(НовыйТестовыйНабор); - Контекст.ТекущийНабор = НовыйТестовыйНабор; - Контекст.ТекущийЭлемент = НовыйТестовыйНабор; + Если Контекст = Неопределено ИЛИ НЕ Контекст.Свойство("ОписаниеМодуля") Тогда + ВызватьИсключение "Не инициализирован контекст регистрации тестов"; + КонецЕсли; + + ТестовыйНабор = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(Имя, ТегиСтрокой); + + Контекст.ОписаниеМодуля.НаборыТестов.Добавить(ТестовыйНабор); + Контекст.ТекущийНабор = ТестовыйНабор; + Контекст.ТекущийЭлемент = ТестовыйНабор; КонецПроцедуры Процедура ДобавитьТест(ИмяТестовогоМетода, ПредставлениеТеста, ТегиСтрокой, Контексты) Экспорт + Если ПустаяСтрока(ИмяТестовогоМетода) Тогда + ВызватьИсключение "Имя тестового метода не может быть пустым"; + КонецЕсли; + Контекст = Контекст(); Набор = Контекст.ТекущийНабор; - ЭтоИсполняемыеСценарии = ЭтоИсполняемыеСценарии(Набор); - ЭтоТестовыйНабор = ЭтоТестовыйНабор(Набор); - - Если НЕ (ЭтоИсполняемыеСценарии ИЛИ ЭтоТестовыйНабор) Тогда - ВызватьИсключение "Первый параметр должен быть результатом метода ЮТТесты.ИсполняемыеСценарии или ЮТТесты.ТестовыйНабор"; - КонецЕсли; - - Если ПустаяСтрока(ИмяТестовогоМетода) Тогда - ВызватьИсключение "Имя тестового метода не может быть пустым"; + Если Набор = Неопределено Или НЕ Набор.Свойство("Тесты") Тогда + ВызватьИсключение "Не установлен тестовый набор. Скорее всего проблема в движке"; КонецЕсли; Тест = ОписаниеТеста(ИмяТестовогоМетода, ПредставлениеТеста, ТегиСтрокой, Контексты); @@ -74,7 +70,7 @@ КонецПроцедуры -Процедура НастройкаИсполнения(ИмяПараметра, Значение) Экспорт +Процедура УстановитьНастройкуИсполнения(ИмяПараметра, Значение) Экспорт Контекст = Контекст(); @@ -150,6 +146,13 @@ КонецПроцедуры +Процедура ДобавитьТег(ИмяТега) Экспорт + + ТекущийЭлемент = Контекст().ТекущийЭлемент; + ТекущийЭлемент.Теги.Добавить(ИмяТега); + +КонецПроцедуры + Функция КонтекстыВызоваКлиента() Экспорт Режимы = ЮТФабрика.КонтекстыВызова(); @@ -161,28 +164,21 @@ // // Возвращаемое значение: // см. ИсполняемыеСценарии -Функция СценарииМодуля() Экспорт - - СценарииМодуля = Контекст().ИсполняемыеСценарии; - - Результат = Новый Структура("ТестовыеНаборы, НастройкиВыполнения, Зависимости"); - Результат.ТестовыеНаборы = СценарииМодуля.ТестовыеНаборы; +Функция ОписаниеМодуля() Экспорт - // TODO Нужен рефакторинг - Результат.НастройкиВыполнения = ЮТКоллекции.СкопироватьРекурсивно(СценарииМодуля.НастройкиВыполнения); - Результат.Зависимости = ЮТКоллекции.СкопироватьРекурсивно(СценарииМодуля.Зависимости); - - СценарииМодуля.НастройкиВыполнения.Очистить(); // Костыль. Очистка первого набора, тк перенесено в модуль - СценарииМодуля.Зависимости.Очистить(); // Костыль. Очистка первого набора, тк перенесено в модуль - - //@skip-check constructor-function-return-section - Возврат Результат; + Возврат Контекст().ОписаниеМодуля; КонецФункции +// Контекст. +// +// Возвращаемое значение: +// Структура - Контекст: +// * ОписаниеМодуля - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля Функция Контекст() Экспорт - Возврат ЮТКонтекстСлужебный.ЗначениеКонтекста("КонтекстРегистрацияТестов"); + //@skip-check constructor-function-return-section + Возврат ЮТКонтекстСлужебный.ЗначениеКонтекста(ИмяКонтекста()); КонецФункции @@ -191,14 +187,12 @@ Процедура ПередЧтениемСценариевМодуля(МетаданныеМодуля) Экспорт ИнициализироватьКонтекст(МетаданныеМодуля); - ЮТСобытияСлужебный.ПередЧтениемСценариевМодуля(МетаданныеМодуля); КонецПроцедуры -Процедура ПослеЧтенияСценариевМодуля() Экспорт +Процедура ПослеЧтенияСценариевМодуля(ОписаниеТестовогоМодуля) Экспорт - Контекст = Контекст(); - ЮТСобытияСлужебный.ПослеЧтенияСценариевМодуля(Контекст.МетаданныеМодуля, Контекст.ИсполняемыеСценарии); + ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(ИмяКонтекста(), Неопределено); КонецПроцедуры @@ -208,36 +202,27 @@ #Область СлужебныеПроцедурыИФункции -// Исполняемые сценарии. -// +// Новое описание тестового модуля. +// // Параметры: // МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля -// +// // Возвращаемое значение: -// Структура - Исполняемые сценарии: -// * ТестовыеНаборы - Массив из см. ЮТФабрикаСлужебный.ОписаниеТестовогоНабора - Тестовые наборы модуля -// * НастройкиВыполнения - Структура - Настройки исполнения тестов модуля -// * Зависимости - Массив Из см. ЮТФабрика.НовоеОписаниеЗависимости - Зависимости тестового модуля -Функция ИсполняемыеСценарии(МетаданныеМодуля) - - Структура = Новый Структура; - Структура.Вставить("ТестовыеНаборы", Новый Массив); - Структура.Вставить("НастройкиВыполнения", Новый Структура); - Структура.Вставить("Зависимости", Новый Массив); +// см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля +Функция НовоеОписаниеТестовогоМодуля(МетаданныеМодуля) - Набор = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(МетаданныеМодуля.Имя); - Набор.НастройкиВыполнения = Структура.НастройкиВыполнения; // Общие настройки с набором по умолчанию - Набор.Зависимости = Структура.Зависимости; // Общие зависимости с набором по умолчанию + ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля(МетаданныеМодуля, Новый Массив); - Структура.ТестовыеНаборы.Добавить(Набор); + НаборПоУмолчанию = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(МетаданныеМодуля.Имя); + ОписаниеМодуля.НаборыТестов.Добавить(НаборПоУмолчанию); - Возврат Структура; + Возврат ОписаниеМодуля; КонецФункции Функция КонтекстыВызоваПоУмолчанию() - Возврат ЮТФабрикаСлужебный.КонтекстыМодуля(Контекст().МетаданныеМодуля); + Возврат ЮТФабрикаСлужебный.КонтекстыМодуля(Контекст().ОписаниеМодуля.МетаданныеМодуля); КонецФункции @@ -249,20 +234,6 @@ КонецФункции -Функция ЭтоИсполняемыеСценарии(ИсполняемыеСценарии) - - Возврат ТипЗнч(ИсполняемыеСценарии) = Тип("Структура") - И ТипЗнч(ЮТКоллекции.ЗначениеСтруктуры(ИсполняемыеСценарии, "ТестовыеНаборы")) = Тип("Массив"); - -КонецФункции - -Функция ЭтоТестовыйНабор(ТестовыйНабор) - - Возврат ТипЗнч(ТестовыйНабор) = Тип("Структура") - И ТипЗнч(ЮТКоллекции.ЗначениеСтруктуры(ТестовыйНабор, "Тесты")) = Тип("Массив"); - -КонецФункции - Функция ЭтоОписаниеТеста(Описание) Возврат ТипЗнч(Описание) = Тип("Структура") @@ -284,18 +255,17 @@ Процедура ИнициализироватьКонтекст(МетаданныеМодуля) - ИсполняемыеСценарии = ИсполняемыеСценарии(МетаданныеМодуля); - Набор = ИсполняемыеСценарии.ТестовыеНаборы[0]; + ОписаниеМодуля = НовоеОписаниеТестовогоМодуля(МетаданныеМодуля); + НаборПоУмолчанию = ОписаниеМодуля.НаборыТестов[0]; Контекст = Новый Структура(); - Контекст.Вставить("МетаданныеМодуля", МетаданныеМодуля); - Контекст.Вставить("ИсполняемыеСценарии", ИсполняемыеСценарии); - Контекст.Вставить("ТекущийНабор", Набор); - Контекст.Вставить("ТекущийЭлемент", Набор); + Контекст.Вставить("ОписаниеМодуля", ОписаниеМодуля); + Контекст.Вставить("ТекущийНабор", НаборПоУмолчанию); + Контекст.Вставить("ТекущийЭлемент", ОписаниеМодуля); Контекст.Вставить("БазовыйТест", Неопределено); - ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста("КонтекстРегистрацияТестов", Контекст); + ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(ИмяКонтекста(), Контекст); КонецПроцедуры @@ -313,4 +283,10 @@ КонецФункции +Функция ИмяКонтекста() + + Возврат "КонтекстРегистрацияТестов"; + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 841bccec0..a0b4d7868 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -122,9 +122,12 @@ Описание.Вставить("Имя", Строка(Имя)); Описание.Вставить("Представление", Строка(Имя)); - Описание.Вставить("Теги", СтрРазделить(ТегиСтрокой, ", ", Ложь)); Описание.Вставить("Тесты", Новый Массив); + Если ЗначениеЗаполнено(ТегиСтрокой) Тогда + Описание.Теги = СтрРазделить(ТегиСтрокой, ", ", Ложь); + КонецЕсли; + Возврат Описание; КонецФункции @@ -143,7 +146,7 @@ // * Имя - Строка - Имя теста (тестового метода) // * Представление - Строка - Представление теста // * Теги - Массив из Строка - Теги теста -// * КонтекстВызова - Массив из Строка - Контексты исполнения теста +// * КонтекстВызова - Массив из Строка - Контексты исполнения теста, см. ЮТФабрика.КонтекстыВызова // * НастройкиВыполнения- Структура - Настройки исполнения теста // * Параметры - Неопределено, Массив из Произвольный - Параметры теста // * НомерВНаборе - Число - Порядковый номер теста в наборе @@ -158,11 +161,14 @@ Описание = БазовоеОписаниеРегистрируемогоОбъекта(); Описание.Вставить("Имя", Строка(Имя)); Описание.Вставить("Представление", Строка(Представление)); - Описание.Вставить("Теги", СтрРазделить(ТегиСтрокой, ", ", Ложь)); Описание.Вставить("КонтекстВызова", КонтекстыВызова); Описание.Вставить("Параметры", Неопределено); Описание.Вставить("НомерВНаборе", 0); + Если ЗначениеЗаполнено(ТегиСтрокой) Тогда + Описание.Теги = СтрРазделить(ТегиСтрокой, ", ", Ложь); + КонецЕсли; + Возврат Описание; КонецФункции @@ -705,6 +711,7 @@ Описание.Вставить("НастройкиВыполнения", Новый Структура()); Описание.Вставить("Зависимости", Новый Массив()); Описание.Вставить("Ошибки", Новый Массив); + Описание.Вставить("Теги", Новый Массив); Возврат Описание; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 54d6fbce5..2492a9375 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -41,88 +41,44 @@ // Отфильтровать тестовые наборы. // // Параметры: -// ТестовыеНаборы - Массив из см. ЮТФабрикаСлужебный.ОписаниеТестовогоНабора - Тестовые наборы -// ОписаниеМодуля - Структура - Описание модуля, которому принадлежат наборы, см. ЮТФабрикаСлужебный.ОписаниеМодуля -// -// Возвращаемое значение: -// Массив из см. ЮТФабрикаСлужебный.ОписаниеТестовогоНабора - Отфильтрованные наборы -Функция ОтфильтроватьТестовыеНаборы(ТестовыеНаборы, ОписаниеМодуля) Экспорт +// ОписаниеТестовогоМодуля - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля +Процедура ОтфильтроватьТестовыеНаборы(ОписаниеТестовогоМодуля) Экспорт - Контекст = ЮТКонтекстСлужебный.КонтекстЧитателя(); + Фильтр = ЮТКонтекстСлужебный.КонтекстЧитателя().Фильтр; - Если НЕ Контекст.Фильтр.ЕстьФильтрТестов И НЕ Контекст.Фильтр.ЕстьФильтрКонтекстов Тогда - Возврат ТестовыеНаборы; + Если НЕ Фильтр.ЕстьФильтрТестов И НЕ Фильтр.ЕстьФильтрКонтекстов И НЕ Фильтр.ЕстьФильтрТегов Тогда + Возврат; КонецЕсли; + НаборыТестов = ОписаниеТестовогоМодуля.НаборыТестов; + МетаданныеМодуля = ОписаниеТестовогоМодуля.МетаданныеМодуля; + Результат = Новый Массив(); - Если Контекст.Фильтр.ЕстьФильтрТестов Тогда - ДоступныеТестовыеМетоды = Новый Соответствие(); - - Для Каждого ОписаниеИмениТеста Из Контекст.Фильтр.Тесты Цикл - - Если СтрСравнить(ОписаниеИмениТеста.ИмяМодуля, ОписаниеМодуля.Имя) = 0 Тогда - ОписаниеИмениТеста.ИмяМетода = ВРег(ОписаниеИмениТеста.ИмяМетода); - - СохраненноеОписаниеИмени = ДоступныеТестовыеМетоды[ОписаниеИмениТеста.ИмяМетода]; - - Если СохраненноеОписаниеИмени = Неопределено И ОписаниеИмениТеста.Контекст = Неопределено Тогда - ДоступныеТестовыеМетоды.Вставить(ВРег(ОписаниеИмениТеста.ИмяМетода), ОписаниеИмениТеста); - ИначеЕсли СохраненноеОписаниеИмени = Неопределено Тогда - ОписаниеИмениТеста.Контекст = ЮТКоллекции.ЗначениеВМассиве(ОписаниеИмениТеста.Контекст); - ДоступныеТестовыеМетоды.Вставить(ВРег(ОписаниеИмениТеста.ИмяМетода), ОписаниеИмениТеста); - ИначеЕсли ОписаниеИмениТеста.Контекст = Неопределено Тогда - СохраненноеОписаниеИмени.Контекст = Неопределено; // Без фильтрации контекста теста, возьмом из самого теста контексты - ИначеЕсли СохраненноеОписаниеИмени.Контекст <> Неопределено Тогда - СохраненноеОписаниеИмени.Контекст.Добавить(ОписаниеИмениТеста.Контекст); - Иначе - // Если было имя теста без контекста, то будет вызов во всех контекстах - КонецЕсли; - КонецЕсли; - - КонецЦикла; - - КонецЕсли; + СостояниеФильтрации = Новый Структура; + ДоступныеТестовыеМетоды(Фильтр, МетаданныеМодуля, СостояниеФильтрации); - Для Каждого Набор Из ТестовыеНаборы Цикл + Для Каждого Набор Из НаборыТестов Цикл ОтфильтрованныйНабор = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(Набор.Имя); ЗаполнитьЗначенияСвойств(ОтфильтрованныйНабор, Набор, , "Тесты"); + ОбработатьТегиНабора(ОписаниеТестовогоМодуля, Набор, Фильтр, СостояниеФильтрации); + Для Каждого Тест Из Набор.Тесты Цикл - КонтекстыТеста = Неопределено; + ТестПодходитПодФильтр = ФильтрТестов(Тест, Фильтр, СостояниеФильтрации) + И ФильтрКонтекста(Тест, Фильтр) + И ФильтрТегов(Тест, Фильтр, СостояниеФильтрации); - Если ДоступныеТестовыеМетоды <> Неопределено Тогда - ОписаниеИмениТеста = ДоступныеТестовыеМетоды[ВРег(Тест.Имя)]; + Если ТестПодходитПодФильтр Тогда - Если ОписаниеИмениТеста = Неопределено Тогда - Продолжить; - КонецЕсли; + ОтфильтрованныйТест = ЮТФабрикаСлужебный.ОписаниеТеста(Тест.Имя, "", ""); + ЗаполнитьЗначенияСвойств(ОтфильтрованныйТест, Тест); + ОтфильтрованныйНабор.Тесты.Добавить(ОтфильтрованныйТест); - КонтекстыТеста = ОписаниеИмениТеста.Контекст; - - КонецЕсли; - - Если КонтекстыТеста = Неопределено Тогда - КонтекстыТеста = Тест.КонтекстВызова; КонецЕсли; - Если Контекст.Фильтр.ЕстьФильтрКонтекстов Тогда - КонтекстыТеста = ЮТКоллекции.ПересечениеМассивов(КонтекстыТеста, Контекст.Фильтр.Контексты); - КонецЕсли; - - Если КонтекстыТеста.Количество() = 0 Тогда - // Возможно стоит такие выводить в лог с ошибкой "по переданным параметрам контекст теста не определен" - Продолжить; - КонецЕсли; - - ОтфильтрованныйТест = ЮТФабрикаСлужебный.ОписаниеТеста(Тест.Имя, "", ""); - ЗаполнитьЗначенияСвойств(ОтфильтрованныйТест, Тест, , "КонтекстВызова"); - ОтфильтрованныйТест.КонтекстВызова = КонтекстыТеста; - - ОтфильтрованныйНабор.Тесты.Добавить(ОтфильтрованныйТест); - КонецЦикла; Если ОтфильтрованныйНабор.Тесты.Количество() Тогда @@ -131,9 +87,9 @@ КонецЦикла; - Возврат Результат; + ОписаниеТестовогоМодуля.НаборыТестов = Результат; -КонецФункции +КонецПроцедуры // Фильтр // Конструктур фильтра поиска тестовых методов @@ -154,7 +110,7 @@ Фильтр.Расширения = Новый Структура(); Фильтр.Модули = Новый Структура(); - Фильтр.Теги = Новый Массив(); + Фильтр.Теги = Новый Структура(); Фильтр.Контексты = Новый Массив(); Фильтр.Наборы = Новый Массив(); Фильтр.Пути = Новый Массив(); @@ -191,7 +147,7 @@ КонецЕсли; Если ЗначениеЗаполнено(Теги) Тогда - Фильтр.Теги = Теги; + Фильтр.Теги = МассивВСтруктуру(Теги); КонецЕсли; Если ЗначениеЗаполнено(Наборы) Тогда @@ -232,8 +188,9 @@ Фильтр.Вставить("ЕстьФильтрРасширений", Фильтр.Расширения.Количество() > 0); Фильтр.Вставить("ЕстьФильтрМодулей", МодулиТестов.Количество() ИЛИ Фильтр.Модули.Количество()); - Фильтр.Вставить("ЕстьФильтрТестов", Фильтр.Тесты.Количество()); + Фильтр.Вставить("ЕстьФильтрТестов", Фильтр.Тесты.Количество() > 0 ); Фильтр.Вставить("ЕстьФильтрКонтекстов", ЗначениеЗаполнено(Фильтр.Контексты)); + Фильтр.Вставить("ЕстьФильтрТегов", ЗначениеЗаполнено(Фильтр.Теги)); ЮТКонтекстСлужебный.УстановитьКонтекстЧитателя(Новый Структура("Фильтр", Фильтр)); @@ -291,4 +248,114 @@ КонецФункции +Процедура ДоступныеТестовыеМетоды(Фильтр, ОписаниеМодуля, СостояниеФильтрации) + + Если НЕ Фильтр.ЕстьФильтрТестов Тогда + Возврат; + КонецЕсли; + + ДоступныеТестовыеМетоды = Новый Соответствие(); + + Для Каждого ОписаниеИмениТеста Из Фильтр.Тесты Цикл + + Если СтрСравнить(ОписаниеИмениТеста.ИмяМодуля, ОписаниеМодуля.Имя) = 0 Тогда + ОписаниеИмениТеста.ИмяМетода = ВРег(ОписаниеИмениТеста.ИмяМетода); + + СохраненноеОписаниеИмени = ДоступныеТестовыеМетоды[ОписаниеИмениТеста.ИмяМетода]; + + Если СохраненноеОписаниеИмени = Неопределено И ОписаниеИмениТеста.Контекст = Неопределено Тогда + ДоступныеТестовыеМетоды.Вставить(ВРег(ОписаниеИмениТеста.ИмяМетода), ОписаниеИмениТеста); + ИначеЕсли СохраненноеОписаниеИмени = Неопределено Тогда + ОписаниеИмениТеста.Контекст = ЮТКоллекции.ЗначениеВМассиве(ОписаниеИмениТеста.Контекст); + ДоступныеТестовыеМетоды.Вставить(ВРег(ОписаниеИмениТеста.ИмяМетода), ОписаниеИмениТеста); + ИначеЕсли ОписаниеИмениТеста.Контекст = Неопределено Тогда + СохраненноеОписаниеИмени.Контекст = Неопределено; // Без фильтрации контекста теста, возьмом из самого теста контексты + ИначеЕсли СохраненноеОписаниеИмени.Контекст <> Неопределено Тогда + СохраненноеОписаниеИмени.Контекст.Добавить(ОписаниеИмениТеста.Контекст); + Иначе + // Если было имя теста без контекста, то будет вызов во всех контекстах + КонецЕсли; + КонецЕсли; + + КонецЦикла; + + СостояниеФильтрации.Вставить("ДоступныеТестовыеМетоды", ДоступныеТестовыеМетоды); + +КонецПроцедуры + +Процедура ОбработатьТегиНабора(ОписаниеМодуля, Набор, Фильтр, СостояниеФильтрации) + + Если НЕ Фильтр.ЕстьФильтрТегов Тогда + Возврат; + КонецЕсли; + + ПодходитПодФильтрТегов = ПодходитПодФильтрТегов(Фильтр, ОписаниеМодуля.Теги) Или ПодходитПодФильтрТегов(Фильтр, Набор.Теги); + СостояниеФильтрации.Вставить("ПодходитПодФильтрТегов", ПодходитПодФильтрТегов); + +КонецПроцедуры + +Функция ПодходитПодФильтрТегов(Фильтр, Теги) + + Для Каждого Тег Из Теги Цикл + + Если Фильтр.Теги.Свойство(Тег) Тогда + Возврат Истина; + КонецЕсли; + + КонецЦикла; + + Возврат Ложь; + +КонецФункции + +Функция ФильтрТестов(Тест, Фильтр, СостояниеФильтрации) + + Если НЕ Фильтр.ЕстьФильтрТестов Тогда + Возврат Истина; + КонецЕсли; + + ФильтрТеста = СостояниеФильтрации.ДоступныеТестовыеМетоды[ВРег(Тест.Имя)]; + + Если ФильтрТеста = Неопределено Тогда + Возврат Ложь; + КонецЕсли; + + Если ЗначениеЗаполнено(ФильтрТеста.Контекст) Тогда + Тест.КонтекстВызова = ЮТКоллекции.ПересечениеМассивов(Тест.КонтекстВызова, ФильтрТеста.Контекст); + КонецЕсли; + + Возврат ЗначениеЗаполнено(Тест.КонтекстВызова); + +КонецФункции + +Функция ФильтрКонтекста(Тест, Фильтр) + + Если НЕ Фильтр.ЕстьФильтрКонтекстов Тогда + Возврат Истина; + КонецЕсли; + + Тест.КонтекстВызова = ЮТКоллекции.ПересечениеМассивов(Тест.КонтекстВызова, Фильтр.Контексты); + + Возврат ЗначениеЗаполнено(Тест.КонтекстВызова); + +КонецФункции + +Функция ФильтрТегов(Тест, Фильтр, СостояниеФильтрации) + + Если НЕ Фильтр.ЕстьФильтрТегов Или СостояниеФильтрации.ПодходитПодФильтрТегов Тогда + Возврат Истина; + КонецЕсли; + + Для Каждого Тег Из Тест.Теги Цикл + + Если Фильтр.Теги.Свойство(Тег) Тогда + Возврат Истина; + КонецЕсли; + + КонецЦикла; + + Возврат Ложь; + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 3aeea5960..114a5ea1a 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -62,9 +62,8 @@ Функция ИсполняемыеСценарииМодуля(Знач МетаданныеМодуля) Экспорт ЭтоТестовыйМодуль = Истина; - ОписаниеТестовогоМодуля = ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля(МетаданныеМодуля, Новый Массив); - ЮТТестыСлужебный.ПередЧтениемСценариевМодуля(МетаданныеМодуля); + ЮТСобытияСлужебный.ПередЧтениемСценариевМодуля(МетаданныеМодуля); ПолноеИмяМетода = МетаданныеМодуля.Имя + "." + ИмяМетодаСценариев(); Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода); @@ -88,16 +87,15 @@ НаборПоУмолчанию = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(МетаданныеМодуля.Имя); ЮТРегистрацияОшибокСлужебный.ЗарегистрироватьОшибкуЧтенияТестов(НаборПоУмолчанию, "Ошибка формирования списка тестовых методов", Ошибка); + + ОписаниеТестовогоМодуля = ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля(МетаданныеМодуля, Новый Массив); ОписаниеТестовогоМодуля.НаборыТестов.Добавить(НаборПоУмолчанию); ИначеЕсли ЭтоТестовыйМодуль Тогда - ЮТТестыСлужебный.ПослеЧтенияСценариевМодуля(); - Сценарии = ЮТТестыСлужебный.СценарииМодуля(); - - ОписаниеТестовогоМодуля.НаборыТестов = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Сценарии.ТестовыеНаборы, МетаданныеМодуля); - ОписаниеТестовогоМодуля.НастройкиВыполнения = Сценарии.НастройкиВыполнения; - ОписаниеТестовогоМодуля.Зависимости = Сценарии.Зависимости; + ОписаниеТестовогоМодуля = ЮТТестыСлужебный.ОписаниеМодуля(); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеТестовогоМодуля); + ЮТСобытияСлужебный.ПослеЧтенияСценариевМодуля(ОписаниеТестовогоМодуля); Иначе diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" index b1bc26337..dd4c1b2ec 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" @@ -6,5 +6,6 @@ Загрузка тестов true + CommonModule.ЮТТестыСлужебный Subsystem.ЮТПодключаемыеМодули.Subsystem.ОбработчикиСобытий diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" index b44f7343a..f9cb364eb 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" @@ -20,7 +20,7 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты + ЮТТесты.Тег("Мокирование") .ДобавитьТест("Обучение") .ДобавитьТест("Обучение_ЦепочкаВызовов") .ДобавитьТест("Проверить") diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\236\320\261\321\203\321\207\320\265\320\275\320\270\320\265/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\236\320\261\321\203\321\207\320\265\320\275\320\270\320\265/Module.bsl" index ec3b4477b..ebd4389f1 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\236\320\261\321\203\321\207\320\265\320\275\320\270\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\236\320\261\321\203\321\207\320\265\320\275\320\270\320\265/Module.bsl" @@ -20,7 +20,7 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты + ЮТТесты.Тег("Мокирование") .ДобавитьТест("ВыброситьИсключение") .ДобавитьСерверныйТест("ФормированиеТипыПерехватываемыхОбъектов") ; diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 3cd44a130..8b32adcab 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -20,7 +20,7 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты + ЮТТесты.Тег("Мокирование") .ДобавитьТест("ДанныеПерехвата") ; diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" index 8bf200661..33d020e71 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" @@ -20,7 +20,8 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты.УдалениеТестовыхДанных() + ЮТТесты.Вызов(ТегиТестов.Мокирование()) + .УдалениеТестовыхДанных() .ДобавитьТест("ЗаполнитьСправочник") .ДобавитьТест("ЗаполнитьДокумент") .ДобавитьТест("СоздатьЗаписьРегистраСведений") @@ -32,7 +33,7 @@ .ДобавитьТест("СоздатьГруппу") .ДобавитьТест("УстановитьРеквизиты") .ДобавитьТест("УстановитьСсылкуНового") - ; + ; КонецПроцедуры diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index cc1127ed4..588817c02 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -24,34 +24,40 @@ .ДобавитьТест("ЭтоПодходящееРасширение") .ДобавитьТест("ЭтоПодходящийМодуль") .ДобавитьТест("ОтфильтроватьТестовыеНаборы") - ; + .Добавитьтест("Фильтр_ПолноеИмяТеста") + .Добавитьтест("Фильтр_Контексты") + .Добавитьтест("Фильтр_ТегиМодуля") + .Добавитьтест("Фильтр_ТегиНабора") + .Добавитьтест("Фильтр_ТегиТеста") + ; КонецПроцедуры Процедура ЭтоПодходящееРасширение() Экспорт - Варианты = Новый Массив(); - Ключи = "ИмяРасширения, Параметры, Результат, Описание"; + Варианты = ЮТест.Варианты("ИмяРасширения, Параметры, Результат, Описание"); + Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.extensions = ЮТКоллекции.ЗначениеВМассиве("test", "тесты"); - Варианты.Добавить(Новый Структура(Ключи, "test", Параметры, Истина, "Простой кейс")); - Варианты.Добавить(Новый Структура(Ключи, "TeST", Параметры, Истина, "Изменен регистр")); - Варианты.Добавить(Новый Структура(Ключи, "тесты", Параметры, Истина, "Второе расширение")); - Варианты.Добавить(Новый Структура(Ключи, "_test", Параметры, Ложь, "Отсутствующее расширение")); + Варианты.Добавить("test", Параметры, Истина, "Простой кейс"); + Варианты.Добавить("TeST", Параметры, Истина, "Изменен регистр"); + Варианты.Добавить("тесты", Параметры, Истина, "Второе расширение"); + Варианты.Добавить("_test", Параметры, Ложь, "Отсутствующее расширение"); Параметры = ЮТФабрика.ПараметрыЗапуска(); - Варианты.Добавить(Новый Структура(Ключи, "test", Параметры, Истина, "Без фильтр по расширениям 1")); - Варианты.Добавить(Новый Структура(Ключи, "_test", Параметры, Истина, "Без фильтр по расширениям 2")); + Варианты.Добавить("test", Параметры, Истина, "Без фильтр по расширениям 1"); + Варианты.Добавить("_test", Параметры, Истина, "Без фильтр по расширениям 2"); Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("test.method"); - Варианты.Добавить(Новый Структура(Ключи, "test", Параметры, Истина, "Фильтр по пути")); - Варианты.Добавить(Новый Структура(Ключи, "_test", Параметры, Истина, "Фильтр по пути, отпустствующее расширение")); + Варианты.Добавить("test", Параметры, Истина, "Фильтр по пути"); + Варианты.Добавить("_test", Параметры, Истина, "Фильтр по пути, отпустствующее расширение"); - Для Каждого Вариант Из Варианты Цикл + Для Каждого Вариант Из Варианты.СписокВариантов() Цикл - ЮТФильтрацияСлужебный.УстановитьКонтекст(Вариант.Параметры); + УстановитьФильтр(Вариант.Параметры); Результат = ЮТФильтрацияСлужебный.ЭтоПодходящееРасширение(Вариант.ИмяРасширения); + ЮТест.ОжидаетЧто(Результат, Вариант.Описание).Равно(Вариант.Результат); КонецЦикла; @@ -60,90 +66,66 @@ Процедура ЭтоПодходящийМодуль() Экспорт - Варианты = Новый Массив(); - Ключи = "ИмяМодуля, Параметры, Результат, Описание"; + Варианты = ЮТест.Варианты("ИмяМодуля, Параметры, Результат, Описание"); РасширениеПоУмолчанию = "__тесты___"; Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.modules = ЮТКоллекции.ЗначениеВМассиве("test", "тесты"); - Варианты.Добавить(Новый Структура(Ключи, "test", Параметры, Истина, "Простой кейс")); - Варианты.Добавить(Новый Структура(Ключи, "TeST", Параметры, Истина, "Изменен регистр")); - Варианты.Добавить(Новый Структура(Ключи, "тесты", Параметры, Истина, "Второй модуль")); - Варианты.Добавить(Новый Структура(Ключи, "_test", Параметры, Ложь, "Отсутствующий модуль")); + + Варианты.Добавить("test", Параметры, Истина, "Простой кейс"); + Варианты.Добавить("TeST", Параметры, Истина, "Изменен регистр"); + Варианты.Добавить("тесты", Параметры, Истина, "Второй модуль"); + Варианты.Добавить("_test", Параметры, Ложь, "Отсутствующий модуль"); Параметры = ЮТФабрика.ПараметрыЗапуска(); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Истина, "Без фильтр по `module`")); - Варианты.Добавить(Новый Структура(Ключи, "_module", Параметры, Истина, "Без фильтр по `_module`")); + + Варианты.Добавить("module", Параметры, Истина, "Без фильтр по `module`"); + Варианты.Добавить("_module", Параметры, Истина, "Без фильтр по `_module`"); Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.modules = ЮТКоллекции.ЗначениеВМассиве("module"); Параметры.filter.extensions = ЮТКоллекции.ЗначениеВМассиве(РасширениеПоУмолчанию); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Истина, "Фильтр по модулю и по расширению с пересечением")); + + Варианты.Добавить("module", Параметры, Истина, "Фильтр по модулю и по расширению с пересечением"); Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.modules = ЮТКоллекции.ЗначениеВМассиве("module"); Параметры.filter.extensions = ЮТКоллекции.ЗначениеВМассиве("тесты"); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Ложь, "Фильтр по модулю и по расширению без пересечения")); + Варианты.Добавить("module", Параметры, Ложь, "Фильтр по модулю и по расширению без пересечения"); // Фильтрация по именам тестовых методов Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("module.method"); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Истина, "Фильтр по имени теста")); - Варианты.Добавить(Новый Структура(Ключи, "_test", Параметры, Ложь, "Фильтр по имени теста, отсутствующему модулю")); + Варианты.Добавить("module", Параметры, Истина, "Фильтр по имени теста"); + Варианты.Добавить("_test", Параметры, Ложь, "Фильтр по имени теста, отсутствующему модулю"); Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("module.method"); Параметры.filter.extensions = ЮТКоллекции.ЗначениеВМассиве(РасширениеПоУмолчанию); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Истина, "Фильтр по имени теста и по расширению с пересечением")); + Варианты.Добавить("module", Параметры, Истина, "Фильтр по имени теста и по расширению с пересечением"); Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("module.method"); Параметры.filter.extensions = ЮТКоллекции.ЗначениеВМассиве("test"); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Ложь, "Фильтр по имени теста и по расширению без пересечения")); + Варианты.Добавить("module", Параметры, Ложь, "Фильтр по имени теста и по расширению без пересечения"); Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("module.method"); Параметры.filter.modules = ЮТКоллекции.ЗначениеВМассиве("module"); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Истина, "Фильтр по имени теста и по модулю с пересечением")); + Варианты.Добавить("module", Параметры, Истина, "Фильтр по имени теста и по модулю с пересечением"); Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("module.method"); Параметры.filter.modules = ЮТКоллекции.ЗначениеВМассиве("test"); - Варианты.Добавить(Новый Структура(Ключи, "module", Параметры, Ложь, "Фильтр по имени теста и по модулю без пересечения")); + Варианты.Добавить("module", Параметры, Ложь, "Фильтр по имени теста и по модулю без пересечения"); - Для Каждого Вариант Из Варианты Цикл - - ЮТФильтрацияСлужебный.УстановитьКонтекст(Вариант.Параметры); - ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеМодуля(); - ОписаниеМодуля.Имя = Вариант.ИмяМодуля; - ОписаниеМодуля.Расширение = РасширениеПоУмолчанию; - Результат = ЮТФильтрацияСлужебный.ЭтоПодходящийМодуль(ОписаниеМодуля); - ЮТест.ОжидаетЧто(Результат, Вариант.Описание + ". Имя модуля:" + Вариант.ИмяМодуля).Равно(Вариант.Результат); + Для Каждого Вариант Из Варианты.СписокВариантов() Цикл - КонецЦикла; - -КонецПроцедуры - -Процедура ЭтоПодходящийМетод() Экспорт - - Варианты = Новый Массив(); - Ключи = "ИмяМодуля, Параметры, Результат, Описание"; - РасширениеПоУмолчанию = "__тесты___"; - - Параметры = ЮТФабрика.ПараметрыЗапуска(); - Параметры.filter.modules = ЮТКоллекции.ЗначениеВМассиве("test", "тесты"); - Варианты.Добавить(Новый Структура(Ключи, "test", Параметры, Истина, "Простой кейс")); - Варианты.Добавить(Новый Структура(Ключи, "TeST", Параметры, Истина, "Изменен регистр")); - Варианты.Добавить(Новый Структура(Ключи, "тесты", Параметры, Истина, "Второй модуль")); - Варианты.Добавить(Новый Структура(Ключи, "_test", Параметры, Ложь, "Отсутствующий модуль")); - - Для Каждого Вариант Из Варианты Цикл + УстановитьФильтр(Вариант.Параметры); + ОписаниеМодуля = МетаданныеМодуля(Вариант.ИмяМодуля, РасширениеПоУмолчанию); - ЮТФильтрацияСлужебный.УстановитьКонтекст(Вариант.Параметры); - ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеМодуля(); - ОписаниеМодуля.Имя = Вариант.ИмяМодуля; - ОписаниеМодуля.Расширение = РасширениеПоУмолчанию; Результат = ЮТФильтрацияСлужебный.ЭтоПодходящийМодуль(ОписаниеМодуля); + ЮТест.ОжидаетЧто(Результат, Вариант.Описание + ". Имя модуля:" + Вариант.ИмяМодуля).Равно(Вариант.Результат); КонецЦикла; @@ -169,7 +151,7 @@ Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1"); - ЮТФильтрацияСлужебный.УстановитьКонтекст(Параметры); + УстановитьФильтр(Параметры); Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); ЮТест.ОжидаетЧто(Результат, "Результат фильтрации") @@ -189,7 +171,7 @@ // 2 Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1.Сервер"); - ЮТФильтрацияСлужебный.УстановитьКонтекст(Параметры); + УстановитьФильтр(Параметры); Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); ТестРезультата = Результат[0].Тесты[0]; @@ -200,7 +182,7 @@ // 3 Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1.ВызовСервера"); - ЮТФильтрацияСлужебный.УстановитьКонтекст(Параметры); + УстановитьФильтр(Параметры); Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); ЮТест.ОжидаетЧто(Результат, "Тест с указаниме недоступного контекста") @@ -210,7 +192,7 @@ Параметры = ЮТФабрика.ПараметрыЗапуска(); Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1.Сервер"); Параметры.filter.contexts = ЮТКоллекции.ЗначениеВМассиве(Контексты.КлиентУправляемоеПриложение); - ЮТФильтрацияСлужебный.УстановитьКонтекст(Параметры); + УстановитьФильтр(Параметры); Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); ЮТест.ОжидаетЧто(Результат, "Тест с указаниме контекста и фильтра контекстов") @@ -218,4 +200,188 @@ КонецПроцедуры +Процедура Фильтр_ПолноеИмяТеста() Экспорт + + ИмяМодуля = "ТестовыйМодуль"; + ИмяТеста = "ТестовыйТест"; + + ОписаниеМодуля = ОписаниеМодуля(ИмяМодуля); + НаборТестов = ОписаниеНабораТестов(); + НаборТестов.Тесты.Добавить(ОписаниеТеста(ИмяТеста)); + НаборТестов.Тесты.Добавить(ОписаниеТеста(ИмяТеста + "_")); + НаборТестов.Тесты.Добавить(ОписаниеТеста(ИмяТеста, "НеСервер")); + НаборТестов.Тесты.Добавить(ОписаниеТеста()); + ОписаниеМодуля.НаборыТестов.Добавить(НаборТестов); + + УстановитьНовыйФильтр(, СтрШаблон("%1.%2", ИмяМодуля, ИмяТеста)); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(1) + .Свойство("[0].Тесты").ИмеетДлину(1); + +КонецПроцедуры + +Процедура Фильтр_Контексты() Экспорт + + ОписаниеМодуля = ОписаниеМодуля(); + НаборТестов = ОписаниеНабораТестов(); + НаборТестов.Тесты.Добавить(ОписаниеТеста()); // + + НаборТестов.Тесты.Добавить(ОписаниеТеста(, "Сервер")); // + + НаборТестов.Тесты.Добавить(ОписаниеТеста(, "Сервер, Сервер")); // + + НаборТестов.Тесты.Добавить(ОписаниеТеста(, "Клиент")); + ОписаниеМодуля.НаборыТестов.Добавить(НаборТестов); + + УстановитьНовыйФильтр(, , "Сервер"); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(1) + .Свойство("[0].Тесты").ИмеетДлину(3); + +КонецПроцедуры + +Процедура Фильтр_ТегиТеста() Экспорт + + ОписаниеМодуля = ОписаниеМодуля(); + НаборТестов = ОписаниеНабораТестов(); + НаборТестов.Тесты.Добавить(ОписаниеТеста()); + НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег1")); + НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег1, Тег2")); + НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег2")); + НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег11")); + ОписаниеМодуля.НаборыТестов.Добавить(НаборТестов); + + УстановитьНовыйФильтр(, , , "Тег1, Тег2, Т, _, Тег111"); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(1) + .Свойство("[0].Тесты").ИмеетДлину(3); + +КонецПроцедуры + +Процедура Фильтр_ТегиНабора() Экспорт + + Набор1 = ОписаниеНабораТестов(); + Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("ТегНабора"); + Набор1.Тесты.Добавить(ОписаниеТеста()); + Набор1.Тесты.Добавить(ОписаниеТеста()); + + Набор2 = ОписаниеНабораТестов(); + Набор2.Тесты.Добавить(ОписаниеТеста()); + Набор2.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста")); + + ОписаниеМодуля = ОписаниеМодуля(); + ДобавитьКопиюНабора(ОписаниеМодуля, Набор1); + ДобавитьКопиюНабора(ОписаниеМодуля, Набор2); + + УстановитьНовыйФильтр(, , , "ТегНабора"); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(1) + .Свойство("[0].Тесты").ИмеетДлину(2); + + ОписаниеМодуля = ОписаниеМодуля(); + ДобавитьКопиюНабора(ОписаниеМодуля, Набор1); + ДобавитьКопиюНабора(ОписаниеМодуля, Набор2); + + УстановитьНовыйФильтр(, , , "ТегНабора, ТегТеста"); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(2) + .Свойство("[0].Тесты").ИмеетДлину(2) + .Свойство("[1].Тесты").ИмеетДлину(1); + +КонецПроцедуры + +Процедура Фильтр_ТегиМодуля() Экспорт + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Процедура УстановитьНовыйФильтр(Модули = Неопределено, + Тесты = Неопределено, + Контексты = Неопределено, + Теги = Неопределено, + Расширения = Неопределено) + + Параметры = ЮТФабрика.ПараметрыЗапуска(); + + Если Расширения <> Неопределено Тогда + Параметры.filter.extensions = ЮТСтроки.РазделитьСтроку(Расширения, ","); + КонецЕсли; + + Если Тесты <> Неопределено Тогда + Параметры.filter.tests = ЮТСтроки.РазделитьСтроку(Тесты, ","); + КонецЕсли; + + Если Модули <> Неопределено Тогда + Параметры.filter.modules = ЮТСтроки.РазделитьСтроку(Модули, ","); + КонецЕсли; + + Если Теги <> Неопределено Тогда + Параметры.filter.tags = ЮТСтроки.РазделитьСтроку(Теги, ","); + КонецЕсли; + + Если Контексты <> Неопределено Тогда + Параметры.filter.contexts = ЮТСтроки.РазделитьСтроку(Контексты, ","); + КонецЕсли; + + УстановитьФильтр(Параметры); + +КонецПроцедуры + +Процедура УстановитьФильтр(Параметры) + + ЮТФильтрацияСлужебный.УстановитьКонтекст(Параметры); + +КонецПроцедуры + +Функция МетаданныеМодуля(ИмяМодуля = "ТестовыйМодуль", Расширение = "ТестовоеРасширение") + + МетаданныеМодуля = ЮТФабрикаСлужебный.ОписаниеМодуля(); + МетаданныеМодуля.Имя = ИмяМодуля; + МетаданныеМодуля.Расширение = Расширение; + + Возврат МетаданныеМодуля; + +КонецФункции + +Функция ОписаниеМодуля(ИмяМодуля = "ТестовыйМодуль") + + Возврат ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля(МетаданныеМодуля(ИмяМодуля), Новый Массив()); + +КонецФункции + +Функция ОписаниеНабораТестов(Имя = "ТестовыйНабор", Теги = "") + + Возврат ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(Имя, Теги); + +КонецФункции + +Функция ОписаниеТеста(ИмяТеста = Неопределено, КонтекстыВызова = "Сервер, КлиентУправляемоеПриложение", Теги = "") + + Если ИмяТеста = Неопределено Тогда + ИмяТеста = ЮТест.Данные().СлучайнаяСтрока(); + КонецЕсли; + + Возврат ЮТФабрикаСлужебный.ОписаниеТеста(ИмяТеста, + ЮТест.Данные().СлучайнаяСтрока(), + СтрРазделить(КонтекстыВызова, ", ", Ложь), + Теги); + +КонецФункции + +Процедура ДобавитьКопиюНабора(ОписаниеМодуля, Набор) + + ОписаниеМодуля.НаборыТестов.ДОбавить(ЮТКоллекции.СкопироватьРекурсивно(Набор)); + +КонецПроцедуры + #КонецОбласти diff --git "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242HTTP\320\241\320\265\321\200\320\262\320\270\321\201\320\227\320\260\320\277\321\200\320\276\321\201/Module.bsl" "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242HTTP\320\241\320\265\321\200\320\262\320\270\321\201\320\227\320\260\320\277\321\200\320\276\321\201/Module.bsl" index d4c2412b6..16f09ff8f 100644 --- "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242HTTP\320\241\320\265\321\200\320\262\320\270\321\201\320\227\320\260\320\277\321\200\320\276\321\201/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242HTTP\320\241\320\265\321\200\320\262\320\270\321\201\320\227\320\260\320\277\321\200\320\276\321\201/Module.bsl" @@ -20,7 +20,7 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты + ЮТТесты.Тег("Мокирование") .ДобавитьТест("Конструктор") .ДобавитьТест("УстановитьТело") ; diff --git "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242RecordSet_\320\234\320\236/Module.bsl" "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242RecordSet_\320\234\320\236/Module.bsl" index 75dbf50d6..eadc93c2d 100644 --- "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242RecordSet_\320\234\320\236/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242RecordSet_\320\234\320\236/Module.bsl" @@ -20,7 +20,7 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты + ЮТТесты.Тег("Мокирование") .ДобавитьТест("Инициализировать") .ДобавитьТест("Добавить") .ДобавитьТест("MoveFirst") diff --git "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\236\320\261\321\212\320\265\320\272\321\202\320\260XDTO_\320\234\320\236/Module.bsl" "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\236\320\261\321\212\320\265\320\272\321\202\320\260XDTO_\320\234\320\236/Module.bsl" index 34414c2fd..996b5b20a 100644 --- "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\236\320\261\321\212\320\265\320\272\321\202\320\260XDTO_\320\234\320\236/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\236\320\261\321\212\320\265\320\272\321\202\320\260XDTO_\320\234\320\236/Module.bsl" @@ -20,7 +20,7 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты + ЮТТесты.Тег("ТестовыеДанные") .ДобавитьТест("Установить") .ДобавитьТест("УстановитьРеквизиты") .ДобавитьТест("Фикция") diff --git "a/tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" "b/tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" new file mode 100644 index 000000000..51f2fb843 --- /dev/null +++ "b/tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" @@ -0,0 +1,32 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +Функция Мокирование() Экспорт + + ЮТТесты.Тег("Мокирование"); + Возврат ТегиТестов; + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +#КонецОбласти diff --git "a/tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" new file mode 100644 index 000000000..fafb8bd59 --- /dev/null +++ "b/tests/src/CommonModules/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\242\320\265\320\263\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" @@ -0,0 +1,11 @@ + + + ТегиТестов + + ru + Теги тестов + + true + true + true + diff --git a/tests/src/Configuration/Configuration.mdo b/tests/src/Configuration/Configuration.mdo index 19ac4171e..8d8449f85 100644 --- a/tests/src/Configuration/Configuration.mdo +++ b/tests/src/Configuration/Configuration.mdo @@ -65,6 +65,7 @@ CommonModule.ПодпискиНаСобытия CommonModule.Пользователи CommonModule.ПомощникТестированияВызовСервера + CommonModule.ТегиТестов CommonModule.ТестовыеДанные Catalog.Встречи Catalog.Товары From ec0fbbf8feeae0d6a7674c2bd7fbc1f0e7624248 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Mon, 13 May 2024 16:26:31 +0300 Subject: [PATCH 06/54] =?UTF-8?q?#61=20=D0=A2=D0=B5=D1=81=D1=82=D1=8B=20?= =?UTF-8?q?=D0=BD=D0=B0=20=D1=84=D0=B8=D0=BB=D1=8C=D1=82=D1=80=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D1=8E=20=D0=BF=D0=BE=20=D1=82=D0=B5=D0=B3=D0=B0=D0=BC=20?= =?UTF-8?q?=D0=BC=D0=BE=D0=B4=D1=83=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 77 ++++++++++++------- 1 file changed, 49 insertions(+), 28 deletions(-) diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 588817c02..cfdbce9af 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -243,62 +243,61 @@ Процедура Фильтр_ТегиТеста() Экспорт - ОписаниеМодуля = ОписаниеМодуля(); - НаборТестов = ОписаниеНабораТестов(); - НаборТестов.Тесты.Добавить(ОписаниеТеста()); - НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег1")); - НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег1, Тег2")); - НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег2")); - НаборТестов.Тесты.Добавить(ОписаниеТеста(, , "Тег11")); - ОписаниеМодуля.НаборыТестов.Добавить(НаборТестов); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); - УстановитьНовыйФильтр(, , , "Тег1, Тег2, Т, _, Тег111"); + УстановитьНовыйФильтр(, , , "ТегТеста1, ТегТеста2, Т, _, Тег111"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) - .ИмеетДлину(1) - .Свойство("[0].Тесты").ИмеетДлину(3); + .ИмеетДлину(2) + .Свойство("[0].Тесты").ИмеетДлину(3) + .Свойство("[1].Тесты").ИмеетДлину(1); КонецПроцедуры Процедура Фильтр_ТегиНабора() Экспорт - Набор1 = ОписаниеНабораТестов(); - Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("ТегНабора"); - Набор1.Тесты.Добавить(ОписаниеТеста()); - Набор1.Тесты.Добавить(ОписаниеТеста()); - - Набор2 = ОписаниеНабораТестов(); - Набор2.Тесты.Добавить(ОписаниеТеста()); - Набор2.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста")); - - ОписаниеМодуля = ОписаниеМодуля(); - ДобавитьКопиюНабора(ОписаниеМодуля, Набор1); - ДобавитьКопиюНабора(ОписаниеМодуля, Набор2); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); УстановитьНовыйФильтр(, , , "ТегНабора"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) .ИмеетДлину(1) - .Свойство("[0].Тесты").ИмеетДлину(2); + .Свойство("[0].Тесты").ИмеетДлину(5); - ОписаниеМодуля = ОписаниеМодуля(); - ДобавитьКопиюНабора(ОписаниеМодуля, Набор1); - ДобавитьКопиюНабора(ОписаниеМодуля, Набор2); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); УстановитьНовыйФильтр(, , , "ТегНабора, ТегТеста"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) .ИмеетДлину(2) - .Свойство("[0].Тесты").ИмеетДлину(2) + .Свойство("[0].Тесты").ИмеетДлину(5) .Свойство("[1].Тесты").ИмеетДлину(1); КонецПроцедуры Процедура Фильтр_ТегиМодуля() Экспорт + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); + УстановитьНовыйФильтр(, , , "ТегМодуля"); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(0); + + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); + ОписаниеМодуля.Теги.Добавить("ТегМодуля"); + + УстановитьНовыйФильтр(, , , "ТегМодуля"); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(2) + .Свойство("[0].Тесты").ИмеетДлину(5) + .Свойство("[1].Тесты").ИмеетДлину(2); + КонецПроцедуры #КонецОбласти @@ -384,4 +383,26 @@ КонецПроцедуры +Функция ОписаниеМодуляДляТестированияФильтрацииТегов() + + Набор1 = ОписаниеНабораТестов(); + Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("ТегНабора"); + Набор1.Тесты.Добавить(ОписаниеТеста()); + Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста1")); + Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста1, ТегТеста2")); + Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста")); + Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТЕГТеста1")); + + Набор2 = ОписаниеНабораТестов(); + Набор2.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста2")); + Набор2.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста")); + + ОписаниеМодуля = ОписаниеМодуля(); + ОписаниеМодуля.НаборыТестов.Добавить(Набор1); + ОписаниеМодуля.НаборыТестов.Добавить(Набор2); + + Возврат ОписаниеМодуля; + +КонецФункции + #КонецОбласти From d362162ea3f787c24c9006f32d401894064ef992 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Mon, 13 May 2024 21:34:33 +0300 Subject: [PATCH 07/54] =?UTF-8?q?#61=20=D0=9F=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B0=20=D1=83=D0=BF=D0=B0=D0=B2=D1=88=D0=B8=D1=85=20=D1=82?= =?UTF-8?q?=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 6 +- .../Module.bsl" | 75 ++++++++----------- 2 files changed, 34 insertions(+), 47 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" index 254d53128..062057515 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" @@ -361,7 +361,7 @@ // Возвращает модуль установки зависимостей теста. // // Возвращаемое значение: -// CommonModule +// CommonModule - Этот же модуль Функция ЗависитОт() Экспорт Возврат ЮТЗависимости; @@ -374,9 +374,9 @@ // _ - Произвольный // // Возвращаемое значение: -// CommonModule.ЮТТесты - Вызыов +// CommonModule - Этот же модуль //@skip-check bsl-variable-name-invalid -Функция Вызыов(_) Экспорт +Функция Вызов(_) Экспорт Возврат ЮТТесты; diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index cfdbce9af..90b8c0d15 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -137,65 +137,52 @@ // 1 Контексты = ЮТФабрика.КонтекстыВызова(); - ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеМодуля(); - ОписаниеМодуля.Имя = "ТестовыйМодуль"; - ОписаниеМодуля.Расширение = "ТестовоеРасширение"; - ОписаниеМодуля.Сервер = Истина; - ОписаниеМодуля.КлиентУправляемоеПриложение = Истина; - - Наборы = Новый Массив(); - Набор = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора("Тесты"); - Тест = ЮТФабрикаСлужебный.ОписаниеТеста("Тест1", "Тест 1", ЮТКоллекции.ЗначениеВМассиве(Контексты.Сервер, Контексты.КлиентУправляемоеПриложение)); + Набор = ОписаниеНабораТестов("Тесты"); + Тест = ОписаниеТеста("Тест1","Сервер, КлиентУправляемоеПриложение"); Набор.Тесты.Добавить(Тест); - Наборы.Добавить(Набор); - Параметры = ЮТФабрика.ПараметрыЗапуска(); - Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1"); - УстановитьФильтр(Параметры); + ОписаниеМодуля = ОписаниеМодуля(); + ОписаниеМодуля.МетаданныеМодуля.Сервер = Истина; + ОписаниеМодуля.МетаданныеМодуля.КлиентУправляемоеПриложение = Истина; - Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); - ЮТест.ОжидаетЧто(Результат, "Результат фильтрации") - .Заполнено() - .ИмеетТип("Массив"); - НаборРезультата = Результат[0]; - ЮТест.ОжидаетЧто(НаборРезультата, "Набор результата") + ДобавитьКопиюНабора(ОписаниеМодуля, Набор); + + УстановитьНовыйФильтр(, "ТестовыйМодуль.Тест1"); + + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов, "Результат фильтрации") .Заполнено() - .Свойство("Имя").Равно(Набор.Имя) - .Свойство("Представление").Равно(Набор.Представление) - .Свойство("Тесты").Заполнено(); - ТестРезультата = НаборРезультата.Тесты[0]; - ЮТест.ОжидаетЧто(ТестРезультата, "Тест результата") - .Свойство("Имя").Равно(Тест.Имя) - .Свойство("КонтекстВызова").ИмеетДлину(2); + .Свойство("[0].Тесты").Заполнено() + .Что(ОписаниеМодуля.НаборыТестов[0].Тесты[0], "Тест результата") + .Свойство("Имя").Равно("Тест1") + .Свойство("КонтекстВызова").ИмеетДлину(2); // 2 - Параметры = ЮТФабрика.ПараметрыЗапуска(); - Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1.Сервер"); - УстановитьФильтр(Параметры); + ОписаниеМодуля.НаборыТестов.Очистить(); + ДобавитьКопиюНабора(ОписаниеМодуля, Набор); + УстановитьНовыйФильтр(, "ТестовыйМодуль.Тест1.Сервер"); - Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); - ТестРезультата = Результат[0].Тесты[0]; - ЮТест.ОжидаетЧто(ТестРезультата, "Тест с указанием контекста") + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов[0].Тесты[0], "Тест с указанием контекста") .Свойство("Имя").Равно(Тест.Имя) .Свойство("КонтекстВызова").ИмеетДлину(1); // 3 - Параметры = ЮТФабрика.ПараметрыЗапуска(); - Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1.ВызовСервера"); - УстановитьФильтр(Параметры); + ОписаниеМодуля.НаборыТестов.Очистить(); + ДобавитьКопиюНабора(ОписаниеМодуля, Набор); + УстановитьНовыйФильтр(, "ТестовыйМодуль.Тест1.ВызовСервера"); - Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); - ЮТест.ОжидаетЧто(Результат, "Тест с указаниме недоступного контекста") - .ИмеетДлину(1); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов, "Тест с указаниме недоступного контекста") + .ИмеетДлину(0); // 4 - Параметры = ЮТФабрика.ПараметрыЗапуска(); - Параметры.filter.tests = ЮТКоллекции.ЗначениеВМассиве("ТестовыйМодуль.Тест1.Сервер"); - Параметры.filter.contexts = ЮТКоллекции.ЗначениеВМассиве(Контексты.КлиентУправляемоеПриложение); - УстановитьФильтр(Параметры); + ОписаниеМодуля.НаборыТестов.Очистить(); + ДобавитьКопиюНабора(ОписаниеМодуля, Набор); + УстановитьНовыйФильтр(, "ТестовыйМодуль.Тест1.Сервер", "КлиентУправляемоеПриложение"); - Результат = ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(Наборы, ОписаниеМодуля); - ЮТест.ОжидаетЧто(Результат, "Тест с указаниме контекста и фильтра контекстов") + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов, "Тест с указаниме контекста и фильтра контекстов") .ИмеетДлину(0); КонецПроцедуры From 535bdbbeee86a7a5b73fc44c24d49b04be78748f Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Mon, 13 May 2024 22:53:29 +0300 Subject: [PATCH 08/54] =?UTF-8?q?#61=20=D0=92=D1=8B=D0=B2=D0=BE=D0=B4=20?= =?UTF-8?q?=D1=82=D0=B5=D0=B3=D0=BE=D0=B2=20=D0=B2=20allure?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 18 +++++++ .../Module.bsl" | 22 +++++--- .../Module.bsl" | 3 +- .../Module.bsl" | 50 ++++++++----------- .../Module.bsl" | 17 +++++++ .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 1 + 8 files changed, 76 insertions(+), 39 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index 4bd1afce9..4fee852a3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -391,6 +391,24 @@ КонецФункции +Функция МассивВСтруктуру(Значения, ЗначениеСтруктуры = Неопределено) Экспорт + + Результат = Новый Структура(); + + Если НЕ ЗначениеЗаполнено(Значения) Тогда + Возврат Результат; + КонецЕсли; + + Для Каждого Значение Из Значения Цикл + + Результат.Вставить(Значение, ЗначениеСтруктуры); + + КонецЦикла; + + Возврат Результат; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2f39ac29d..5e8fb6b62 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -38,12 +38,18 @@ #Иначе Для Каждого Модуль Из РезультатВыполнения Цикл + ТегиМодуля = ЮТКоллекции.МассивВСтруктуру(Модуль.Теги); + Для Каждого Набор Из Модуль.НаборыТестов Цикл + ТегиНабора = ЮТКоллекции.МассивВСтруктуру(Модуль.Теги); + ЮТКоллекции.ДополнитьСтруктуру(ТегиНабора, ТегиМодуля); + Для Каждого РезультатТеста Из Набор.Тесты Цикл Попытка - СохранитьОтчетТеста(РезультатТеста, Набор, Модуль, Каталог); + Описание = ОписаниеТеста(РезультатТеста, Набор, Модуль, ТегиНабора); + СохранитьОтчетТеста(Описание, Каталог); Исключение ЮТЛогирование.Ошибка("Ошибка сохранения отчета в формате Allure. " + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); КонецПопытки; @@ -63,9 +69,7 @@ #Область СлужебныеПроцедурыИФункции #Если НЕ ВебКлиент Тогда -Процедура СохранитьОтчетТеста(РезультатТеста, Набор, Модуль, Каталог) - - Описание = ОписаниеТеста(РезультатТеста, Набор, Модуль); +Процедура СохранитьОтчетТеста(Описание, Каталог) ИмяФайла = ЮТФайлы.ОбъединитьПути(Каталог, Описание.uuid + "-result.json"); Запись = Новый ЗаписьJSON(); @@ -75,7 +79,7 @@ КонецПроцедуры -Функция ОписаниеТеста(РезультатТеста, Набор, Модуль) Экспорт +Функция ОписаниеТеста(РезультатТеста, Набор, Модуль, ТегиНабора) Экспорт Статусы = ЮТФабрика.СтатусыИсполненияТеста(); ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим); @@ -115,8 +119,14 @@ ДобавитьМетку(Описание, "tag", РезультатТеста.Режим); + Для Каждого Элемент Из ТегиНабора Цикл + ДобавитьМетку(Описание, "tag", Элемент.Ключ); + КонецЦикла; + Для Каждого Тег Из РезультатТеста.Теги Цикл - ДобавитьМетку(Описание, "tag", Тег); + Если НЕ ТегиНабора.Свойство(Тег) Тогда + ДобавитьМетку(Описание, "tag", Тег); + КонецЕсли; КонецЦикла; Если ЗначениеЗаполнено(РезультатТеста.Параметры) Тогда diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index a0b4d7868..45426b26d 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -224,7 +224,6 @@ Описание.Вставить("Имя", НаборТестов.Имя); Описание.Вставить("Представление", НаборТестов.Представление); - Описание.Вставить("Теги", НаборТестов.Теги); Описание.Вставить("Режим", ""); Описание.Вставить("ТестовыйМодуль", ТестовыйМодуль); Описание.Вставить("МетаданныеМодуля", ТестовыйМодуль.МетаданныеМодуля); @@ -270,7 +269,6 @@ Описание.Вставить("Имя", Представление); Описание.Вставить("Метод", Тест.Имя); Описание.Вставить("ПолноеИмяМетода", ПолноеИмяМетода); - Описание.Вставить("Теги", Тест.Теги); Описание.Вставить("Режим", Режим); Описание.Вставить("ДатаСтарта", 0); Описание.Вставить("Длительность", 0); @@ -723,6 +721,7 @@ Описание.Вставить("Ошибки", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Ошибки)); Описание.Вставить("НастройкиВыполнения", ЮТКоллекции.СкопироватьСтруктуру(РегистрируемыйОбъекта.НастройкиВыполнения)); Описание.Вставить("Зависимости", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Зависимости)); + Описание.Вставить("Теги", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Теги)); Возврат Описание; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2492a9375..ee5c68222 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -22,9 +22,9 @@ Контекст = ЮТКонтекстСлужебный.КонтекстЧитателя(); - НормализованноеИмяРасширения = УдалитьНедопустимыеСимволыИзСтрокиКакКлючаСтруктуры(ИмяРасширения); + НормализованноеИмяРасширения = НРег(ИмяРасширения); - Возврат НЕ Контекст.Фильтр.ЕстьФильтрРасширений ИЛИ Контекст.Фильтр.Расширения.Свойство(НормализованноеИмяРасширения); + Возврат НЕ Контекст.Фильтр.ЕстьФильтрРасширений ИЛИ Контекст.Фильтр.Расширения[НормализованноеИмяРасширения] <> Неопределено; КонецФункции @@ -137,8 +137,8 @@ Фильтр = Фильтр(); - Фильтр.Расширения = МассивВСтруктуру(Расширения); - Фильтр.Модули = МассивВСтруктуру(Модули); + Фильтр.Расширения = МассивВСоответствие(Расширения); + Фильтр.Модули = ЮТКоллекции.МассивВСтруктуру(Модули); Если Контексты = Неопределено Тогда Фильтр.Контексты = ЮТФабрикаСлужебный.КонтекстыПриложения(); @@ -147,7 +147,7 @@ КонецЕсли; Если ЗначениеЗаполнено(Теги) Тогда - Фильтр.Теги = МассивВСтруктуру(Теги); + Фильтр.Теги = ЮТКоллекции.МассивВСтруктуру(Теги); КонецЕсли; Если ЗначениеЗаполнено(Наборы) Тогда @@ -200,30 +200,6 @@ #Область СлужебныеПроцедурыИФункции -Функция МассивВСтруктуру(Значения) - - Результат = Новый Структура(); - - Если НЕ ЗначениеЗаполнено(Значения) Тогда - Возврат Результат; - КонецЕсли; - - Для Каждого Значение Из Значения Цикл - - НормализованноеЗначение = УдалитьНедопустимыеСимволыИзСтрокиКакКлючаСтруктуры(Значение); - Результат.Вставить(НормализованноеЗначение); - - КонецЦикла; - - Возврат Результат; - -КонецФункции - -Функция УдалитьНедопустимыеСимволыИзСтрокиКакКлючаСтруктуры(СтрокаКакКлюч) - // TODO Переработать. Не модифицировать значение - Возврат СтрЗаменить(СтрокаКакКлюч, ".", ""); -КонецФункции - Функция ОписаниеИмениТеста(Путь) Части = СтрРазделить(Путь, "."); @@ -358,4 +334,20 @@ КонецФункции +Функция МассивВСоответствие(Значения) + + Результат = Новый Соответствие(); + + Если НЕ ЗначениеЗаполнено(Значения) Тогда + Возврат Результат; + КонецЕсли; + + Для Каждого Значение Из Значения Цикл + Результат.Вставить(НРег(Значение), Истина); + КонецЦикла; + + Возврат Результат; + +КонецФункции + #КонецОбласти diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 401f31ba9..2cfb060cb 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -24,6 +24,7 @@ .ДобавитьТест("ПараметрыГенерацииОтчета") .ДобавитьТест("ЗаписатьОтчет") .ДобавитьТест("ОписаниеТеста") + .ДобавитьТест("ОписаниеТеста_Теги") ; КонецПроцедуры @@ -77,6 +78,22 @@ КонецПроцедуры +Процедура ОписаниеТеста_Теги() Экспорт + + Модуль = ТестовыеДанные.ОписаниеТестовогоМодуля(); + Набор = ТестовыеДанные.ОписаниеТестовогоНабора(Модуль); + Тест = ТестовыеДанные.ОписаниеТеста(Набор); + + ТегиНабора = Новый Структура("Набор, Тег2, Тег3"); + Тест.Теги = СтрРазделить("Тест, тег3, тег4", ", ", Ложь); + ОписаниеТеста = ЮТОтчетAllureСлужебный.ОписаниеТеста(Тест, Набор, Модуль, ТегиНабора); + + Для Каждого Метка Из СтрРазделить("Набор, Тест, Тег2, Тег3, тег4", ", ", Ложь) Цикл + СодержитМетку(ОписаниеТеста, "tag", Метка); + КонецЦикла; + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index 763942050..ef1678f94 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -20,7 +20,7 @@ Процедура ИсполняемыеСценарии() Экспорт - ЮТТесты.УдалениеТестовыхДанных() + ЮТТесты.Тег("ТестовыеДанные").УдалениеТестовыхДанных() .ДобавитьТест("Удалить") .ДобавитьТест("ВариантыПараметров") .ДобавитьТест("СоздатьГруппу") diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 7e366d4b8..ea8150efc 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -23,7 +23,7 @@ КодТовара = ЮТОбщий.ЧислоВСтроку(ЮТест.Данные().СлучайноеПоложительноеЧисло(999999999)); Период = ТекущаяДата(); - ЮТТесты.УдалениеТестовыхДанных() + ЮТТесты.Тег("ТестовыеДанные").УдалениеТестовыхДанных() .ДобавитьТест("Фикция") .СПараметрами(Новый ОписаниеТипов("Число")) .СПараметрами(Новый ОписаниеТипов("Строка")) diff --git "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index 8e2bcd7db..1bb7e03c8 100644 --- "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -39,6 +39,7 @@ Описание.Вставить("НаборыТестов", Новый Массив); Описание.Вставить("Ошибки", Новый Массив); Описание.Вставить("НастройкиВыполнения", Новый Структура); + Описание.Вставить("Теги", Новый Массив()); Описание.МетаданныеМодуля.Имя = СлучайнаяСтрокаЕслиНеопределено(ИмяМодуля); Описание.МетаданныеМодуля.ПолноеИмя = ЮТТестовыеДанные.СлучайнаяСтрока() + "." + Описание.МетаданныеМодуля.Имя; From c23423d9102620f54efcd60d079f69717051cb87 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Tue, 14 May 2024 17:48:49 +0300 Subject: [PATCH 09/54] =?UTF-8?q?#61=20=D0=92=D1=8B=D0=B2=D0=BE=D0=B4=20?= =?UTF-8?q?=D1=82=D0=B5=D0=B3=D0=BE=D0=B2=20=D0=BD=D0=B5=20=D1=8F=D0=B2?= =?UTF-8?q?=D0=BB=D1=8F=D1=8E=D1=89=D0=B8=D1=85=D1=81=D1=8F=20=D0=B8=D0=B4?= =?UTF-8?q?=D0=B5=D0=BD=D1=82=D0=B8=D1=84=D0=B8=D0=BA=D0=B0=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B0=D0=BC=D0=B8=20(=D1=81=D0=BE=D0=B4=D0=B5=D1=80?= =?UTF-8?q?=D0=B6=D0=B0=D1=89=D0=B8=D0=BC=D0=B8=20=D0=BF=D1=80=D0=BE=D0=B1?= =?UTF-8?q?=D0=BB=D0=B5=D1=8B=20=D0=B8=20=D1=82=D0=B4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 54 +++++++++++++++++++ .../Module.bsl" | 22 +++----- .../Module.bsl" | 30 +++++++++++ .../Module.bsl" | 17 ++++++ .../Module.bsl" | 9 ++-- .../Module.bsl" | 14 +++++ 6 files changed, 128 insertions(+), 18 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index 4fee852a3..cfc41e03b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -70,6 +70,60 @@ КонецПроцедуры +// Содает новый массив путем объединия входных. +// +// Параметры: +// Коллекция1 - Массив Из Произвольный +// Коллекция2 - Массив Из Произвольный +// Коллекция3 - Массив Из Произвольный +// Коллекция4 - Массив Из Произвольный +// +// Возвращаемое значение: +// Массив из Произвольный - Результат объединения +Функция ОбъединитьМассивы(Коллекция1, Коллекция2, Коллекция3 = Неопределено, Коллекция4 = Неопределено) Экспорт + + Коллекции = Новый Массив; + Если ЗначениеЗаполнено(Коллекция1) Тогда + Коллекции.Добавить(Коллекция1); + КонецЕсли; + + Если ЗначениеЗаполнено(Коллекция2) Тогда + Коллекции.Добавить(Коллекция2); + КонецЕсли; + + Если ЗначениеЗаполнено(Коллекция3) Тогда + Коллекции.Добавить(Коллекция3); + КонецЕсли; + + Если ЗначениеЗаполнено(Коллекция4) Тогда + Коллекции.Добавить(Коллекция4); + КонецЕсли; + + Если НЕ ЗначениеЗаполнено(Коллекции) Тогда + Возврат Новый Массив; + КонецЕсли; + + Размер = 0; + Для Каждого Коллекция Из Коллекции Цикл + Размер = Размер + Коллекция.Количество(); + КонецЦикла; + + Результат = Новый Массив(Размер); + Позиция = 0; + + Для Каждого Коллекция Из Коллекции Цикл + Размер = Размер + Коллекция.Количество(); + + Для Инд = 0 По Коллекция.ВГраница() Цикл + Результат[Позиция] = Коллекция[Инд]; + Позиция = Позиция + 1; + КонецЦикла; + КонецЦикла; + + Возврат Результат; + +КонецФункции + // Создает копию экземпляра указанного объекта. // Примечание: // Функцию нельзя использовать для объектных типов (СправочникОбъект, ДокументОбъект и т.п.). diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 5e8fb6b62..3ab9bf633 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -38,17 +38,12 @@ #Иначе Для Каждого Модуль Из РезультатВыполнения Цикл - ТегиМодуля = ЮТКоллекции.МассивВСтруктуру(Модуль.Теги); - Для Каждого Набор Из Модуль.НаборыТестов Цикл - ТегиНабора = ЮТКоллекции.МассивВСтруктуру(Модуль.Теги); - ЮТКоллекции.ДополнитьСтруктуру(ТегиНабора, ТегиМодуля); - Для Каждого РезультатТеста Из Набор.Тесты Цикл Попытка - Описание = ОписаниеТеста(РезультатТеста, Набор, Модуль, ТегиНабора); + Описание = ОписаниеТеста(РезультатТеста, Набор, Модуль); СохранитьОтчетТеста(Описание, Каталог); Исключение ЮТЛогирование.Ошибка("Ошибка сохранения отчета в формате Allure. " + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); @@ -79,12 +74,15 @@ КонецПроцедуры -Функция ОписаниеТеста(РезультатТеста, Набор, Модуль, ТегиНабора) Экспорт +Функция ОписаниеТеста(РезультатТеста, Набор, Модуль) Экспорт Статусы = ЮТФабрика.СтатусыИсполненияТеста(); ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим); ПолныйИдентификаторТеста = СтрШаблон("%1_%2_%3", РезультатТеста.НомерВНаборе, РезультатТеста.ПолноеИмяМетода, РезультатТеста.Режим); + Теги = ЮТКоллекции.ОбъединитьМассивы(Модуль.Теги, Набор.Теги, РезультатТеста.Теги); + Теги = ЮТСтроки.УникальныеСтроки(Теги); + Описание = НовыйОписаниеТеста(); Описание.fullName = РезультатТеста.ПолноеИмяМетода + ПредставлениеРежима; Описание.name = РезультатТеста.Метод + ПредставлениеРежима; @@ -119,14 +117,8 @@ ДобавитьМетку(Описание, "tag", РезультатТеста.Режим); - Для Каждого Элемент Из ТегиНабора Цикл - ДобавитьМетку(Описание, "tag", Элемент.Ключ); - КонецЦикла; - - Для Каждого Тег Из РезультатТеста.Теги Цикл - Если НЕ ТегиНабора.Свойство(Тег) Тогда - ДобавитьМетку(Описание, "tag", Тег); - КонецЕсли; + Для Каждого Тег Из Теги Цикл + ДобавитьМетку(Описание, "tag", Тег); КонецЦикла; Если ЗначениеЗаполнено(РезультатТеста.Параметры) Тогда diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" index cff826070..19d1a27d3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" @@ -246,6 +246,36 @@ КонецФункции +// Из набора строк формирует набор уникальных строк. +// Сравнение происходит без учета регистра. +// +// Параметры: +// НеУникальныеСтроки - Массив Из Строка +// +// Возвращаемое значение: +// Массив Из Строка - Уникальные строки +Функция УникальныеСтроки(НеУникальныеСтроки) Экспорт + + Если НЕ ЗначениеЗаполнено(НеУникальныеСтроки) Тогда + Возврат НеУникальныеСтроки; + КонецЕсли; + + Хэш = Новый Соответствие(); + + Результат = Новый Массив; + + Для Каждого Строка Из НеУникальныеСтроки Цикл + Ключ = НРег(Строка); + Если Хэш[Ключ] = Неопределено Тогда + Результат.Добавить(Строка); + Хэш.Вставить(Ключ, 1); + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index 8b626e5d9..eb31d2bc1 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -35,6 +35,7 @@ .ДобавитьТест("ВСоответствие") .ДобавитьТест("ВСтруктуру") .ДобавитьТест("ПредставлениеМассива") + .ДобавитьТест("ОбъединитьМассивы") ; КонецПроцедуры @@ -416,6 +417,22 @@ КонецПроцедуры +Процедура ОбъединитьМассивы() Экспорт + + Коллекция1 = ЮТКоллекции.ЗначениеВМассиве(1, 2); + Коллекция2 = Новый Массив; + Коллекция3 = ЮТКоллекции.ЗначениеВМассиве(3); + Коллекция4 = ЮТКоллекции.ЗначениеВМассиве(4, 5); + + Результат = ЮТКоллекции.ОбъединитьМассивы(Коллекция1, Коллекция2, Коллекция3, Коллекция4); + ЮТест.ОжидаетЧто(Результат) + .ИмеетТип("Массив") + .Заполнено() + .Равно(ЮТКоллекции.ЗначениеВМассиве(1, 2, 3, 4, 5)) + .ИмеетДлину(5); + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2cfb060cb..d72596891 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -43,6 +43,8 @@ Процедура ЗаписатьОтчет() Экспорт РезультатТестирования = ТестовыеДанные.РезультатТестирования(); + РезультатТестирования[0].Теги = ЮТКоллекции.ЗначениеВМассиве("Тестовый модуль"); + Каталог = ЮТест.Данные().НовоеИмяВременногоФайла(); СоздатьКаталог(Каталог); Формат = ЮТОтчетAllureСлужебный.ПараметрыГенерацииОтчета().Форматы.allure; @@ -84,11 +86,12 @@ Набор = ТестовыеДанные.ОписаниеТестовогоНабора(Модуль); Тест = ТестовыеДанные.ОписаниеТеста(Набор); - ТегиНабора = Новый Структура("Набор, Тег2, Тег3"); + Модуль.Теги = ЮТСтроки.РазделитьСтроку("Модуль, Тег1, Тег 2", ","); + Набор.Теги = ЮТСтроки.РазделитьСтроку("Набор, ТЕГ 2, Тег3", ","); Тест.Теги = СтрРазделить("Тест, тег3, тег4", ", ", Ложь); - ОписаниеТеста = ЮТОтчетAllureСлужебный.ОписаниеТеста(Тест, Набор, Модуль, ТегиНабора); + ОписаниеТеста = ЮТОтчетAllureСлужебный.ОписаниеТеста(Тест, Набор, Модуль); - Для Каждого Метка Из СтрРазделить("Набор, Тест, Тег2, Тег3, тег4", ", ", Ложь) Цикл + Для Каждого Метка Из ЮТСтроки.РазделитьСтроку("Модуль, Набор, Тест, Тег 2, Тег3, тег4", ",") Цикл СодержитМетку(ОписаниеТеста, "tag", Метка); КонецЦикла; diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" index 28e5e21ca..737386fa7 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" @@ -24,6 +24,7 @@ .ДобавитьТест("ДобавитьСтроку") .ДобавитьТест("СтрокаСимволов") .ДобавитьТест("СравнитьВерсии") + .ДобавитьТест("УникальныеСтроки") ; КонецПроцедуры @@ -87,6 +88,19 @@ КонецПроцедуры +Процедура УникальныеСтроки() Экспорт + + Вход = СтрРазделить("Раз,раз, раз,проверка", ","); + + ЮТест.ОжидаетЧто(ЮТСтроки.УникальныеСтроки(Вход)) + .Содержит("Раз") + .НеСодержит("раз") + .Содержит(" раз") + .Содержит("проверка") + .ИмеетДлину(3); + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции From e6073ce0d5d44a4f75d3a5506fb2e26a72ce9463 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Tue, 14 May 2024 21:23:28 +0300 Subject: [PATCH 10/54] =?UTF-8?q?#61=20=D0=92=D1=8B=D0=B2=D0=BE=D0=B4=20?= =?UTF-8?q?=D1=82=D0=B5=D0=B3=D0=BE=D0=B2=20=D0=B2=20junit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 11 +++++- .../Module.bsl" | 3 +- .../Module.bsl" | 39 ++++++++++++++++--- .../Module.bsl" | 32 +++++++++++++++ ...0\265\321\200\320\262\320\265\321\200.mdo" | 11 ++++++ .../Module.bsl" | 4 +- .../Module.bsl" | 10 ++--- .../src/Configuration/Configuration.mdo | 1 + .../Module.bsl" | 22 +++++------ 9 files changed, 105 insertions(+), 28 deletions(-) create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index cfc41e03b..a1329d7b1 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -445,6 +445,15 @@ КонецФункции +// Создает структуру из массива. +// Ключами будут элементы массива, а значением каждого элемента струтуруы - параметр `ЗначениеСтруктуры` +// +// Параметры: +// Значения - Массив из Строка +// ЗначениеСтруктуры - Произвольный +// +// Возвращаемое значение: +// Структура Функция МассивВСтруктуру(Значения, ЗначениеСтруктуры = Неопределено) Экспорт Результат = Новый Структура(); @@ -454,9 +463,7 @@ КонецЕсли; Для Каждого Значение Из Значения Цикл - Результат.Вставить(Значение, ЗначениеСтруктуры); - КонецЦикла; Возврат Результат; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 3ab9bf633..bc6bc3c1c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -80,8 +80,7 @@ ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим); ПолныйИдентификаторТеста = СтрШаблон("%1_%2_%3", РезультатТеста.НомерВНаборе, РезультатТеста.ПолноеИмяМетода, РезультатТеста.Режим); - Теги = ЮТКоллекции.ОбъединитьМассивы(Модуль.Теги, Набор.Теги, РезультатТеста.Теги); - Теги = ЮТСтроки.УникальныеСтроки(Теги); + Теги = ЮТОтчетСлужебныйКлиентСервер.УникальныеТеги(Модуль, Набор, РезультатТеста); Описание = НовыйОписаниеТеста(); Описание.fullName = РезультатТеста.ПолноеИмяМетода + ПредставлениеРежима; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index eb89d6788..2d6263189 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -71,7 +71,7 @@ Для Каждого Набор Из Модуль.НаборыТестов Цикл - ЗаписатьНабор(ЗаписьXML, Набор, Номер); + ЗаписатьНабор(ЗаписьXML, Модуль, Набор, Номер); Номер = Номер + 1; КонецЦикла; @@ -172,11 +172,14 @@ КонецЕсли; + ЗаписатьСвойства(ЗаписьXML, Новый Структура, РезультатТеста.Теги); + ЗаписьXML.ЗаписатьКонецЭлемента(); КонецПроцедуры Процедура ЗаписатьОшибку(ЗаписьXML, ОписаниеОшибки) + Сообщение = СообщениеОбОшибке(ОписаниеОшибки); ЗаписьXML.ЗаписатьНачалоЭлемента("error"); Если Сообщение <> Неопределено Тогда @@ -192,9 +195,10 @@ КонецЕсли; ЗаписьXML.ЗаписатьКонецЭлемента(); + КонецПроцедуры -Процедура ЗаписатьНабор(ЗаписьXML, Набор, Номер) +Процедура ЗаписатьНабор(ЗаписьXML, Модуль, Набор, Номер) КоличествоТестов = 0; КоличествоПропущенных = 0; @@ -234,12 +238,12 @@ КонецЦикла; Для Каждого РезультатТеста Из Набор.Тесты Цикл - ЗаписатьТест(ЗаписьXML, РезультатТеста); - КонецЦикла; - ЗаписатьСвойства(ЗаписьXML, Новый Структура("context", Набор.Режим)); + Теги = ЮТКоллекции.ОбъединитьМассивы(Модуль.Теги, Набор.Теги); + ЗаписатьСвойства(ЗаписьXML, Новый Структура("context", Набор.Режим), Теги); + ЗаписьXML.ЗаписатьКонецЭлемента(); // testsuite КонецПроцедуры @@ -328,7 +332,11 @@ КонецФункции -Процедура ЗаписатьСвойства(ЗаписьXML, Свойства) +Процедура ЗаписатьСвойства(ЗаписьXML, Свойства, Теги = Неопределено) + + Если НЕ ЗначениеЗаполнено(Свойства) И НЕ ЗначениеЗаполнено(Теги) Тогда + Возврат; + КонецЕсли; ЗаписьXML.ЗаписатьНачалоЭлемента("properties"); @@ -339,8 +347,27 @@ ЗаписьXML.ЗаписатьКонецЭлемента(); // property КонецЦикла; + ЗаписатьТеги(ЗаписьXML, Теги); + ЗаписьXML.ЗаписатьКонецЭлемента(); // properties КонецПроцедуры +Процедура ЗаписатьТеги(ЗаписьXML, НаборТегов) + + Если НЕ ЗначениеЗаполнено(НаборТегов) Тогда + Возврат; + КонецЕсли; + + УникальныеТеги = ЮТСтроки.УникальныеСтроки(НаборТегов); + + Для Каждого Тег Из УникальныеТеги Цикл + ЗаписьXML.ЗаписатьНачалоЭлемента("property"); + ЗаписьXML.ЗаписатьАтрибут("name", "tag"); + ЗаписьXML.ЗаписатьАтрибут("value", ЗначениеВСтрокуjUnit(Тег)); + ЗаписьXML.ЗаписатьКонецЭлемента(); // property + КонецЦикла; + +КонецПроцедуры + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" new file mode 100644 index 000000000..e2591bd98 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -0,0 +1,32 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +Функция УникальныеТеги(Модуль, Набор, РезультатТеста) Экспорт + + Теги = ЮТКоллекции.ОбъединитьМассивы(Модуль.Теги, Набор.Теги, РезультатТеста.Теги); + Возврат ЮТСтроки.УникальныеСтроки(Теги); + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" new file mode 100644 index 000000000..892ace809 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" @@ -0,0 +1,11 @@ + + + ЮТОтчетСлужебныйКлиентСервер + + ru + Отчет служебный клиент сервер + + true + true + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 45426b26d..a469b17de 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -125,7 +125,7 @@ Описание.Вставить("Тесты", Новый Массив); Если ЗначениеЗаполнено(ТегиСтрокой) Тогда - Описание.Теги = СтрРазделить(ТегиСтрокой, ", ", Ложь); + Описание.Теги = ЮТСтроки.РазделитьСтроку(ТегиСтрокой, ","); КонецЕсли; Возврат Описание; @@ -166,7 +166,7 @@ Описание.Вставить("НомерВНаборе", 0); Если ЗначениеЗаполнено(ТегиСтрокой) Тогда - Описание.Теги = СтрРазделить(ТегиСтрокой, ", ", Ложь); + Описание.Теги = ЮТСтроки.РазделитьСтроку(ТегиСтрокой, ","); КонецЕсли; Возврат Описание; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ee5c68222..12cfb66cd 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -99,7 +99,7 @@ // * Расширения - Структура - Имена расширений // * Модули - Структура - Имена модулей // * Наборы - Массив из Строка - Имена тестовых наборов -// * Теги - Массив из Строка +// * Теги - Соответствие из Строка // * Контексты - Массив из Строка - Контексты вызова тестовых методов // * Тесты - Массив из см. ОписаниеИмениТеста - Список путей к тестовым методам // * Пути - Массив из Строка @@ -110,7 +110,7 @@ Фильтр.Расширения = Новый Структура(); Фильтр.Модули = Новый Структура(); - Фильтр.Теги = Новый Структура(); + Фильтр.Теги = Новый Соответствие(); Фильтр.Контексты = Новый Массив(); Фильтр.Наборы = Новый Массив(); Фильтр.Пути = Новый Массив(); @@ -147,7 +147,7 @@ КонецЕсли; Если ЗначениеЗаполнено(Теги) Тогда - Фильтр.Теги = ЮТКоллекции.МассивВСтруктуру(Теги); + Фильтр.Теги = МассивВСоответствие(Теги); КонецЕсли; Если ЗначениеЗаполнено(Наборы) Тогда @@ -274,7 +274,7 @@ Для Каждого Тег Из Теги Цикл - Если Фильтр.Теги.Свойство(Тег) Тогда + Если Фильтр.Теги[НРег(Тег)] <> Неопределено Тогда Возврат Истина; КонецЕсли; @@ -324,7 +324,7 @@ Для Каждого Тег Из Тест.Теги Цикл - Если Фильтр.Теги.Свойство(Тег) Тогда + Если Фильтр.Теги[НРег(Тег)] <> Неопределено Тогда Возврат Истина; КонецЕсли; diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index 829499ea0..1acfe00b0 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -100,6 +100,7 @@ CommonModule.ЮТОтчетJSONСлужебный CommonModule.ЮТОтчетJUnitСлужебный CommonModule.ЮТОтчетСлужебный + CommonModule.ЮТОтчетСлужебныйКлиентСервер CommonModule.ЮТПараметрыЗапускаСлужебный CommonModule.ЮТПодключаемыеМодулиСлужебный CommonModule.ЮТПодключаемыеМодулиСлужебныйВызовСервера diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 90b8c0d15..cc1a6f3de 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -232,7 +232,7 @@ ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); - УстановитьНовыйФильтр(, , , "ТегТеста1, ТегТеста2, Т, _, Тег111"); + УстановитьНовыйФильтр(, , , "Тег Теста1, ТегТеста2, Т, _, Тег111"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) @@ -246,7 +246,7 @@ ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); - УстановитьНовыйФильтр(, , , "ТегНабора"); + УстановитьНовыйФильтр(, , , "Тег Набора"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) @@ -255,7 +255,7 @@ ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); - УстановитьНовыйФильтр(, , , "ТегНабора, ТегТеста"); + УстановитьНовыйФильтр(, , , "Тег Набора, ТегТеста"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) @@ -268,16 +268,16 @@ Процедура Фильтр_ТегиМодуля() Экспорт ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); - УстановитьНовыйФильтр(, , , "ТегМодуля"); + УстановитьНовыйФильтр(, , , "Тег Модуля"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) .ИмеетДлину(0); ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); - ОписаниеМодуля.Теги.Добавить("ТегМодуля"); + ОписаниеМодуля.Теги.Добавить("Тег Модуля"); - УстановитьНовыйФильтр(, , , "ТегМодуля"); + УстановитьНовыйФильтр(, , , "Тег Модуля"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) @@ -359,7 +359,7 @@ Возврат ЮТФабрикаСлужебный.ОписаниеТеста(ИмяТеста, ЮТест.Данные().СлучайнаяСтрока(), - СтрРазделить(КонтекстыВызова, ", ", Ложь), + ЮТСтроки.РазделитьСтроку(КонтекстыВызова, ","), Теги); КонецФункции @@ -373,12 +373,12 @@ Функция ОписаниеМодуляДляТестированияФильтрацииТегов() Набор1 = ОписаниеНабораТестов(); - Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("ТегНабора"); + Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("Тег набора"); Набор1.Тесты.Добавить(ОписаниеТеста()); - Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста1")); - Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста1, ТегТеста2")); + Набор1.Тесты.Добавить(ОписаниеТеста(, , "Тег Теста1")); + Набор1.Тесты.Добавить(ОписаниеТеста(, , "Тег Теста1, ТегТеста2")); Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста")); - Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТЕГТеста1")); + Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТЕГ Теста1")); Набор2 = ОписаниеНабораТестов(); Набор2.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста2")); From 6894632e1463da5d8400f97d4490a2680a034803 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Wed, 15 May 2024 11:11:10 +0300 Subject: [PATCH 11/54] =?UTF-8?q?#61=20=D0=A4=D0=B8=D0=BB=D1=8C=D1=82?= =?UTF-8?q?=D1=80=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BD=D0=B0=D0=B1=D0=BE=D1=80?= =?UTF-8?q?=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 17 ++++++++-- .../Module.bsl" | 32 +++++++++++++------ 2 files changed, 37 insertions(+), 12 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 12cfb66cd..6fb4ad5ab 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -60,6 +60,10 @@ Для Каждого Набор Из НаборыТестов Цикл + Если НЕ ЭтоПодходящийНабор(Набор, Фильтр) Тогда + Продолжить; + КонецЕсли; + ОтфильтрованныйНабор = ЮТФабрикаСлужебный.ОписаниеТестовогоНабора(Набор.Имя); ЗаполнитьЗначенияСвойств(ОтфильтрованныйНабор, Набор, , "Тесты"); @@ -98,7 +102,7 @@ // Структура - Фильтр: // * Расширения - Структура - Имена расширений // * Модули - Структура - Имена модулей -// * Наборы - Массив из Строка - Имена тестовых наборов +// * Наборы - Соответствие из Строка - Имена тестовых наборов // * Теги - Соответствие из Строка // * Контексты - Массив из Строка - Контексты вызова тестовых методов // * Тесты - Массив из см. ОписаниеИмениТеста - Список путей к тестовым методам @@ -112,7 +116,7 @@ Фильтр.Модули = Новый Структура(); Фильтр.Теги = Новый Соответствие(); Фильтр.Контексты = Новый Массив(); - Фильтр.Наборы = Новый Массив(); + Фильтр.Наборы = Новый Соответствие(); Фильтр.Пути = Новый Массив(); Фильтр.Тесты = Новый Массив(); @@ -151,7 +155,7 @@ КонецЕсли; Если ЗначениеЗаполнено(Наборы) Тогда - Фильтр.Наборы = Наборы; + Фильтр.Наборы = МассивВСоответствие(Наборы); КонецЕсли; Если ЗначениеЗаполнено(Пути) Тогда @@ -188,6 +192,7 @@ Фильтр.Вставить("ЕстьФильтрРасширений", Фильтр.Расширения.Количество() > 0); Фильтр.Вставить("ЕстьФильтрМодулей", МодулиТестов.Количество() ИЛИ Фильтр.Модули.Количество()); + Фильтр.Вставить("ЕстьФильтрНаборов", ЗначениеЗаполнено(Фильтр.Наборы)); Фильтр.Вставить("ЕстьФильтрТестов", Фильтр.Тесты.Количество() > 0 ); Фильтр.Вставить("ЕстьФильтрКонтекстов", ЗначениеЗаполнено(Фильтр.Контексты)); Фильтр.Вставить("ЕстьФильтрТегов", ЗначениеЗаполнено(Фильтр.Теги)); @@ -284,6 +289,12 @@ КонецФункции +Функция ЭтоПодходящийНабор(Набор, Фильтр) + + Возврат НЕ Фильтр.ЕстьФильтрНаборов Или Фильтр.Наборы[НРег(Набор.Имя)] <> Неопределено; + +КонецФункции + Функция ФильтрТестов(Тест, Фильтр, СостояниеФильтрации) Если НЕ Фильтр.ЕстьФильтрТестов Тогда diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index cc1a6f3de..a54296a26 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -29,6 +29,7 @@ .Добавитьтест("Фильтр_ТегиМодуля") .Добавитьтест("Фильтр_ТегиНабора") .Добавитьтест("Фильтр_ТегиТеста") + .Добавитьтест("Фильтр_Наборы") ; КонецПроцедуры @@ -230,7 +231,7 @@ Процедура Фильтр_ТегиТеста() Экспорт - ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрации(); УстановитьНовыйФильтр(, , , "Тег Теста1, ТегТеста2, Т, _, Тег111"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); @@ -244,7 +245,7 @@ Процедура Фильтр_ТегиНабора() Экспорт - ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрации(); УстановитьНовыйФильтр(, , , "Тег Набора"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); @@ -253,7 +254,7 @@ .ИмеетДлину(1) .Свойство("[0].Тесты").ИмеетДлину(5); - ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрации(); УстановитьНовыйФильтр(, , , "Тег Набора, ТегТеста"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); @@ -267,14 +268,14 @@ Процедура Фильтр_ТегиМодуля() Экспорт - ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрации(); УстановитьНовыйФильтр(, , , "Тег Модуля"); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) .ИмеетДлину(0); - ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов(); + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрации(); ОписаниеМодуля.Теги.Добавить("Тег Модуля"); УстановитьНовыйФильтр(, , , "Тег Модуля"); @@ -287,6 +288,19 @@ КонецПроцедуры +Процедура Фильтр_Наборы() Экспорт + + ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрации(); + ОписаниеМодуля.НаборыТестов[1].Имя = "ТестовыйНабор2"; + УстановитьНовыйФильтр(, , , , "ТестовыйНабор"); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(1) + .Свойство("[0].Тесты").ИмеетДлину(5) + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -295,12 +309,12 @@ Тесты = Неопределено, Контексты = Неопределено, Теги = Неопределено, - Расширения = Неопределено) + Наборы = Неопределено) Параметры = ЮТФабрика.ПараметрыЗапуска(); - Если Расширения <> Неопределено Тогда - Параметры.filter.extensions = ЮТСтроки.РазделитьСтроку(Расширения, ","); + Если Наборы <> Неопределено Тогда + Параметры.filter.suites = ЮТСтроки.РазделитьСтроку(Наборы, ","); КонецЕсли; Если Тесты <> Неопределено Тогда @@ -370,7 +384,7 @@ КонецПроцедуры -Функция ОписаниеМодуляДляТестированияФильтрацииТегов() +Функция ОписаниеМодуляДляТестированияФильтрации() Набор1 = ОписаниеНабораТестов(); Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("Тег набора"); From a96d52ea8140df10988e062730b0edc939e4e8db Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Wed, 15 May 2024 11:50:16 +0300 Subject: [PATCH 12/54] =?UTF-8?q?#61=20=D0=A2=D0=B5=D1=81=D1=82=20=D0=BD?= =?UTF-8?q?=D0=B0=20=D1=84=D0=B8=D0=BB=D1=8C=D1=82=D1=80=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D1=8E=20=D1=82=D0=B5=D1=81=D1=82=D0=B0=20=D1=81=20=D1=83=D1=87?= =?UTF-8?q?=D0=B5=D1=82=D0=BE=D0=BC=20=D0=BA=D0=BE=D0=BD=D1=82=D0=B5=D0=BA?= =?UTF-8?q?=D1=81=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 12 +++++++++--- .../Module.bsl" | 10 +++++++++- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index a469b17de..c01ac32c0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -706,10 +706,13 @@ Функция БазовоеОписаниеРегистрируемогоОбъекта() Описание = Новый Структура(); + + Описание.Вставить("Теги", Новый Массив); + Описание.Вставить("НастройкиВыполнения", Новый Структура()); Описание.Вставить("Зависимости", Новый Массив()); + Описание.Вставить("Ошибки", Новый Массив); - Описание.Вставить("Теги", Новый Массив); Возврат Описание; @@ -718,10 +721,13 @@ Функция БазовоеОписаниеИсполняемогоОбъекта(РегистрируемыйОбъекта) Описание = Новый Структура(); - Описание.Вставить("Ошибки", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Ошибки)); + + Описание.Вставить("Теги", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Теги)); + Описание.Вставить("НастройкиВыполнения", ЮТКоллекции.СкопироватьСтруктуру(РегистрируемыйОбъекта.НастройкиВыполнения)); Описание.Вставить("Зависимости", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Зависимости)); - Описание.Вставить("Теги", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Теги)); + + Описание.Вставить("Ошибки", ЮТКоллекции.СкопироватьМассив(РегистрируемыйОбъекта.Ошибки)); Возврат Описание; diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index a54296a26..acf86ece6 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -196,14 +196,22 @@ ОписаниеМодуля = ОписаниеМодуля(ИмяМодуля); НаборТестов = ОписаниеНабораТестов(); НаборТестов.Тесты.Добавить(ОписаниеТеста(ИмяТеста)); + НаборТестов.Тесты.Добавить(ОписаниеТеста(ИмяТеста, "Сервер")); НаборТестов.Тесты.Добавить(ОписаниеТеста(ИмяТеста + "_")); НаборТестов.Тесты.Добавить(ОписаниеТеста(ИмяТеста, "НеСервер")); НаборТестов.Тесты.Добавить(ОписаниеТеста()); - ОписаниеМодуля.НаборыТестов.Добавить(НаборТестов); + ДобавитьКопиюНабора(ОписаниеМодуля, НаборТестов); УстановитьНовыйФильтр(, СтрШаблон("%1.%2", ИмяМодуля, ИмяТеста)); ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) + .ИмеетДлину(1) + .Свойство("[0].Тесты").ИмеетДлину(2); + + УстановитьНовыйФильтр(, СтрШаблон("%1.%2.КлиентУправляемоеПриложение", ИмяМодуля, ИмяТеста)); + ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля); + ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов) .ИмеетДлину(1) .Свойство("[0].Тесты").ИмеетДлину(1); From ee379afbf82555f4cabaad39b79edf84637c48f1 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Wed, 15 May 2024 11:58:32 +0300 Subject: [PATCH 13/54] =?UTF-8?q?#61=20=D0=A1=D0=BA=D0=BE=D1=80=D1=80?= =?UTF-8?q?=D0=B5=D0=BA=D1=82=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=BE=20?= =?UTF-8?q?=D0=BE=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../docs/getting-started/run/configuration.md | 9 ++++----- .../Module.bsl" | 14 ++------------ 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/documentation/docs/getting-started/run/configuration.md b/documentation/docs/getting-started/run/configuration.md index 5be0241eb..aad806238 100644 --- a/documentation/docs/getting-started/run/configuration.md +++ b/documentation/docs/getting-started/run/configuration.md @@ -21,11 +21,10 @@ |---------------|---------|-----------------------|------------------------------------------------------------------------------| | `extensions` | `Array` | `["tests"]` | Список имен расширений, из которых грузятся тесты | | `modules` | `Array` | `Null` | Список имен модулей, из которых грузятся тесты | -| `tests` | `Array` | `Null` | Список полных путей к исполняемым тестам (`[имя модуля.имя теста]`) | -| `suites` | `Array` | `Null` | **Не реализованно.** Список имен тестовых наборов, которые будут запускаться | -| `tags` | `Array` | `Null` | **Не реализованно.** Список тегов, которые будут запускаться | +| `tests` | `Array` | `Null` | Список полных путей к исполняемым тестам (`[имя модуля.имя теста{.Имя контекста}]`) | +| `suites` | `Array` | `Null` | Список имен тестовых наборов, которые будут запускаться | +| `tags` | `Array` | `Null` | Список тегов, которые будут запускаться | | `contexts` | `Array` | `Null` | Список имен контекстов исполнения, в которых будут запускаться тесты | -| `paths` | `Array` | `Null` | **Не реализованно.** Список полных путей к исполняемым тестам | ## Параметры логирования @@ -34,7 +33,7 @@ | `file` | `String` | `""` | Путь к файлу лога | | `enable` | `Boolean` | `Null` | Использование логирвания.
Если не указан, зависит от параметра `file` и `console`, если установлены - вкл, если нет - выкл | | `console` | `Boolean` | `false` | Вывод лога в stdout (консоль) | -| `level` | `String` | `"debug"` | Уровень детализации лога. Возможные значения: `"debug"`, `"info"`, `"error"` | +| `level` | `String` | `"debug"` | Уровень детализации лога. Возможные значения: `"debug"`, `"info"`, `"warning"`, `"error"` | Примеры: diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 6fb4ad5ab..f46283b4b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -106,18 +106,16 @@ // * Теги - Соответствие из Строка // * Контексты - Массив из Строка - Контексты вызова тестовых методов // * Тесты - Массив из см. ОписаниеИмениТеста - Список путей к тестовым методам -// * Пути - Массив из Строка Функция Фильтр() Экспорт //@skip-check structure-consructor-too-many-keys - Фильтр = Новый Структура("Расширения, Модули, Наборы, Теги, Контексты, Пути, Тесты"); + Фильтр = Новый Структура("Расширения, Модули, Наборы, Теги, Контексты, Тесты"); - Фильтр.Расширения = Новый Структура(); + Фильтр.Расширения = Новый Соответствие(); Фильтр.Модули = Новый Структура(); Фильтр.Теги = Новый Соответствие(); Фильтр.Контексты = Новый Массив(); Фильтр.Наборы = Новый Соответствие(); - Фильтр.Пути = Новый Массив(); Фильтр.Тесты = Новый Массив(); //@skip-check constructor-function-return-section @@ -133,11 +131,7 @@ Тесты = ЮТКоллекции.ЗначениеСтруктуры(ПараметрыЗапускаТестов.filter, "tests", Новый Массив); Теги = ЮТКоллекции.ЗначениеСтруктуры(ПараметрыЗапускаТестов.filter, "tags", Новый Массив); - // TODO: Подумать в каком формате задать наборы - ИмяМодуля.Набор, Набор или другой вариант Наборы = ЮТКоллекции.ЗначениеСтруктуры(ПараметрыЗапускаТестов.filter, "suites", Новый Массив); - // TODO: Обработка путей в формате: Модуль.ИмяТеста, ИмяТеста - метод, параметры, контекст - // ОМ_ЮТУтверждения.Что[0: 1].Сервер, ОМ_ЮТУтверждения.Что[1: Структура].Сервер - Пути = ЮТКоллекции.ЗначениеСтруктуры(ПараметрыЗапускаТестов.filter, "paths", Новый Массив); Фильтр = Фильтр(); @@ -158,10 +152,6 @@ Фильтр.Наборы = МассивВСоответствие(Наборы); КонецЕсли; - Если ЗначениеЗаполнено(Пути) Тогда - Фильтр.Пути = Пути; - КонецЕсли; - МодулиТестов = Новый Структура(); Если ЗначениеЗаполнено(Тесты) Тогда From 87d60dc5a2dee407ab80dd3f9bac1ffaf7a35bf9 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Wed, 15 May 2024 12:27:18 +0300 Subject: [PATCH 14/54] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D0=BF=D0=B5=D1=87=D0=B0?= =?UTF-8?q?=D1=82=D0=BE=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 28 +++++++++++++++++++ .../Module.bsl" | 2 +- .../Module.bsl" | 6 ++-- .../Module.bsl" | 2 +- .../Module.bsl" | 6 ++-- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 6 ++-- .../Module.bsl" | 2 +- .../Module.bsl" | 12 ++++---- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 4 +-- .../Module.bsl" | 4 +-- .../Module.bsl" | 2 +- .../Module.bsl" | 8 +++--- .../Module.bsl" | 14 ++++++++-- .../Module.bsl" | 4 +-- .../Module.bsl" | 5 ++-- .../Module.bsl" | 4 +-- 23 files changed, 79 insertions(+), 44 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 2ec88eb2c..c5dce9e42 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,8 +1,16 @@ { "cSpell.words": [ + "абвгдеёжзийклмнопрстуфхцчшщъыьэюя", + "алиас", "валидировать", + "гггг", + "гендером", + "Дозаполнить", "замокированного", + "Инкрементирует", + "КоллекцияjUnit", "логирвания", + "МассивjUnit", "Ментейнер", "моками", "моки", @@ -17,20 +25,40 @@ "Мокито", "моков", "Неопределено", + "ОКАТО", "Переиспользование", + "Повт", "помогаторы", "пресетов", "Регистронезависимое", "релизный", + "Сериализатор", "сериализацию", + "сериализуемыми", "сериализуемых", + "СтрокуjUnit", + "СHTTP", + "ТИПЗНАЧЕНИЯ", "фейкового", "фейковых", "фича", + "Человекочитаемое", "юнит", + "ЮТHTTP", + "Addin", "autonumber", "bellerage", + "BSLLS", + "classname", + "consructor", + "dumpjson", + "Functest", + "jUnit", "mindmap", + "tchk", + "testcase", + "testsuite", + "testsuites", "Wiremock", "XDTO", "yaxunit" diff --git "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" index 1fef6412b..3840c6b65 100644 --- "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" @@ -214,7 +214,7 @@ // BSLLS:NumberOfParams-on // BSLLS:NumberOfOptionalParams-on -// Возврщает идентификатор значения входного параметра по умолчанию. +// Возвращает идентификатор значения входного параметра по умолчанию. // // Возвращаемое значение: // Строка diff --git "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\270/Module.bsl" index 6a8f1c98e..e84bf8ab0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\270/Module.bsl" @@ -37,7 +37,7 @@ // ОбщийМодуль - Этот же модуль, для замыкания Функция КоличествоВызовов(ИмяМетода = Неопределено, ПараметрыВызова = Неопределено) Экспорт - СпозиционироватьсяНаМетоде(ИмяМетода, ПараметрыВызова); + ПозиционированиеНаМетоде(ИмяМетода, ПараметрыВызова); Возврат МокитоПроверки; @@ -53,7 +53,7 @@ // Массив из см. МокитоСлужебный.СтруктураВызоваМетода - Вызовы метода Функция Вызовы(ИмяМетода = Неопределено, ПараметрыВызова = Неопределено) Экспорт - СпозиционироватьсяНаМетоде(ИмяМетода, ПараметрыВызова); + ПозиционированиеНаМетоде(ИмяМетода, ПараметрыВызова); Возврат СтатистикаВызовов(); @@ -249,7 +249,7 @@ КонецФункции -Процедура СпозиционироватьсяНаМетоде(ИмяМетода = Неопределено, ПараметрыВызова = Неопределено) +Процедура ПозиционированиеНаМетоде(ИмяМетода = Неопределено, ПараметрыВызова = Неопределено) Параметры = ПараметрыПроверки(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 94b9e2790..5f94587a6 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\277\321\200\320\276\321\201\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -69,7 +69,7 @@ КонецФункции -// Возвращяет записи результат запроса +// Возвращает записи результат запроса // // Параметры: // ОписаниеЗапроса - см. ЮТЗапросы.ОписаниеЗапроса diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index a1329d7b1..942853ee0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -70,7 +70,7 @@ КонецПроцедуры -// Содает новый массив путем объединия входных. +// Создает новый массив путем объединения входных. // // Параметры: // Коллекция1 - Массив Из Произвольный @@ -269,7 +269,7 @@ // // Параметры: // Коллекция - Произвольный - Итерируемая коллекция -// ИмяРеквизита - Строка - Имя реквизата элементов коллекции +// ИмяРеквизита - Строка - Имя реквизита элементов коллекции // // Возвращаемое значение: // Массив из Произвольный @@ -446,7 +446,7 @@ КонецФункции // Создает структуру из массива. -// Ключами будут элементы массива, а значением каждого элемента струтуруы - параметр `ЗначениеСтруктуры` +// Ключами будут элементы массива, а значением каждого элемента структуры - параметр `ЗначениеСтруктуры` // // Параметры: // Значения - Массив из Строка diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" index ad39dade4..07e26c458 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" @@ -95,7 +95,7 @@ КонецФункции -// Подключает внещнюю компоненту из макета +// Подключает внешнюю компоненту из макета // // Параметры: // ИмяМакета - Строка - Имя макета, в котором хранится компонента diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 9856c3620..9f8f04bdb 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -206,7 +206,7 @@ | | |", ИмяФайла); - ИначеЕсли СтрНайти(ДанныеРеестра, СтрШаблон("path=""%1""", ИмяФайла)) <> 0 Тогда // Компонента уже зарегистрированна + ИначеЕсли СтрНайти(ДанныеРеестра, СтрШаблон("path=""%1""", ИмяФайла)) <> 0 Тогда // Компонента уже зарегистрирована Возврат Ложь; Иначе // Добавляем компоненту Запись = СтрШаблон(" ", ИмяФайла); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" index 398aa2e9a..bbb84fca8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -127,7 +127,7 @@ КонецФункции -// Возвращяет набор регистров движений документа +// Возвращает набор регистров движений документа // // Параметры: // Документ - ОбъектМетаданных diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217/Module.bsl" index d738e24f1..5d0c8f033 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217/Module.bsl" @@ -76,7 +76,7 @@ // ИмяНастройки - Строка - Имя настройки, см. ЮТФабрика.ПараметрыИсполненияТеста // ЗначениеПоУмолчанию - Произвольный - Значение по умолчанию // СтрогийУровеньИсполнения - Булево - Признак, стоит ли проверять наличие настройки у родительских элементов. -// Ложь - По умолчанию, будет выполнен поиск и получение значения для родетелей (набор, модуль), если значения для текущего элемента не установлено. +// Ложь - По умолчанию, будет выполнен поиск и получение значения для родителей (набор, модуль), если значения для текущего элемента не установлено. // Истина - Получение настройки только для текущего элемента. // // Возвращаемое значение: diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" index 4f021dbe1..ce39b3845 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" @@ -122,7 +122,7 @@ #Область ДатаВремя -// Человекочитаемое представление продолжительности +// Формирует представление продолжительности в удобном для восприятия виде, с выделением минут секунд и тд. // // Параметры: // Продолжительность - Число - Продолжительность в миллисекундах @@ -335,7 +335,7 @@ КонецПроцедуры -// Преостанавливает поток выполнения на указанное количество секунд +// Приостанавливает поток выполнения на указанное количество секунд // // Параметры: // Время - Число - Продолжительность паузы в секундах, возможно указывать дробное значение @@ -376,7 +376,7 @@ КонецПроцедуры -// Возвращяет макет +// Возвращает макет // // Параметры: // ИмяМакета - Строка - Возможные значения diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\221\320\260\320\275\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\221\320\260\320\275\320\272\320\270/Module.bsl" index 63270c715..a9d810649 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\221\320\260\320\275\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\221\320\260\320\275\320\272\320\270/Module.bsl" @@ -24,7 +24,7 @@ // Параметры: // БИК - Строка - БИК банка // КодВалюты - Строка - Код валюты -// ЮрЛицо - Булево - Генерация счета юрлица, иначе физ лица +// ЮрЛицо - Булево - Генерация счета юр. лица, иначе физ. лица // // Возвращаемое значение: // Строка - Номер счета diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\233\321\216\320\264\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\233\321\216\320\264\320\270/Module.bsl" index 95dafc0f4..4d361d021 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\233\321\216\320\264\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214_\320\233\321\216\320\264\320\270/Module.bsl" @@ -101,7 +101,7 @@ КонецФункции -// Формирует случаный ИНН физического лица +// Формирует случайный ИНН физического лица // // Возвращаемое значение: // Строка @@ -109,16 +109,16 @@ Возврат ЮТТестовыеДанные.Подражатель().Компании().ИНН(, Истина); КонецФункции -// Формирует случаный СНИЛС. +// Формирует случайный СНИЛС. // https://ru.wikipedia.org/wiki/Контрольное_число // Возвращаемое значение: // Строка Функция СНИЛС() Экспорт ЧастиСнилс = Новый Массив(); - ФорматаяСтрока = "ЧЦ=3; ЧН=000; ЧВН=;"; - ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(100, 999), ФорматаяСтрока)); - ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(0, 999), ФорматаяСтрока)); - ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(0, 999), ФорматаяСтрока)); + ФорматЧисла = "ЧЦ=3; ЧН=000; ЧВН=;"; + ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(100, 999), ФорматЧисла)); + ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(0, 999), ФорматЧисла)); + ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(0, 999), ФорматЧисла)); ИтогоСтрокой = СтрСоединить(ЧастиСнилс, ""); ДлинаОсновнойЧасти = СтрДлина(ИтогоСтрокой); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213/Module.bsl" index d6721454f..6f827cdc8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213/Module.bsl" @@ -42,7 +42,7 @@ КонецФункции // Устанавливает имя свойства, все последующие проверки будут относится к нему. -// Это алиас для см. Реквизит +// Это псевдоним (алиас) для см. Реквизит // // Параметры: // ИмяСвойства - Строка - Имя реквизита diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 53034b530..bdfd835c2 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -25,7 +25,7 @@ // Предикаты - Массив Из см. ЮТФабрика.ВыражениеПредиката // ПараметрыСообщенийОбОшибке - см. ПараметрыСообщенийОбОшибке // ПараметрыСравнения - Неопределено -// - Структура - Параметры сравнения значений, для разных выражений испльзуются свои параметры +// - Структура - Параметры сравнения значений, для разных выражений используются свои параметры // // Возвращаемое значение: // см. ЮТФабрикаСлужебный.ОписаниеРезультатаПроверки diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" index c2ad89f6b..143527091 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" @@ -18,7 +18,7 @@ #Область ПрограммныйИнтерфейс -// Добавляет пяснение возникшей ошибки, которое будет довлено в отчет. +// Добавляет пояснение возникшей ошибки, которое будет добавлено в отчет. // Используется перед выбросом исключения, чтобы добавить полезной информации об ошибке, но при этом не ломать стек. // // Параметры: diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 486a36b84..8833c438e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -60,7 +60,7 @@ #Область СлужебныеПроцедурыИФункции // https://github.com/vanessa-opensource/add -// портирован из Functest +// перенесен из Functest Функция ПолучитьТаблицуЗначенийИзТабличногоДокумента(ТабличныйДокумент, УчитыватьТолькоВидимыеКолонки = Ложь, УчитыватьТолькоВидимыеСтроки = Ложь) ТипТабличногоДокумента = ТипЗнч(ТабличныйДокумент); @@ -79,7 +79,7 @@ Колонки = НоваяТаблицаЗначений.Колонки; ТипСтрока = Новый ОписаниеТипов("Строка"); - // TODO При определении видимости не учитывается наличие нескольких форматов строк, сейчас видимоcть колонки определяется по формату первой строки + // TODO При определении видимости не учитывается наличие нескольких форматов строк, сейчас видимость колонки определяется по формату первой строки УчитываемыеКолонки = Новый Массив; Для НомерКолонки = 1 По НомерПоследнейКолонки Цикл ОбластьКолонки = ТабличныйДокумент.Область(0, НомерКолонки, 1, НомерКолонки); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 3729f5d9d..adbdf3349 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\200\320\260\320\262\320\275\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -393,7 +393,7 @@ КонецФункции -#Область РеализацияПредикатор +#Область РеализацияПредикатов Процедура ПроверитьВыражениеПредиката(Значение, Выражение, СтатусПроверки, ПараметрыСообщенийОбОшибке, ПараметрыСравнения) Экспорт @@ -413,7 +413,7 @@ // СтатусПроверки - см. ЮТФабрикаСлужебный.ОписаниеРезультатаПроверки // ПараметрыСообщенийОбОшибке - см. ПараметрыСообщенийОбОшибке // ПараметрыСравнения - Неопределено -// - Структура - Параметры сравнения значений, для разных выражений испльзуются свои параметры +// - Структура - Параметры сравнения значений, для разных выражений используются свои параметры Процедура ВызватьОбработчикПредиката(Значение, Выражение, СтатусПроверки, ПараметрыСообщенийОбОшибке, ПараметрыСравнения) // BSLLS:CognitiveComplexity-off diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index 65b7b5d3a..dcdc965c0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -535,7 +535,7 @@ КонецФункции -// Возвращает случайное предопреленное значения объекта конфигурации. +// Возвращает случайное предопределенное значения объекта конфигурации. // // Параметры: // Менеджер - Строка - Имя менеджера. Примеры: "Справочники.ВидыЦен", "Справочник.ВидыЦен" diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 8b4727d26..130fb743c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -40,11 +40,11 @@ ИначеЕсли Тип = Тип("Строка") Тогда - Значение = ФикстивнаяСтрока(ОписаниеТипа); + Значение = ФиктивнаяСтрока(ОписаниеТипа); ИначеЕсли Тип = Тип("Дата") Тогда - Значение = ФикстивнаяДата(ОписаниеТипа); + Значение = ФиктивнаяДата(ОписаниеТипа); ИначеЕсли Тип = Тип("Булево") Тогда @@ -227,7 +227,7 @@ КонецФункции -Функция ФикстивнаяСтрока(ОписаниеТипа) +Функция ФиктивнаяСтрока(ОписаниеТипа) Если ТипЗнч(ОписаниеТипа) <> Тип("ОписаниеТипов") Тогда Возврат ЮТТестовыеДанные.СлучайнаяСтрока(ЮТТестовыеДанные.СлучайноеПоложительноеЧисло(100)); @@ -243,7 +243,7 @@ КонецФункции -Функция ФикстивнаяДата(ОписаниеТипа) +Функция ФиктивнаяДата(ОписаниеТипа) Интервал = 315360000; // 10 лет //@skip-check use-non-recommended-method diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" index 062057515..1dc418e90 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" @@ -37,13 +37,21 @@ КонецФункции -Функция Тег(ИмяТега) Экспорт +// Добавляет тег к тесту/набору/модулю +// +// Параметры: +// Тег - Строка +// +// Возвращаемое значение: +// CommonModule.ЮТТесты - Тег +Функция Тег(Тег) Экспорт - ЮТТестыСлужебный.ДобавитьТег(ИмяТега); + ЮТТестыСлужебный.ДобавитьТег(Тег); Возврат ЮТТесты; КонецФункции + // Регистрирует тест, исполняемый в контекстах, в которых доступен тестовый модуль. // Например // @@ -357,7 +365,7 @@ КонецФункции -// Возволяет выполнить настройку зависимостей теста, тестового набора или модуля. +// Позволяет выполнить настройку зависимостей теста, тестового набора или модуля. // Возвращает модуль установки зависимостей теста. // // Возвращаемое значение: diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index 7b95cb6ab..351592c50 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -828,7 +828,7 @@ // Параметры: // ОжидаемоеЗначение - Строка - Ожидается, что сообщение об ошибке будет содержать(включать) данный текст // ОписаниеПроверки - Строка - Описание конкретной проверки -// ВТранзакции - Булево - Вызов метода выполняется в трананзакции +// ВТранзакции - Булево - Вызов метода выполняется в транзакции // // Возвращаемое значение: // ОбщийМодуль - Этот модуль для замыкания @@ -868,7 +868,7 @@ // ОжидаемоеЗначение - Строка - Ожидается, что метод выбросит исключение, текст которого НЕ будет содержать (включать) данный текст // - Неопределено - Ожидается, что метод отработает без выбора исключения // ОписаниеПроверки - Строка - Описание конкретной проверки -// ВТранзакции - Булево - Вызов метода выполняется в трананзакции +// ВТранзакции - Булево - Вызов метода выполняется в транзакции // // Возвращаемое значение: // ОбщийМодуль - Этот модуль для замыкания diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index f46283b4b..b9b0e28de 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -95,8 +95,7 @@ КонецПроцедуры -// Фильтр -// Конструктур фильтра поиска тестовых методов +// Конструктор фильтра поиска тестовых методов // // Возвращаемое значение: // Структура - Фильтр: @@ -240,7 +239,7 @@ ОписаниеИмениТеста.Контекст = ЮТКоллекции.ЗначениеВМассиве(ОписаниеИмениТеста.Контекст); ДоступныеТестовыеМетоды.Вставить(ВРег(ОписаниеИмениТеста.ИмяМетода), ОписаниеИмениТеста); ИначеЕсли ОписаниеИмениТеста.Контекст = Неопределено Тогда - СохраненноеОписаниеИмени.Контекст = Неопределено; // Без фильтрации контекста теста, возьмом из самого теста контексты + СохраненноеОписаниеИмени.Контекст = Неопределено; // Без фильтрации контекста теста, возьмем из самого теста контексты ИначеЕсли СохраненноеОписаниеИмени.Контекст <> Неопределено Тогда СохраненноеОписаниеИмени.Контекст.Добавить(ОписаниеИмениТеста.Контекст); Иначе diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" index a07264230..b8d45af82 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" @@ -90,7 +90,7 @@ // Умный контекст, в который можно сохранять и получать из него промежуточные данные // Этот контекст работает с см. КонтекстТеста, см. КонтекстТестовогоНабора и см. КонтекстМодуля. -// При получении значения оно ущется во всех 3 контекста поочереди. +// При получении значения выполняется поиск во всех 3 контекста поочереди. // При установке значения, оно устанавливается в текущий контекст, например, в событии перед тестовым наборов в м. КонтекстТестовогоНабора // // Возвращаемое значение: @@ -163,7 +163,7 @@ КонецФункции -// Преостанавливает поток выполнения на указанное количество секунд +// Приостанавливает поток выполнения на указанное количество секунд // // Параметры: // Время - Число - Продолжительность паузы в секундах, возможно указывать дробное значение From 4a90e2e730243fee4ddfea24aa09734dbf2a1c74 Mon Sep 17 00:00:00 2001 From: Maximov Valery Date: Wed, 15 May 2024 14:22:45 +0300 Subject: [PATCH 15/54] Update sq.yml fix ver --- .github/workflows/sq.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sq.yml b/.github/workflows/sq.yml index 4fe09291b..e214d199a 100644 --- a/.github/workflows/sq.yml +++ b/.github/workflows/sq.yml @@ -31,7 +31,7 @@ jobs: id: extract_version - name: Setup sonarqube - uses: warchant/setup-sonar-scanner@v3 + uses: warchant/setup-sonar-scanner@v8 # Анализ проекта в SonarQube (ветка) - name: Анализ в SonarQube (branch) From 90ceabda8dd5474dfa366ede16006ac34883d8b5 Mon Sep 17 00:00:00 2001 From: Koryakin Aleksey Date: Fri, 17 May 2024 15:11:06 +0300 Subject: [PATCH 16/54] fix gh action --- .github/workflows/export-xml.yml | 2 +- .github/workflows/run-tests-linux.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/export-xml.yml b/.github/workflows/export-xml.yml index 1f118ae5c..c944edef7 100644 --- a/.github/workflows/export-xml.yml +++ b/.github/workflows/export-xml.yml @@ -21,7 +21,7 @@ jobs: - uses: actions/checkout@v3 - name: install EDT - uses: IT-Medved/onec-setup-build-env-action@develop + uses: alkoleft/onec-setup-build-env-action@develop with: type: edt edt_version: ${{ inputs.edt_version }} diff --git a/.github/workflows/run-tests-linux.yml b/.github/workflows/run-tests-linux.yml index b6cf2e60c..28a2840be 100644 --- a/.github/workflows/run-tests-linux.yml +++ b/.github/workflows/run-tests-linux.yml @@ -51,7 +51,7 @@ jobs: mkdir reports -p - name: install platform - uses: IT-Medved/onec-setup-build-env-action@develop + uses: alkoleft/onec-setup-build-env-action@develop with: type: onec onec_version: ${{ inputs.v8_version }} From c30d0b72b0fe75df1373ff646fd682f52c7d2fcf Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 20 May 2024 15:54:55 +0300 Subject: [PATCH 17/54] ci optimize --- .github/workflows/main-build.yml | 72 ++++++++++--------- ...s.yml => step-build-artifacts-windows.yml} | 0 .../{export-xml.yml => step-export-xml.yml} | 2 +- .github/workflows/step-publish-artifacts.yml | 35 +++++++++ ...sts-linux.yml => step-run-tests-linux.yml} | 0 ...windows.yml => step-run-tests-windows.yml} | 0 .github/workflows/step-run-tests.yml | 42 +++++++++++ 7 files changed, 117 insertions(+), 34 deletions(-) rename .github/workflows/{build-on-windows.yml => step-build-artifacts-windows.yml} (100%) rename .github/workflows/{export-xml.yml => step-export-xml.yml} (99%) create mode 100644 .github/workflows/step-publish-artifacts.yml rename .github/workflows/{run-tests-linux.yml => step-run-tests-linux.yml} (100%) rename .github/workflows/{run-tests-windows.yml => step-run-tests-windows.yml} (100%) create mode 100644 .github/workflows/step-run-tests.yml diff --git a/.github/workflows/main-build.yml b/.github/workflows/main-build.yml index e854bac17..6c5ac56e0 100644 --- a/.github/workflows/main-build.yml +++ b/.github/workflows/main-build.yml @@ -1,7 +1,11 @@ name: Build and test on: push: - branches: [ feature/**, develop ] + branches: + - feature/** + - develop + tags: + - '*' pull_request_target: branches: [ develop ] @@ -10,14 +14,14 @@ concurrency: cancel-in-progress: true permissions: - contents: read + contents: write checks: write id-token: write jobs: export_to_designer: name: Export to designer xml - uses: ./.github/workflows/export-xml.yml + uses: ./.github/workflows/step-export-xml.yml with: edt_version: 2023.1.2 artifact_name: designer-src @@ -25,44 +29,46 @@ jobs: build_artifacts: name: Build artifacts - uses: ./.github/workflows/build-on-windows.yml + uses: ./.github/workflows/step-build-artifacts-windows.yml needs: export_to_designer with: v8_version: 8.3.21.1895 secrets: inherit - - tests_linux_ru: - name: Tests Linux 8.3.21.1895 ru_RU - uses: ./.github/workflows/run-tests-linux.yml - if: github.ref == 'refs/heads/develop' - needs: build_artifacts - with: - v8_version: 8.3.21.1895 - secrets: inherit - - tests_linux_en: - name: Tests Linux 8.3.21.1895 en_US - uses: ./.github/workflows/run-tests-linux.yml - if: github.ref == 'refs/heads/develop' + + tests_windows: + strategy: + fail-fast: false + matrix: + v8_version: + - 8.3.21.1895 + locale: + - ru_RU + - en_US + uses: ./.github/workflows/step-run-tests-windows.yml needs: build_artifacts with: - v8_version: 8.3.21.1895 - locale: en_US + v8_version: ${{ matrix.v8_version }} + locale: ${{ matrix.locale }} secrets: inherit - - tests_windows_ru: - name: Tests Windows 8.3.21.1895 ru_RU - uses: ./.github/workflows/run-tests-windows.yml + + tests_linux: + strategy: + fail-fast: false + matrix: + v8_version: + - 8.3.21.1895 + locale: + - ru_RU + - en_US + uses: ./.github/workflows/step-run-tests-linux.yml needs: build_artifacts with: - v8_version: 8.3.21.1895 - locale: ru_RU + v8_version: ${{ matrix.v8_version }} + locale: ${{ matrix.locale }} secrets: inherit - tests_windows_en: - name: Tests Windows 8.3.21.1895 en_US - uses: ./.github/workflows/run-tests-windows.yml + + publish_artifacts: + name: Publish draft release + if: ${{ startsWith(github.ref, 'refs/tags/') && success() }} + uses: ./.github/workflows/step-publish-artifacts.yml needs: build_artifacts - with: - v8_version: 8.3.21.1895 - locale: en_US - secrets: inherit \ No newline at end of file diff --git a/.github/workflows/build-on-windows.yml b/.github/workflows/step-build-artifacts-windows.yml similarity index 100% rename from .github/workflows/build-on-windows.yml rename to .github/workflows/step-build-artifacts-windows.yml diff --git a/.github/workflows/export-xml.yml b/.github/workflows/step-export-xml.yml similarity index 99% rename from .github/workflows/export-xml.yml rename to .github/workflows/step-export-xml.yml index c944edef7..5bb73dad6 100644 --- a/.github/workflows/export-xml.yml +++ b/.github/workflows/step-export-xml.yml @@ -15,7 +15,7 @@ concurrency: cancel-in-progress: true jobs: - build: + export: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 diff --git a/.github/workflows/step-publish-artifacts.yml b/.github/workflows/step-publish-artifacts.yml new file mode 100644 index 000000000..b36204a09 --- /dev/null +++ b/.github/workflows/step-publish-artifacts.yml @@ -0,0 +1,35 @@ +name: Run tests on Linux + +on: + workflow_call: + inputs: + artifact_name: + type: string + required: false + default: build-artifacts + +permissions: + contents: write + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + publish: + runs-on: ubuntu-latest + steps: + + - name: download artifact + uses: actions/download-artifact@v3 + with: + name: ${{ inputs.artifact_name }} + path: binary + - name: Release + uses: softprops/action-gh-release@v2 + with: + draft: true + files: binary/YAxUnit.cfe + generate_release_notes: true + append_body: false + token: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/run-tests-linux.yml b/.github/workflows/step-run-tests-linux.yml similarity index 100% rename from .github/workflows/run-tests-linux.yml rename to .github/workflows/step-run-tests-linux.yml diff --git a/.github/workflows/run-tests-windows.yml b/.github/workflows/step-run-tests-windows.yml similarity index 100% rename from .github/workflows/run-tests-windows.yml rename to .github/workflows/step-run-tests-windows.yml diff --git a/.github/workflows/step-run-tests.yml b/.github/workflows/step-run-tests.yml new file mode 100644 index 000000000..c97f63fe1 --- /dev/null +++ b/.github/workflows/step-run-tests.yml @@ -0,0 +1,42 @@ +name: Run tests on Linux + +on: + workflow_call: + inputs: + + matrix: + description: 'Matrix parameters' + type: string + required: true + + artifact_name: + type: string + required: false + default: build-artifacts + + fail_on_failure: + type: boolean + required: false + default: true + +permissions: + contents: read + checks: write + id-token: write + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }} + cancel-in-progress: true + +jobs: + tests_windows: + uses: ./.github/workflows/step-run-tests-windows.yml + with: + matrix: ${{ inputs.matrix }} + secrets: inherit + + tests_ubuntu: + uses: ./.github/workflows/step-run-tests-linux.yml + with: + matrix: ${{ inputs.matrix }} + secrets: inherit \ No newline at end of file From 7efb38a6441a8bc45857fbe1e41cbfd5d9d81597 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 20 May 2024 22:02:02 +0300 Subject: [PATCH 18/54] sonar-quality-gate --- .github/workflows/sq-pr.yml | 28 ++++++++++++++++++++++++++++ .github/workflows/sq.yml | 4 +++- sonar-project.properties | 5 ++++- 3 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/sq-pr.yml diff --git a/.github/workflows/sq-pr.yml b/.github/workflows/sq-pr.yml new file mode 100644 index 000000000..0f8f3bb2c --- /dev/null +++ b/.github/workflows/sq-pr.yml @@ -0,0 +1,28 @@ +name: Анализ в SonarQube (pull-request) + +on: [pull_request] + +jobs: + SonarScanner: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + repository: ${{ github.event.workflow_run.head_repository.full_name }} + ref: ${{ github.event.workflow_run.head_branch }} + fetch-depth: 0 + + # https://docs.sonarqube.org/latest/analysis/pull-request/ + - name: Анализ в SonarQube (pull-request) + if: github.event_name == 'pull_request' + uses: alkoleft/sonar-quality-gate@master + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GIT_URL: "https://api.github.com" + GIT_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_URL: https://sonar.openbsl.ru + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + GITHUB_REPOSITORY: bia-technologies/yaxunit + CI_MERGE_REQUEST_IID: ${{ github.event.pull_request.number }} + DEBUG: ${{ runner.debug }} diff --git a/.github/workflows/sq.yml b/.github/workflows/sq.yml index e214d199a..42654d91b 100644 --- a/.github/workflows/sq.yml +++ b/.github/workflows/sq.yml @@ -1,6 +1,8 @@ name: sq-analyze -on: [push, pull_request] +on: + - push + # - pull_request jobs: SonarScanner: diff --git a/sonar-project.properties b/sonar-project.properties index 95289ab94..624497e78 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -12,4 +12,7 @@ sonar.inclusions=**/*.bsl, **/*.os # Encoding of the source code. Default is default system encoding sonar.sourceEncoding=UTF-8 -sonar.bsl.languageserver.configurationPath=.bsl-language-server.json \ No newline at end of file +sonar.bsl.languageserver.configurationPath=.bsl-language-server.json +sonar.qualitygate.wait=true +sonar.organization=bia-technologies +sonar.host.url=https://sonar.openbsl.ru \ No newline at end of file From 612625ee6a4652f04e785101bef5fda3372e0abc Mon Sep 17 00:00:00 2001 From: alkoleft Date: Tue, 21 May 2024 15:45:11 +0300 Subject: [PATCH 19/54] build release job and bump actions dependences --- .github/workflows/build-release.yml | 73 +++++++++++++++++++ .github/workflows/deploy-documentation.yml | 2 +- .github/workflows/main-build.yml | 11 +-- .github/workflows/sq-pr.yml | 4 +- .github/workflows/sq.yml | 2 +- .../step-build-artifacts-windows.yml | 4 +- .github/workflows/step-export-xml.yml | 24 +++++- .github/workflows/step-publish-artifacts.yml | 2 +- .github/workflows/step-run-tests-linux.yml | 6 +- .github/workflows/step-run-tests-windows.yml | 14 ++-- .github/workflows/step-run-tests.yml | 42 ----------- 11 files changed, 113 insertions(+), 71 deletions(-) create mode 100644 .github/workflows/build-release.yml delete mode 100644 .github/workflows/step-run-tests.yml diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml new file mode 100644 index 000000000..2fed2c2c1 --- /dev/null +++ b/.github/workflows/build-release.yml @@ -0,0 +1,73 @@ +name: Build release +on: + push: + tags: + - '*' + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }}-release + cancel-in-progress: true + +permissions: + contents: write + +jobs: + export_to_designer: + name: Export to designer xml + uses: ./.github/workflows/step-export-xml.yml + with: + edt_version: 2023.1.2 + artifact_name: designer-src + engine_only: true + secrets: inherit + + build_artifacts: + runs-on: ubuntu-latest + needs: export_to_designer + + steps: + - name: install 8.3.21.1895 + uses: alkoleft/onec-setup-build-env-action@develop + with: + type: onec + onec_version: 8.3.21.1895 + cache: true + env: + ONEC_USERNAME: ${{ secrets.ONEC_USERNAME }} + ONEC_PASSWORD: ${{ secrets.ONEC_PASSWORD }} + timeout-minutes: 10 + + - name: download artifact + uses: actions/download-artifact@v4 + with: + name: designer-src + - name: extract artifacts + run: | + mkdir export + cd export + 7z x ../export.7z -y + + - name: create IB + run: ibcmd infobase create --db-path=file-db + timeout-minutes: 5 + + - name: import yaxunit + run: ibcmd infobase config import --db-path=file-db --extension=YAXUNIT export/yaxunit + timeout-minutes: 5 + + - name: save yaxunit + run: ibcmd infobase config save --db-path=file-db --extension=YAXUNIT YAxUnit-${{ needs.export_to_designer.outputs.yaxunit_version }}.cfe + timeout-minutes: 5 + + - name: Release + uses: softprops/action-gh-release@v2 + if: ${{ success() }} + with: + draft: true + files: YAxUnit-*.cfe + fail_on_unmatched_files: true + generate_release_notes: true + append_body: false + name: Версия ${{ needs.export_to_designer.outputs.yaxunit_version }} + token: ${{ secrets.GITHUB_TOKEN }} + diff --git a/.github/workflows/deploy-documentation.yml b/.github/workflows/deploy-documentation.yml index 8c07ce64f..8e6e0cd45 100644 --- a/.github/workflows/deploy-documentation.yml +++ b/.github/workflows/deploy-documentation.yml @@ -16,7 +16,7 @@ jobs: name: Deploy to GitHub Pages runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Download bsl doc run: curl -L https://github.com/alkoleft/bsldoc/releases/download/0.1.0/bsldoc-0.1.0.jar --output ./bsldoc.jar && chmod +7 ./bsldoc.jar - name: Generate API documentation diff --git a/.github/workflows/main-build.yml b/.github/workflows/main-build.yml index 6c5ac56e0..68f74f3e6 100644 --- a/.github/workflows/main-build.yml +++ b/.github/workflows/main-build.yml @@ -4,13 +4,12 @@ on: branches: - feature/** - develop - tags: - - '*' + pull_request_target: branches: [ develop ] concurrency: - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }} + group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }}-main cancel-in-progress: true permissions: @@ -66,9 +65,3 @@ jobs: v8_version: ${{ matrix.v8_version }} locale: ${{ matrix.locale }} secrets: inherit - - publish_artifacts: - name: Publish draft release - if: ${{ startsWith(github.ref, 'refs/tags/') && success() }} - uses: ./.github/workflows/step-publish-artifacts.yml - needs: build_artifacts diff --git a/.github/workflows/sq-pr.yml b/.github/workflows/sq-pr.yml index 0f8f3bb2c..ced5177f0 100644 --- a/.github/workflows/sq-pr.yml +++ b/.github/workflows/sq-pr.yml @@ -1,13 +1,13 @@ name: Анализ в SonarQube (pull-request) -on: [pull_request] +on: [pull_request_target] jobs: SonarScanner: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: ${{ github.event.workflow_run.head_repository.full_name }} ref: ${{ github.event.workflow_run.head_branch }} diff --git a/.github/workflows/sq.yml b/.github/workflows/sq.yml index 42654d91b..56769139d 100644 --- a/.github/workflows/sq.yml +++ b/.github/workflows/sq.yml @@ -10,7 +10,7 @@ jobs: if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.event.repository.full_name steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: ${{ github.event.workflow_run.head_repository.full_name }} ref: ${{ github.event.workflow_run.head_branch }} diff --git a/.github/workflows/step-build-artifacts-windows.yml b/.github/workflows/step-build-artifacts-windows.yml index ccbc259a4..07fbe7f10 100644 --- a/.github/workflows/step-build-artifacts-windows.yml +++ b/.github/workflows/step-build-artifacts-windows.yml @@ -40,7 +40,7 @@ jobs: timeout-minutes: 10 - name: download artifact - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: ${{ inputs.src_artifact_name }} @@ -75,7 +75,7 @@ jobs: timeout-minutes: 5 - name: upload-artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: ${{ inputs.artifact_name }} path: binary\*.* diff --git a/.github/workflows/step-export-xml.yml b/.github/workflows/step-export-xml.yml index 5bb73dad6..91b4055a5 100644 --- a/.github/workflows/step-export-xml.yml +++ b/.github/workflows/step-export-xml.yml @@ -9,6 +9,14 @@ on: artifact_name: type: string required: true + + engine_only: + type: boolean + required: false + default: false + outputs: + yaxunit_version: + value: ${{ jobs.export.outputs.yaxunit_version }} concurrency: group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }}-export @@ -17,9 +25,17 @@ concurrency: jobs: export: runs-on: ubuntu-latest + outputs: + yaxunit_version: ${{ steps.extract_version.outputs.version }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 + - name: Extract version + if: github.event_name == 'push' + shell: bash + run: echo "version=$(cat ./exts/yaxunit/src/Configuration/Configuration.mdo | grep -oP '(?<=)[\d.]+')" >> $GITHUB_OUTPUT + id: extract_version + - name: install EDT uses: alkoleft/onec-setup-build-env-action@develop with: @@ -29,9 +45,10 @@ jobs: env: ONEC_USERNAME: ${{ secrets.ONEC_USERNAME }} ONEC_PASSWORD: ${{ secrets.ONEC_PASSWORD }} - timeout-minutes: 10 + timeout-minutes: 30 - name: convert configuration src + if: ${{ !inputs.engine_only }} uses: alkoleft/onec-edtcli-command-action@main with: export: true @@ -50,6 +67,7 @@ jobs: timeout-minutes: 10 - name: convert tests src + if: ${{ !inputs.engine_only }} uses: alkoleft/onec-edtcli-command-action@main with: export: true @@ -63,7 +81,7 @@ jobs: 7za a -t7z ../export.7z ./ - name: upload-artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: ${{ inputs.artifact_name }} path: export.7z diff --git a/.github/workflows/step-publish-artifacts.yml b/.github/workflows/step-publish-artifacts.yml index b36204a09..23eb6bf22 100644 --- a/.github/workflows/step-publish-artifacts.yml +++ b/.github/workflows/step-publish-artifacts.yml @@ -21,7 +21,7 @@ jobs: steps: - name: download artifact - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: ${{ inputs.artifact_name }} path: binary diff --git a/.github/workflows/step-run-tests-linux.yml b/.github/workflows/step-run-tests-linux.yml index 28a2840be..4731a9254 100644 --- a/.github/workflows/step-run-tests-linux.yml +++ b/.github/workflows/step-run-tests-linux.yml @@ -38,7 +38,7 @@ jobs: steps: - name: download artifact - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: ${{ inputs.artifact_name }} path: binary @@ -157,14 +157,14 @@ jobs: run: cat ./output.log - name: upload-artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: always() with: name: Tests report. Linux ${{ inputs.v8_version }} ${{ inputs.locale }} path: reports/*.* - name: Publish Test Report - uses: mikepenz/action-junit-report@v3 + uses: 1CDevFlow/action-onec-junit-report@main if: always() with: job_name: Tests Linux ${{ inputs.v8_version }} ${{ inputs.locale }} diff --git a/.github/workflows/step-run-tests-windows.yml b/.github/workflows/step-run-tests-windows.yml index f98bda059..ab48216b0 100644 --- a/.github/workflows/step-run-tests-windows.yml +++ b/.github/workflows/step-run-tests-windows.yml @@ -37,7 +37,7 @@ jobs: steps: - name: download artifact - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: ${{ inputs.artifact_name }} path: binary @@ -89,11 +89,11 @@ jobs: } } - - uses: bhowell2/github-substring-action@1.0.2 + - name: set short_locale id: short_locale - with: - value: ${{ inputs.locale }} - length_from_start: 2 + run: | + Write-Output "substring='${{ inputs.locale }}'.Substring(0, 2)" >> $Env:GITHUB_OUTPUT + - name: Test run: | Start-Process ibsrv.exe -ArgumentList "--data=data" @@ -109,13 +109,13 @@ jobs: run: type 1cv8c-output.log - name: upload-artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: Tests report. Windows ${{ inputs.v8_version }} ${{ inputs.locale }} path: reports/ - name: Publish Test Report - uses: mikepenz/action-junit-report@v3 + uses: 1CDevFlow/action-onec-junit-report@main with: job_name: Tests Windows ${{ inputs.v8_version }} ${{ inputs.locale }} check_name: Tests report. Windows ${{ inputs.v8_version }} ${{ inputs.locale }} diff --git a/.github/workflows/step-run-tests.yml b/.github/workflows/step-run-tests.yml deleted file mode 100644 index c97f63fe1..000000000 --- a/.github/workflows/step-run-tests.yml +++ /dev/null @@ -1,42 +0,0 @@ -name: Run tests on Linux - -on: - workflow_call: - inputs: - - matrix: - description: 'Matrix parameters' - type: string - required: true - - artifact_name: - type: string - required: false - default: build-artifacts - - fail_on_failure: - type: boolean - required: false - default: true - -permissions: - contents: read - checks: write - id-token: write - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }} - cancel-in-progress: true - -jobs: - tests_windows: - uses: ./.github/workflows/step-run-tests-windows.yml - with: - matrix: ${{ inputs.matrix }} - secrets: inherit - - tests_ubuntu: - uses: ./.github/workflows/step-run-tests-linux.yml - with: - matrix: ${{ inputs.matrix }} - secrets: inherit \ No newline at end of file From 4e554560434106b6f78af316a8c9a936e5d0ff52 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Tue, 21 May 2024 23:45:53 +0300 Subject: [PATCH 20/54] fix job --- .github/workflows/sq-pr.yml | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/.github/workflows/sq-pr.yml b/.github/workflows/sq-pr.yml index ced5177f0..82d027c3d 100644 --- a/.github/workflows/sq-pr.yml +++ b/.github/workflows/sq-pr.yml @@ -1,22 +1,23 @@ name: Анализ в SonarQube (pull-request) -on: [pull_request_target] - +on: + - pull_request + # - pull_request_target Не поддерживается 1CDevFlow/sonar-quality-gate и sonarqube-community-branch-plugin, необходимо доработать action jobs: SonarScanner: runs-on: ubuntu-latest steps: - - name: Checkout + - name: Checkout PR uses: actions/checkout@v4 with: - repository: ${{ github.event.workflow_run.head_repository.full_name }} - ref: ${{ github.event.workflow_run.head_branch }} - fetch-depth: 0 + # Для поддержки pull_request и pull_request_target + # https://github.com/android-password-store/Android-Password-Store/pull/1247 + ref: refs/pull/${{ github.event.number }}/merge + fetch-depth: 0 - # https://docs.sonarqube.org/latest/analysis/pull-request/ - - name: Анализ в SonarQube (pull-request) - if: github.event_name == 'pull_request' - uses: alkoleft/sonar-quality-gate@master + # https://docs.sonarqube.org/latest/analysis/pull-request/ + - name: Analyze (pull-request) + uses: 1CDevFlow/sonar-quality-gate@master env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GIT_URL: "https://api.github.com" @@ -24,5 +25,5 @@ jobs: SONAR_URL: https://sonar.openbsl.ru SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} GITHUB_REPOSITORY: bia-technologies/yaxunit - CI_MERGE_REQUEST_IID: ${{ github.event.pull_request.number }} + CI_MERGE_REQUEST_IID: ${{ github.event.number }} DEBUG: ${{ runner.debug }} From 678c7ee87bfdb605e1f65a4fa6346ac8ede1876f Mon Sep 17 00:00:00 2001 From: alkoleft Date: Wed, 22 May 2024 00:20:11 +0300 Subject: [PATCH 21/54] =?UTF-8?q?#331=20=D0=A1=D0=B1=D0=BE=D1=80=20=D0=BE?= =?UTF-8?q?=D0=BA=D1=80=D1=83=D0=B6=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/PULL_REQUEST_TEMPLATE.md | 4 +- .vscode/settings.json | 1 + .../Module.bsl" | 43 +---- .../Module.bsl" | 6 + .../Module.bsl" | 6 + .../Module.bsl" | 167 ++++++++++++++++++ ...0\265\321\200\320\262\320\265\321\200.mdo" | 12 ++ .../Module.bsl" | 24 +++ .../src/Configuration/Configuration.mdo | 1 + ...0\265\321\200\320\262\320\270\321\201.mdo" | 1 + ...0\267\320\260\321\206\320\270\321\217.mdo" | 1 + .../Module.bsl" | 29 ++- 12 files changed, 252 insertions(+), 43 deletions(-) create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 8cb363c3e..246870877 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,7 +1,7 @@ - + -## Описание изменний +## Описание изменений diff --git a/.vscode/settings.json b/.vscode/settings.json index c5dce9e42..e5a976106 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -31,6 +31,7 @@ "помогаторы", "пресетов", "Регистронезависимое", + "реквеста", "релизный", "Сериализатор", "сериализацию", diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 9f8f04bdb..ddb495291 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -70,47 +70,12 @@ КорневойКаталог = ЮТФайлы.ОбъединитьПути(Результат, "..", "..", ".."); КаталогКомпонент = ЮТФайлы.ОбъединитьПути(КорневойКаталог, "ExtCompT"); - ПараметрыТихойУстановки.РабочийКаталог = КаталогКомпонент; - Информация = Новый СистемнаяИнформация(); - ОперационнаяСистема = Неопределено; - Архитектура = Неопределено; - - Linux = "Linux"; - Windows = "Windows"; - MacOS = "MacOS"; - - //@skip-check bsl-variable-name-invalid - x86 = "i386"; - //@skip-check bsl-variable-name-invalid - x64 = "x86_64"; - - ТипКлиентскойПлатформы = Информация.ТипПлатформы; - - Если ТипКлиентскойПлатформы = ТипПлатформы.Linux_x86 Тогда - ОперационнаяСистема = Linux; - Архитектура = x86; - ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.Linux_x86_64 Тогда - ОперационнаяСистема = Linux; - Архитектура = x64; - ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.Windows_x86 Тогда - ОперационнаяСистема = Windows; - Архитектура = x86; - ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.Windows_x86_64 Тогда - ОперационнаяСистема = Windows; - Архитектура = x64; - ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.MacOS_x86 Тогда - ОперационнаяСистема = MacOS; - Архитектура = x86; - ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.MacOS_x86_64 Тогда - ОперационнаяСистема = MacOS; - Архитектура = x64; - Иначе - ЮТИсполнительСлужебныйКлиент.ОбработкаОшибки("Неподдерживаемый тип платформы"); - КонецЕсли; - ПараметрыТихойУстановки.ОперационнаяСистема = ОперационнаяСистема; - ПараметрыТихойУстановки.Архитектура = Архитектура; + ОписаниеПлатформы = ЮТОкружениеСлужебныйКлиентСервер.Платформа(Новый СистемнаяИнформация()); + ПараметрыТихойУстановки.ОперационнаяСистема = ОписаниеПлатформы.ОперационнаяСистема; + ПараметрыТихойУстановки.Архитектура = ОписаниеПлатформы.Архитектура; + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ПараметрыТихойУстановки); КонецПроцедуры diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2baddf600..ab5128549 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -152,6 +152,12 @@ КонецФункции +Функция ВычислитьБезопасноНаСервере(Знач Выражение) Экспорт + + Возврат ЮТОбщийСлужебныйВызовСервера.ВычислитьБезопасноНаСервере(Выражение); + +КонецФункции + Функция ВызватьФункцию(ПолноеИмяМетода, Параметры, Безопасно = Истина) Экспорт Выражение = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 93863b778..084f5aafc 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -124,6 +124,12 @@ КонецФункции +Функция ВычислитьБезопасноНаСервере(Знач Выражение) Экспорт + + Возврат ЮТМетодыСлужебный.ВычислитьБезопасно(Выражение); + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" new file mode 100644 index 000000000..35c01fb80 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -0,0 +1,167 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +// Собирает информацию об окружения, как сервера, так и клиента. +// +// Возвращаемое значение: +// Структура - Описание окружения: +// * ВерсияПлатформы - Строка +// * ФайловаяБаза - Булево +// * ОбычноеПриложение - Булево +// * ВебКлиент - Булево +// * ТолстыйКлиент - Булево +// * ЛокальПлатформы - Строка +// * ЛокальИнтерфейса - Строка +// * ОперационнаяСистемаКлиент - Строка - Возможные значения: Linux, Windows, MacOS +// * АрхитектураКлиент - Строка - Возможные значения: x86_64, i386 +// * ОперационнаяСистемаСервер - Строка - Возможные значения: Linux, Windows, MacOS +// * АрхитектураСервер - Строка - Возможные значения: x86_64, i386 +// * ВстроенныйЯзык - Строка - Возможные значения: ru, en +// * ИнформационнаяСреда - Строка +Функция ОписаниеОкружения() Экспорт + + СистемнаяИнформация = Новый СистемнаяИнформация(); + + Окружение = Новый Структура; + Окружение.Вставить("ВерсияПлатформы", СистемнаяИнформация.ВерсияПриложения); + Окружение.Вставить("ФайловаяБаза", ЭтоФайловаяБаза()); + Окружение.Вставить("ОбычноеПриложение", Ложь); + Окружение.Вставить("ВебКлиент", Ложь); + Окружение.Вставить("ТолстыйКлиент", Ложь); + Окружение.Вставить("ЛокальПлатформы", ЛокальПлатформы()); + Окружение.Вставить("ЛокальИнтерфейса", ЛокальИнтерфейса()); + Окружение.Вставить("ИнформационнаяСреда", "DEV"); + +#Если ВебКлиент Тогда + Окружение.ВебКлиент = Истина; +#ИначеЕсли ТолстыйКлиентОбычноеПриложение Тогда + Окружение.ОбычноеПриложение = Истина; + Окружение.ТолстыйКлиент = Истина; +#ИначеЕсли ТолстыйКлиентУправляемоеПриложение Тогда + Окружение.ТолстыйКлиент = Истина; +#КонецЕсли + + Платформа = Платформа(СистемнаяИнформация); + Окружение.Вставить("ОперационнаяСистемаКлиент", Платформа.ОперационнаяСистема); + Окружение.Вставить("АрхитектураКлиент", Платформа.Архитектура); + + // TODO придумать другой безопасный универсальный вызов сервера + ОписаниеСерверногоОкружения = ЮТМетодыСлужебный.ВычислитьБезопасноНаСервере("ЮТОкружениеСлужебныйКлиентСервер.ОписаниеСерверногоОкружения()"); + Окружение.Вставить("ОперационнаяСистемаСервер", ОписаниеСерверногоОкружения.ОперационнаяСистема); + Окружение.Вставить("АрхитектураСервер", ОписаниеСерверногоОкружения.Архитектура); + Окружение.Вставить("ВстроенныйЯзык", ОписаниеСерверногоОкружения.ВстроенныйЯзык); + + //@skip-check constructor-function-return-section + Возврат Окружение; + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Процедура Инициализация(ПараметрыЗапуска) Экспорт + + Окружение = ОписаниеОкружения(); + ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста("Окружение", Окружение, Истина); + +КонецПроцедуры + +Функция ЭтоФайловаяБаза() + + Возврат СтрНайти(Врег(СтрокаСоединенияИнформационнойБазы()), "FILE=") = 0; + +КонецФункции + +Функция Платформа(СистемнаяИнформация) Экспорт + + ОперационнаяСистема = Неопределено; + Архитектура = Неопределено; + + Linux = "Linux"; + Windows = "Windows"; + MacOS = "MacOS"; + + //@skip-check bsl-variable-name-invalid + x86 = "i386"; + //@skip-check bsl-variable-name-invalid + x64 = "x86_64"; + + ТипКлиентскойПлатформы = СистемнаяИнформация.ТипПлатформы; + + Если ТипКлиентскойПлатформы = ТипПлатформы.Linux_x86 Тогда + ОперационнаяСистема = Linux; + Архитектура = x86; + ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.Linux_x86_64 Тогда + ОперационнаяСистема = Linux; + Архитектура = x64; + ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.Windows_x86 Тогда + ОперационнаяСистема = Windows; + Архитектура = x86; + ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.Windows_x86_64 Тогда + ОперационнаяСистема = Windows; + Архитектура = x64; + ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.MacOS_x86 Тогда + ОперационнаяСистема = MacOS; + Архитектура = x86; + ИначеЕсли ТипКлиентскойПлатформы = ТипПлатформы.MacOS_x86_64 Тогда + ОперационнаяСистема = MacOS; + Архитектура = x64; + Иначе + ВызватьИсключение "Неподдерживаемый тип платформы"; + КонецЕсли; + + Возврат Новый Структура("ОперационнаяСистема, Архитектура", ОперационнаяСистема, Архитектура); + +КонецФункции + +#Если Сервер Тогда +Функция ОписаниеСерверногоОкружения() Экспорт + + СистемнаяИнформация = Новый СистемнаяИнформация(); + Платформа = Платформа(СистемнаяИнформация); + + Окружение = Новый Структура; + Окружение.Вставить("ОперационнаяСистема", Платформа.ОперационнаяСистема); + Окружение.Вставить("Архитектура", Платформа.Архитектура); + Окружение.Вставить("ВстроенныйЯзык", Формат(Метаданные.ВариантВстроенногоЯзыка = Метаданные.СвойстваОбъектов.ВариантВстроенногоЯзыка.Русский, "БЛ=en; БИ=ru;")); + + Возврат Окружение; + +КонецФункции +#КонецЕсли + +Функция ЛокальИнтерфейса() + +#Если Клиент Тогда + Возврат ТекущийЯзык(); +#Иначе + Возврат ТекущийЯзык().КодЯзыка; +#КонецЕсли + +КонецФункции + +Функция ЛокальПлатформы() + + Возврат ТекущийЯзыкСистемы(); + +КонецФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" new file mode 100644 index 000000000..d765a3dd5 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" @@ -0,0 +1,12 @@ + + + ЮТОкружениеСлужебныйКлиентСервер + + ru + Окружение служебный + + true + true + true + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" index b8d45af82..eb36ff07c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" @@ -220,4 +220,28 @@ КонецФункции +// Возвращает информацию об окружении. +// +// Возвращаемое значение: +// Структура - Описание окружения: +// * ВерсияПлатформы - Строка +// * ФайловаяБаза - Булево +// * ОбычноеПриложение - Булево +// * ВебКлиент - Булево +// * ТолстыйКлиент - Булево +// * ЛокальПлатформы - Строка +// * ЛокальИнтерфейса - Строка +// * ОперационнаяСистемаКлиент - Строка - Возможные значения: Linux, Windows, MacOS +// * АрхитектураКлиент - Строка - Возможные значения: x86_64, i386 +// * ОперационнаяСистемаСервер - Строка - Возможные значения: Linux, Windows, MacOS +// * АрхитектураСервер - Строка - Возможные значения: x86_64, i386 +// * ВстроенныйЯзык - Строка - Возможные значения: ru, en +// * ИнформационнаяСреда - Строка +Функция Окружение() Экспорт + + //@skip-check constructor-function-return-section + Возврат ЮТКонтекстСлужебный.ЗначениеКонтекста("Окружение"); + +КонецФункции + #КонецОбласти diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index 1acfe00b0..0c7b93b9c 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -96,6 +96,7 @@ CommonModule.ЮТНастройкиВыполнения CommonModule.ЮТОбщий CommonModule.ЮТОбщийСлужебныйВызовСервера + CommonModule.ЮТОкружениеСлужебныйКлиентСервер CommonModule.ЮТОтчетAllureСлужебный CommonModule.ЮТОтчетJSONСлужебный CommonModule.ЮТОтчетJUnitСлужебный diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" index 68a3a618e..ccb510e78 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" @@ -26,6 +26,7 @@ CommonModule.ЮТМетодыСлужебный CommonModule.ЮТНастройкиВыполнения CommonModule.ЮТОбщийСлужебныйВызовСервера + CommonModule.ЮТОкружениеСлужебныйКлиентСервер CommonModule.ЮТОтчетСлужебный CommonModule.ЮТПодключаемыеМодулиСлужебный CommonModule.ЮТПроверкиСлужебный diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" index 90f3f4ecf..4f5813280 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" @@ -7,5 +7,6 @@ true CommonModule.ЮТЗависимостиСлужебный + CommonModule.ЮТОкружениеСлужебныйКлиентСервер Subsystem.ЮТПодключаемыеМодули.Subsystem.ОбработчикиСобытий diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" index 55c8effa5..562c7175d 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" @@ -29,6 +29,7 @@ .ДобавитьТест("ПроверкаПереопределенногоКонтекста").Перед("Перед_ПроверкаПереопределенногоКонтекста") .ДобавитьТестовыйНабор("ПовторнаяПроверкаКонтекста") .ДобавитьТест("ПроверкаКонтекста") + .ДобавитьТест("Окружение") ; КонецПроцедуры @@ -74,10 +75,10 @@ ЮТест.Контекст().Значение("Коллекция").Добавить("ПослеВсехТестов"); #Если Сервер Тогда ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Коллекция")) - .ИмеетДлину(18); // Количество вызванных обработчиков событий + .ИмеетДлину(20); // Количество вызванных обработчиков событий #Иначе ЮТест.ОжидаетЧто(ЮТест.Контекст().Значение("Коллекция")) - .ИмеетДлину(16); // Количество вызванных обработчиков событий + .ИмеетДлину(18); // Количество вызванных обработчиков событий #КонецЕсли КонецПроцедуры @@ -151,4 +152,28 @@ КонецПроцедуры #КонецЕсли +Процедура Окружение() Экспорт + + Окружение = ЮТест.Окружение(); + + ЮТест.ОжидаетЧто(Окружение) + .Заполнено() + .ИмеетТип("Структура") + .Свойство("ВстроенныйЯзык").Равно("ru") + .Свойство("ОбычноеПриложение").Равно(Ложь) + .Свойство("ВебКлиент").Равно(Ложь) + .Свойство("ТолстыйКлиент").Равно(Ложь) + .Свойство("ВерсияПлатформы") + .Свойство("ФайловаяБаза") + .Свойство("ЛокальПлатформы") + .Свойство("ЛокальИнтерфейса") + .Свойство("ОперационнаяСистемаКлиент") + .Свойство("АрхитектураКлиент") + .Свойство("ОперационнаяСистемаСервер") + .Свойство("АрхитектураСервер") + .Свойство("ИнформационнаяСреда") + ; + +КонецПроцедуры + #КонецОбласти From e754a2b811e5618bc0b4b379883f3acee624725f Mon Sep 17 00:00:00 2001 From: alkoleft Date: Sat, 25 May 2024 18:42:15 +0300 Subject: [PATCH 22/54] =?UTF-8?q?#331=20=D0=9F=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B7=D0=B0=D0=BC=D0=B5=D1=87=D0=B0=D0=BD=D0=B8=D0=B9?= =?UTF-8?q?,=20=D0=B2=D1=8B=D0=B2=D0=BE=D0=B4=20=D0=B8=D0=BD=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D0=B0=D1=86=D0=B8=D0=B8=20=D0=BE=D0=B1=20=D0=BE?= =?UTF-8?q?=D0=BA=D1=80=D1=83=D0=B6=D0=B5=D0=BD=D0=B8=D0=B8=20=D0=B2=20jun?= =?UTF-8?q?it?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 34 +++++++------------ .../Module.bsl" | 6 ++-- .../Module.bsl" | 33 +++++++++++++----- .../Module.bsl" | 3 +- .../Module.bsl" | 14 ++++++++ .../Module.bsl" | 8 +++-- .../Module.bsl" | 3 ++ .../Module.bsl" | 19 +++++++++++ 8 files changed, 84 insertions(+), 36 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ab5128549..2271b396d 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -132,7 +132,7 @@ КонецФункции -Функция ВычислитьБезопасно(Выражение) Экспорт +Функция ВычислитьБезопасно(Выражение, Параметры = Неопределено) Экспорт #Если НЕ ВебКлиент И НЕ ТонкийКлиент Тогда УстановитьБезопасныйРежим(Истина); @@ -152,9 +152,17 @@ КонецФункции -Функция ВычислитьБезопасноНаСервере(Знач Выражение) Экспорт +Функция ВызватьФункциюКонфигурацииНаСервере(ИмяМодуля, ИмяМетода, Параметры = Неопределено) Экспорт - Возврат ЮТОбщийСлужебныйВызовСервера.ВычислитьБезопасноНаСервере(Выражение); + Если НЕ ЮТСтроки.ЭтоВалидноеИмяПеременной(ИмяМодуля) Тогда + ВызватьИсключение "Передано невалидное имя общего модуля в `ЮТМетодыСлужебный.ВызватьФункциюКонфигурацииНаСервере`"; + КонецЕсли; + + Если НЕ ЮТСтроки.ЭтоВалидноеИмяПеременной(ИмяМетода) Тогда + ВызватьИсключение "Передано невалидное имя метода в `ЮТМетодыСлужебный.ВызватьФункциюКонфигурацииНаСервере`"; + КонецЕсли; + + Возврат ЮТОбщийСлужебныйВызовСервера.ВызватьФункциюКонфигурацииНаСервере(ИмяМодуля, ИмяМетода, Параметры); КонецФункции @@ -162,25 +170,7 @@ Выражение = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры); -#Если НЕ ВебКлиент И НЕ ТонкийКлиент Тогда - Если Безопасно Тогда - УстановитьБезопасныйРежим(Истина); - Попытка - Значение = Вычислить(Выражение); - Исключение - УстановитьБезопасныйРежим(Ложь); - ВызватьИсключение; - КонецПопытки; - УстановитьБезопасныйРежим(Ложь); - Иначе - //@skip-check server-execution-safe-mode - Значение = Вычислить(Выражение); - КонецЕсли; -#Иначе - Значение = Вычислить(Выражение); -#КонецЕсли - - Возврат Значение; + Возврат ВычислитьБезопасно(Выражение, Параметры); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 084f5aafc..70eea2a16 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -124,9 +124,11 @@ КонецФункции -Функция ВычислитьБезопасноНаСервере(Знач Выражение) Экспорт +Функция ВызватьФункциюКонфигурацииНаСервере(Знач ИмяМодуля, Знач ИмяМетода, Знач Параметры = Неопределено) Экспорт - Возврат ЮТМетодыСлужебный.ВычислитьБезопасно(Выражение); + ПолноеИмяМетода = ЮТСтроки.ДобавитьСтроку(ИмяМодуля, ИмяМетода, "."); + + Возврат ЮТМетодыСлужебный.ВызватьФункцию(ПолноеИмяМетода, Параметры, Истина); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 35c01fb80..9d0a787f6 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -38,16 +38,14 @@ Функция ОписаниеОкружения() Экспорт СистемнаяИнформация = Новый СистемнаяИнформация(); + ОписаниеСерверногоОкружения = ЮТМетодыСлужебный.ВызватьФункциюКонфигурацииНаСервере("ЮТОкружениеСлужебныйКлиентСервер", + "ОписаниеСерверногоОкружения"); Окружение = Новый Структура; - Окружение.Вставить("ВерсияПлатформы", СистемнаяИнформация.ВерсияПриложения); Окружение.Вставить("ФайловаяБаза", ЭтоФайловаяБаза()); Окружение.Вставить("ОбычноеПриложение", Ложь); Окружение.Вставить("ВебКлиент", Ложь); Окружение.Вставить("ТолстыйКлиент", Ложь); - Окружение.Вставить("ЛокальПлатформы", ЛокальПлатформы()); - Окружение.Вставить("ЛокальИнтерфейса", ЛокальИнтерфейса()); - Окружение.Вставить("ИнформационнаяСреда", "DEV"); #Если ВебКлиент Тогда Окружение.ВебКлиент = Истина; @@ -58,15 +56,26 @@ Окружение.ТолстыйКлиент = Истина; #КонецЕсли + Окружение.Вставить("ЛокальПлатформы", ЛокальПлатформы()); + Окружение.Вставить("ЛокальИнтерфейса", ЛокальИнтерфейса()); + Окружение.Вставить("ВстроенныйЯзык", ОписаниеСерверногоОкружения.ВстроенныйЯзык); + + Окружение.Вставить("ИнформационнаяСреда", "DEV"); + Платформа = Платформа(СистемнаяИнформация); Окружение.Вставить("ОперационнаяСистемаКлиент", Платформа.ОперационнаяСистема); Окружение.Вставить("АрхитектураКлиент", Платформа.Архитектура); - // TODO придумать другой безопасный универсальный вызов сервера - ОписаниеСерверногоОкружения = ЮТМетодыСлужебный.ВычислитьБезопасноНаСервере("ЮТОкружениеСлужебныйКлиентСервер.ОписаниеСерверногоОкружения()"); Окружение.Вставить("ОперационнаяСистемаСервер", ОписаниеСерверногоОкружения.ОперационнаяСистема); Окружение.Вставить("АрхитектураСервер", ОписаниеСерверногоОкружения.Архитектура); - Окружение.Вставить("ВстроенныйЯзык", ОписаниеСерверногоОкружения.ВстроенныйЯзык); + + Окружение.Вставить("ТестовыйДвижок", ОписаниеСерверногоОкружения.ТестовыйДвижок); + Окружение.Вставить("ВерсияТестовогоДвижка", ОписаниеСерверногоОкружения.ВерсияТестовогоДвижка); + Окружение.Вставить("ВерсияПлатформы", СистемнаяИнформация.ВерсияПриложения); + Окружение.Вставить("Конфигурация", ОписаниеСерверногоОкружения.Конфигурация); + Окружение.Вставить("ВерсияКонфигурации", ОписаниеСерверногоОкружения.ВерсияКонфигурации); + //@skip-check use-non-recommended-method + Окружение.Вставить("ВремяЗапуска", ТекущаяДата()); //@skip-check constructor-function-return-section Возврат Окружение; @@ -141,7 +150,15 @@ Окружение = Новый Структура; Окружение.Вставить("ОперационнаяСистема", Платформа.ОперационнаяСистема); Окружение.Вставить("Архитектура", Платформа.Архитектура); - Окружение.Вставить("ВстроенныйЯзык", Формат(Метаданные.ВариантВстроенногоЯзыка = Метаданные.СвойстваОбъектов.ВариантВстроенногоЯзыка.Русский, "БЛ=en; БИ=ru;")); + + ЭтоРусскийВстроенныйЯзык = Метаданные.ВариантВстроенногоЯзыка = Метаданные.СвойстваОбъектов.ВариантВстроенногоЯзыка.Русский; + Окружение.Вставить("ВстроенныйЯзык", Формат(ЭтоРусскийВстроенныйЯзык, "БЛ=en; БИ=ru;")); + + Расширение = Метаданные.ОбщиеМодули.ЮТОкружениеСлужебныйКлиентСервер.РасширениеКонфигурации(); + Окружение.Вставить("ТестовыйДвижок", Расширение.Имя); + Окружение.Вставить("ВерсияТестовогоДвижка", Расширение.Версия); + Окружение.Вставить("Конфигурация", Метаданные.Представление()); + Окружение.Вставить("ВерсияКонфигурации", Метаданные.Версия); Возврат Окружение; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2d6263189..0f2333926 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -78,7 +78,8 @@ КонецЦикла; - ЗаписатьСвойства(ЗаписьXML, Новый Структура("executor, reportDate", "BIA YAxUnit", ТекущаяДата())); + Окружение = ЮТест.Окружение(); + ЗаписатьСвойства(ЗаписьXML, Окружение); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.Закрыть(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" index 143527091..8cfcfdadf 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" @@ -29,6 +29,20 @@ КонецПроцедуры +// Фрмирует сообщение об ошибки. +// +// Параметры: +// Описание - Строка - Префикс текста ошибки +// Ошибка - Строка, ИнформацияОбОшибке - +// +// Возвращаемое значение: +// Строка +Функция ПредставлениеОшибки(Описание, Ошибка = Неопределено) Экспорт + + Возврат ЮТРегистрацияОшибокСлужебный.ПредставлениеОшибки(Описание, Ошибка); + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index a68985960..b3b019cc3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -163,13 +163,15 @@ КонецПроцедуры -Функция ПредставлениеОшибки(Знач Описание, Знач Ошибка) Экспорт +Функция ПредставлениеОшибки(Описание, Ошибка) Экспорт Если ТипЗнч(Ошибка) = Тип("ИнформацияОбОшибке") Тогда - Ошибка = Символы.ПС + ПодробноеПредставлениеОшибки(Ошибка); + ПредставлениеОшибки = Символы.ПС + ПодробноеПредставлениеОшибки(Ошибка); + Иначе + ПредставлениеОшибки = Ошибка; КонецЕсли; - Возврат СтрШаблон("%1: %2", Описание, Ошибка); + Возврат ЮТСтроки.ДобавитьСтроку(Описание, ПредставлениеОшибки, ": "); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index e7a318880..6e9806648 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -312,6 +312,9 @@ ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2`", ИмяСобытия, ПолноеИмяМетода)); Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода, ПараметрыСобытия); + Если Ошибка <> Неопределено Тогда + ЮТЛогирование.Ошибка(ЮТРегистрацияОшибок.ПредставлениеОшибки("Ошибка обработки события", Ошибка)); + КонецЕсли; Если Ошибка <> Неопределено Тогда Ошибки.Добавить(Ошибка); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" index 19d1a27d3..af85e4f95 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" @@ -276,6 +276,25 @@ КонецФункции +// Проверяет переданную строку, является ли она подходщим именем переменной - должна соответствовать требованиям к именам переменных +// +// Параметры: +// ИмяПеременной - Строка +// +// Возвращаемое значение: +// Булево - Это валидное имя переменной +Функция ЭтоВалидноеИмяПеременной(ИмяПеременной) Экспорт + + Попытка + Проверка = Новый Структура; + Проверка.Вставить(ИмяПеременной); + Возврат Истина; + Исключение + Возврат Ложь; + КонецПопытки; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции From f274a677947cdb1c6c9542f915efab70d1f27bb3 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Sat, 25 May 2024 19:42:13 +0300 Subject: [PATCH 23/54] =?UTF-8?q?#331=20=D0=92=D1=8B=D0=B2=D0=BE=D0=B4=20?= =?UTF-8?q?=D0=B8=D0=BD=D1=84=D0=BE=D1=80=D0=BC=D0=B0=D1=86=D0=B8=D0=B8=20?= =?UTF-8?q?=D0=BE=D0=B1=20=D0=BE=D0=BA=D1=80=D1=83=D0=B6=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B8=20=D0=B2=20Allure?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 36 +++++------ .../Module.bsl" | 59 ++++++++++++++++++- .../Module.bsl" | 2 +- 3 files changed, 77 insertions(+), 20 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 9d0a787f6..e3b8e666b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -42,6 +42,24 @@ "ОписаниеСерверногоОкружения"); Окружение = Новый Структура; + Окружение.Вставить("Конфигурация", ОписаниеСерверногоОкружения.Конфигурация); + Окружение.Вставить("ВерсияКонфигурации", ОписаниеСерверногоОкружения.ВерсияКонфигурации); + Окружение.Вставить("ВерсияПлатформы", СистемнаяИнформация.ВерсияПриложения); + Окружение.Вставить("ИнформационнаяСреда", "DEV"); + Окружение.Вставить("ТестовыйДвижок", ОписаниеСерверногоОкружения.ТестовыйДвижок); + Окружение.Вставить("ВерсияТестовогоДвижка", ОписаниеСерверногоОкружения.ВерсияТестовогоДвижка); + + Окружение.Вставить("ЛокальПлатформы", ЛокальПлатформы()); + Окружение.Вставить("ЛокальИнтерфейса", ЛокальИнтерфейса()); + Окружение.Вставить("ВстроенныйЯзык", ОписаниеСерверногоОкружения.ВстроенныйЯзык); + + Платформа = Платформа(СистемнаяИнформация); + Окружение.Вставить("ОперационнаяСистемаКлиент", Платформа.ОперационнаяСистема); + Окружение.Вставить("АрхитектураКлиент", Платформа.Архитектура); + + Окружение.Вставить("ОперационнаяСистемаСервер", ОписаниеСерверногоОкружения.ОперационнаяСистема); + Окружение.Вставить("АрхитектураСервер", ОписаниеСерверногоОкружения.Архитектура); + Окружение.Вставить("ФайловаяБаза", ЭтоФайловаяБаза()); Окружение.Вставить("ОбычноеПриложение", Ложь); Окружение.Вставить("ВебКлиент", Ложь); @@ -56,24 +74,6 @@ Окружение.ТолстыйКлиент = Истина; #КонецЕсли - Окружение.Вставить("ЛокальПлатформы", ЛокальПлатформы()); - Окружение.Вставить("ЛокальИнтерфейса", ЛокальИнтерфейса()); - Окружение.Вставить("ВстроенныйЯзык", ОписаниеСерверногоОкружения.ВстроенныйЯзык); - - Окружение.Вставить("ИнформационнаяСреда", "DEV"); - - Платформа = Платформа(СистемнаяИнформация); - Окружение.Вставить("ОперационнаяСистемаКлиент", Платформа.ОперационнаяСистема); - Окружение.Вставить("АрхитектураКлиент", Платформа.Архитектура); - - Окружение.Вставить("ОперационнаяСистемаСервер", ОписаниеСерверногоОкружения.ОперационнаяСистема); - Окружение.Вставить("АрхитектураСервер", ОписаниеСерверногоОкружения.Архитектура); - - Окружение.Вставить("ТестовыйДвижок", ОписаниеСерверногоОкружения.ТестовыйДвижок); - Окружение.Вставить("ВерсияТестовогоДвижка", ОписаниеСерверногоОкружения.ВерсияТестовогоДвижка); - Окружение.Вставить("ВерсияПлатформы", СистемнаяИнформация.ВерсияПриложения); - Окружение.Вставить("Конфигурация", ОписаниеСерверногоОкружения.Конфигурация); - Окружение.Вставить("ВерсияКонфигурации", ОписаниеСерверногоОкружения.ВерсияКонфигурации); //@skip-check use-non-recommended-method Окружение.Вставить("ВремяЗапуска", ТекущаяДата()); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index bc6bc3c1c..430863231 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -54,6 +54,8 @@ КонецЦикла; КонецЦикла; + + ЗаписатьИнформациюОбОкружении(Каталог); #КонецЕсли ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьОбработчик(Обработчик); @@ -264,10 +266,65 @@ КонецФункции Функция ЮниксВремя(ДатаВМиллисекундах) - + Возврат ДатаВМиллисекундах - 62135596800000; + +КонецФункции + +Процедура ЗаписатьИнформациюОбОкружении(Каталог) + + Окружение = ЮТест.Окружение(); + + Если НЕ ЗначениеЗаполнено(Окружение) Тогда + Возврат; + КонецЕсли; + + ИмяФайла = ЮТФайлы.ОбъединитьПути(Каталог, "environment.properties"); + Запись = Новый ЗаписьТекста(ИмяФайла, "ISO-8859-1", , Ложь); + + Для Каждого Элемент Из ЮТест.Окружение() Цикл + ЗаписатьСтрокуProperties(Запись, СтрШаблон("%1=%2", Элемент.Ключ, Элемент.Значение)); + КонецЦикла; + Запись.Закрыть(); + +КонецПроцедуры + +Процедура ЗаписатьСтрокуProperties(Запись, ВходнаяСтрока) + + Для Инд = 1 По СтрДлина(ВходнаяСтрока) Цикл + КодСимволаЗначения = КодСимвола(ВходнаяСтрока, Инд); + Если КодСимволаЗначения > 127 Тогда + Запись.Записать("\u" + ПеревестиВШестнадцатеричнуюСистему(КодСимволаЗначения)); + Иначе + Запись.Записать(Сред(ВходнаяСтрока, Инд, 1)); + КонецЕсли; + КонецЦикла; + + Запись.Записать(Символы.ПС); + +КонецПроцедуры +Функция ПеревестиВШестнадцатеричнуюСистему(Знач Число) + + Основание = 16; + + СимволыСистемы = СтрРазделить("0 1 2 3 4 5 6 7 8 9 A B C D E F", " "); + + Результат = ""; + Пока Число <> 0 Цикл + Остаток = Число % Основание; + Результат = СимволыСистемы[Остаток] + Результат; + Число = Цел(Число / Основание); + КонецЦикла; + + Пока СтрДлина(Результат) < 4 Цикл + Результат = "0" + Результат; + КонецЦикла; + + Возврат Результат; + КонецФункции + #КонецЕсли #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" index af85e4f95..c941f2838 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" @@ -232,7 +232,7 @@ Для Позиция = 1 По СтрДлина(Значение) Цикл КодСимволаШаблона = КодСимвола(Шаблон, Позиция); КодСимволаЗначения = КодСимвола(Значение, Позиция); - + Если КодСимволаШаблона = 88 // X И ((КодСимволаЗначения < 48 ИЛИ КодСимволаЗначения > 57) // 0..9 И (КодСимволаЗначения < 97 ИЛИ КодСимволаЗначения > 102) // a..f From bff329f7a31a1516fbbad46209be439e4c89fc92 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Sat, 25 May 2024 23:50:08 +0300 Subject: [PATCH 24/54] =?UTF-8?q?#331=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B7=D0=B0=D0=BC=D0=B5?= =?UTF-8?q?=D1=87=D0=B0=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 2 +- .../Module.bsl" | 7 +++++-- .../Module.bsl" | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index e3b8e666b..e1558defb 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -75,7 +75,7 @@ #КонецЕсли //@skip-check use-non-recommended-method - Окружение.Вставить("ВремяЗапуска", ТекущаяДата()); + Окружение.Вставить("ВремяЗапуска", ТекущаяДата()); // BSLLS:DeprecatedCurrentDate-off //@skip-check constructor-function-return-section Возврат Окружение; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 430863231..883dcf5b3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -291,9 +291,11 @@ Процедура ЗаписатьСтрокуProperties(Запись, ВходнаяСтрока) + ГраницаЛатиницы = 127; + Для Инд = 1 По СтрДлина(ВходнаяСтрока) Цикл КодСимволаЗначения = КодСимвола(ВходнаяСтрока, Инд); - Если КодСимволаЗначения > 127 Тогда + Если КодСимволаЗначения > ГраницаЛатиницы Тогда Запись.Записать("\u" + ПеревестиВШестнадцатеричнуюСистему(КодСимволаЗначения)); Иначе Запись.Записать(Сред(ВходнаяСтрока, Инд, 1)); @@ -307,6 +309,7 @@ Функция ПеревестиВШестнадцатеричнуюСистему(Знач Число) Основание = 16; + Длина = 4; СимволыСистемы = СтрРазделить("0 1 2 3 4 5 6 7 8 9 A B C D E F", " "); @@ -317,7 +320,7 @@ Число = Цел(Число / Основание); КонецЦикла; - Пока СтрДлина(Результат) < 4 Цикл + Пока СтрДлина(Результат) < Длина Цикл Результат = "0" + Результат; КонецЦикла; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" index 8cfcfdadf..bc1527e52 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272/Module.bsl" @@ -33,7 +33,7 @@ // // Параметры: // Описание - Строка - Префикс текста ошибки -// Ошибка - Строка, ИнформацияОбОшибке - +// Ошибка - Строка, ИнформацияОбОшибке - Ошибка // // Возвращаемое значение: // Строка From c4279c8151d3bae4b742352eb8b3e5b297ad544d Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 02:13:08 +0300 Subject: [PATCH 25/54] =?UTF-8?q?#338=20=D0=9E=D0=BD=D0=BB=D0=B0=D0=B9?= =?UTF-8?q?=D0=BD=20=D0=BB=D0=BE=D0=B3=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=BD=D0=B0=20=D1=81=D0=B5=D1=80=D0=B2=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=20=D0=B4=D0=BB=D1=8F=20=D1=84=D0=B0=D0=B9=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=D1=8B=D1=85=20=D0=B1=D0=B0=D0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 8 ++- .../Module.bsl" | 3 +- .../Module.bsl" | 56 +++++++------------ .../Module.bsl" | 12 ++++ .../Module.bsl" | 18 +++++- .../Module.bsl" | 52 +++++++++++++++++ .../Module.bsl" | 15 +---- 7 files changed, 111 insertions(+), 53 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" index 07e26c458..94e2c1f0b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" @@ -110,7 +110,13 @@ Возврат ЮТСлужебныйПовторногоИспользования.ПодключитьКомпоненту(ИмяМакета, ИмяКомпоненты); КонецЕсли; - Возврат ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native); + Если ЮТСтроки.ВерсияБольше(ЮТест.Окружение().ВерсияПлатформы, "8.3.20") Тогда + ТипПодключения = ЮТМетодыСлужебный.ВычислитьБезопасно("ТипПодключенияВнешнейКомпоненты.НеИзолированно"); + //@skip-check many-actual-parameters + Возврат ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native, ТипПодключения); + Иначе + Возврат ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native); + КонецЕсли; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index aeea92987..b9228062f 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -34,7 +34,8 @@ #Если Клиент Тогда ЗаписатьСообщения(Контекст, ЮТКоллекции.ЗначениеВМассиве(Текст)); #Иначе - Если Контекст.ФайлЛогаДоступенНаСервере Тогда + // Для серверной базы все равно нужно накапливать сообшения, если включен вывод в консоль + Если ЮТест.Окружение().ФайловаяБаза Или Контекст.ФайлЛогаДоступенНаСервере Тогда ЗаписатьСообщения(Контекст, ЮТКоллекции.ЗначениеВМассиве(Текст)); Иначе Контекст.НакопленныеЗаписи.Добавить(Текст); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index e1558defb..ba3621ae2 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -21,49 +21,35 @@ // Собирает информацию об окружения, как сервера, так и клиента. // // Возвращаемое значение: -// Структура - Описание окружения: -// * ВерсияПлатформы - Строка -// * ФайловаяБаза - Булево -// * ОбычноеПриложение - Булево -// * ВебКлиент - Булево -// * ТолстыйКлиент - Булево -// * ЛокальПлатформы - Строка -// * ЛокальИнтерфейса - Строка -// * ОперационнаяСистемаКлиент - Строка - Возможные значения: Linux, Windows, MacOS -// * АрхитектураКлиент - Строка - Возможные значения: x86_64, i386 -// * ОперационнаяСистемаСервер - Строка - Возможные значения: Linux, Windows, MacOS -// * АрхитектураСервер - Строка - Возможные значения: x86_64, i386 -// * ВстроенныйЯзык - Строка - Возможные значения: ru, en -// * ИнформационнаяСреда - Строка +// см. ЮТФабрика.НовоеОписаниеОкружения Функция ОписаниеОкружения() Экспорт СистемнаяИнформация = Новый СистемнаяИнформация(); ОписаниеСерверногоОкружения = ЮТМетодыСлужебный.ВызватьФункциюКонфигурацииНаСервере("ЮТОкружениеСлужебныйКлиентСервер", "ОписаниеСерверногоОкружения"); - Окружение = Новый Структура; - Окружение.Вставить("Конфигурация", ОписаниеСерверногоОкружения.Конфигурация); - Окружение.Вставить("ВерсияКонфигурации", ОписаниеСерверногоОкружения.ВерсияКонфигурации); - Окружение.Вставить("ВерсияПлатформы", СистемнаяИнформация.ВерсияПриложения); - Окружение.Вставить("ИнформационнаяСреда", "DEV"); - Окружение.Вставить("ТестовыйДвижок", ОписаниеСерверногоОкружения.ТестовыйДвижок); - Окружение.Вставить("ВерсияТестовогоДвижка", ОписаниеСерверногоОкружения.ВерсияТестовогоДвижка); + Платформа = Платформа(СистемнаяИнформация); - Окружение.Вставить("ЛокальПлатформы", ЛокальПлатформы()); - Окружение.Вставить("ЛокальИнтерфейса", ЛокальИнтерфейса()); - Окружение.Вставить("ВстроенныйЯзык", ОписаниеСерверногоОкружения.ВстроенныйЯзык); + Окружение = ЮТФабрика.НовоеОписаниеОкружения(); - Платформа = Платформа(СистемнаяИнформация); - Окружение.Вставить("ОперационнаяСистемаКлиент", Платформа.ОперационнаяСистема); - Окружение.Вставить("АрхитектураКлиент", Платформа.Архитектура); + Окружение.Конфигурация = ОписаниеСерверногоОкружения.Конфигурация; + Окружение.ВерсияКонфигурации = ОписаниеСерверногоОкружения.ВерсияКонфигурации; + Окружение.ВерсияПлатформы = СистемнаяИнформация.ВерсияПриложения; + Окружение.ИнформационнаяСреда = "DEV"; + Окружение.ТестовыйДвижок = ОписаниеСерверногоОкружения.ТестовыйДвижок; + Окружение.ВерсияТестовогоДвижка = ОписаниеСерверногоОкружения.ВерсияТестовогоДвижка; + + Окружение.ЛокальПлатформы = ЛокальПлатформы(); + Окружение.ЛокальИнтерфейса = ЛокальИнтерфейса(); + Окружение.ВстроенныйЯзык = ОписаниеСерверногоОкружения.ВстроенныйЯзык; + + Окружение.ОперационнаяСистемаКлиент = Платформа.ОперационнаяСистема; + Окружение.АрхитектураКлиент = Платформа.Архитектура; - Окружение.Вставить("ОперационнаяСистемаСервер", ОписаниеСерверногоОкружения.ОперационнаяСистема); - Окружение.Вставить("АрхитектураСервер", ОписаниеСерверногоОкружения.Архитектура); + Окружение.ОперационнаяСистемаСервер = ОписаниеСерверногоОкружения.ОперационнаяСистема; + Окружение.АрхитектураСервер = ОписаниеСерверногоОкружения.Архитектура; - Окружение.Вставить("ФайловаяБаза", ЭтоФайловаяБаза()); - Окружение.Вставить("ОбычноеПриложение", Ложь); - Окружение.Вставить("ВебКлиент", Ложь); - Окружение.Вставить("ТолстыйКлиент", Ложь); + Окружение.ФайловаяБаза = ЭтоФайловаяБаза(); #Если ВебКлиент Тогда Окружение.ВебКлиент = Истина; @@ -75,7 +61,7 @@ #КонецЕсли //@skip-check use-non-recommended-method - Окружение.Вставить("ВремяЗапуска", ТекущаяДата()); // BSLLS:DeprecatedCurrentDate-off + Окружение.ВремяЗапуска = ТекущаяДата(); // BSLLS:DeprecatedCurrentDate-off //@skip-check constructor-function-return-section Возврат Окружение; @@ -95,7 +81,7 @@ Функция ЭтоФайловаяБаза() - Возврат СтрНайти(Врег(СтрокаСоединенияИнформационнойБазы()), "FILE=") = 0; + Возврат СтрНайти(Врег(СтрокаСоединенияИнформационнойБазы()), "FILE=") = 1; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 6e9806648..7accd799b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -63,6 +63,18 @@ КонецПроцедуры +// Вызывается при сборе информации об окружении на клиенте. +// Позволяет дополнить описание окружения своими данными +// +// Параметры: +// ОписаниеОкружения - см. ЮТФабрика.НовоеОписаниеОкружения +Процедура СборИнформацииОбОкружении(ОписаниеОкружения) Экспорт + + Параметры = ЮТКоллекции.ЗначениеВМассиве(ОписаниеОкружения); + ВызватьПодключаемыйОбработчикСобытия("СборИнформацииОбОкружении", "Инициализация", Параметры); + +КонецПроцедуры + #КонецОбласти #Область СобытияИсполненияТестов diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" index c941f2838..4008aab9e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" @@ -210,6 +210,20 @@ КонецФункции +// Выполняет сравнение версий +// +// Параметры: +// ПроверяемаяВерсия - Строка - Проверяемая версия +// БазоваяВерсия - Строка - Базовая версия, с которой происходит сравнение +// +// Возвращаемое значение: +// Булево - Проверяемая версия больше базовой +Функция ВерсияБольше(ПроверяемаяВерсия, БазоваяВерсия) Экспорт + + Возврат СравнитьВерсии(ПроверяемаяВерсия, БазоваяВерсия) > 0; + +КонецФункции + // Проверяет, что переданное значение является строковым представлением уникального идентификатора // // Параметры: @@ -222,7 +236,7 @@ Если ТипЗнч(Значение) <> Тип("Строка") Тогда Возврат Ложь; КонецЕсли; - + Шаблон = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"; Если СтрДлина(Шаблон) <> СтрДлина(Значение) Тогда @@ -243,7 +257,7 @@ КонецЦикла; Возврат Истина; - + КонецФункции // Из набора строк формирует набор уникальных строк. diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" index 43c64c268..5e7901cb3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" @@ -268,6 +268,58 @@ КонецФункции +// Новое описание окружения. +// +// Возвращаемое значение: +// Структура - Описание окружения: +// * Конфигурация - Строка - +// * ВерсияКонфигурации - Строка - +// * ВерсияПлатформы - Строка - +// * ИнформационнаяСреда - Строка - +// * ТестовыйДвижок - Строка - +// * ВерсияТестовогоДвижка - Строка - +// * ЛокальПлатформы - Строка - +// * ЛокальИнтерфейса - Строка - +// * ОперационнаяСистемаКлиент - Строка - Возможные значения: Linux, Windows, MacOS +// * АрхитектураКлиент - Строка - Возможные значения: x86_64, i386 +// * ОперационнаяСистемаСервер - Строка - Возможные значения: Linux, Windows, MacOS +// * АрхитектураСервер - Строка - Возможные значения: x86_64, i386 +// * ВстроенныйЯзык - Строка - Возможные значения: ru, en +// * ФайловаяБаза - Булево - +// * ОбычноеПриложение - Булево - +// * ВебКлиент - Булево - +// * ТолстыйКлиент - Булево - +// * ВремяЗапуска - Дата - +Функция НовоеОписаниеОкружения() Экспорт + + Окружение = Новый Структура; + Окружение.Вставить("Конфигурация", ""); + Окружение.Вставить("ВерсияКонфигурации", ""); + Окружение.Вставить("ВерсияПлатформы", ""); + Окружение.Вставить("ИнформационнаяСреда", "DEV"); + Окружение.Вставить("ТестовыйДвижок", "YAxUnit"); + Окружение.Вставить("ВерсияТестовогоДвижка", ""); + + Окружение.Вставить("ЛокальПлатформы", ""); + Окружение.Вставить("ЛокальИнтерфейса", ""); + Окружение.Вставить("ВстроенныйЯзык", ""); + + Окружение.Вставить("ОперационнаяСистемаКлиент", ""); + Окружение.Вставить("АрхитектураКлиент", ""); + + Окружение.Вставить("ОперационнаяСистемаСервер", ""); + Окружение.Вставить("АрхитектураСервер", ""); + + Окружение.Вставить("ФайловаяБаза", Ложь); + Окружение.Вставить("ОбычноеПриложение", Ложь); + Окружение.Вставить("ВебКлиент", Ложь); + Окружение.Вставить("ТолстыйКлиент", Ложь); + Окружение.Вставить("ВремяЗапуска", '00010101'); + + Возврат Окружение; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" index eb36ff07c..13b856bc1 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" @@ -223,20 +223,7 @@ // Возвращает информацию об окружении. // // Возвращаемое значение: -// Структура - Описание окружения: -// * ВерсияПлатформы - Строка -// * ФайловаяБаза - Булево -// * ОбычноеПриложение - Булево -// * ВебКлиент - Булево -// * ТолстыйКлиент - Булево -// * ЛокальПлатформы - Строка -// * ЛокальИнтерфейса - Строка -// * ОперационнаяСистемаКлиент - Строка - Возможные значения: Linux, Windows, MacOS -// * АрхитектураКлиент - Строка - Возможные значения: x86_64, i386 -// * ОперационнаяСистемаСервер - Строка - Возможные значения: Linux, Windows, MacOS -// * АрхитектураСервер - Строка - Возможные значения: x86_64, i386 -// * ВстроенныйЯзык - Строка - Возможные значения: ru, en -// * ИнформационнаяСреда - Строка +// см. ЮТФабрика.НовоеОписаниеОкружения Функция Окружение() Экспорт //@skip-check constructor-function-return-section From 3a057a3bc0dee3f284eb1a22b61d5473fe8322b5 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Wed, 22 May 2024 20:07:55 +0300 Subject: [PATCH 26/54] =?UTF-8?q?#337=20=D0=9E=D0=BF=D1=82=D0=B8=D0=BC?= =?UTF-8?q?=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=20=D1=85=D1=80=D0=B0=D0=BD?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D1=8F,=20=D0=BE=D0=B4=D0=BD=D0=BE=D0=BD?= =?UTF-8?q?=D0=B0=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=BD=D1=8B?= =?UTF-8?q?=D0=B5=20=D1=81=D1=81=D1=8B=D0=BB=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 2 +- .../Module.bsl" | 53 +++++++++++++++++++ ...0\265\321\201\321\202\320\276\320\262.mdo" | 9 ++++ .../Module.bsl" | 4 -- .../src/Configuration/Configuration.mdo | 1 + .../Module.bsl" | 20 +++---- .../Module.bsl" | 11 ++-- 7 files changed, 79 insertions(+), 21 deletions(-) create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 0f2333926..c5f191d60 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -231,7 +231,7 @@ ЗаписьXML.ЗаписатьАтрибут("failures", XMLСтрока(КоличествоУпавших)); ЗаписьXML.ЗаписатьАтрибут("timestamp", XMLСтрока(ЮТОбщий.МестноеВремяПоВременнойМетке(Набор.ДатаСтарта))); ЗаписьXML.ЗаписатьАтрибут("time", XMLСтрока(ЮТОбщий.ПродолжительностьВСекундах(Набор.Длительность))); - ЗаписьXML.ЗаписатьАтрибут("package", Набор.МетаданныеМодуля.Расширение); + ЗаписьXML.ЗаписатьАтрибут("package", Модуль.МетаданныеМодуля.Расширение); ЗаписьXML.ЗаписатьАтрибут("context", Набор.Режим); Для Каждого ОписаниеОшибки Из Набор.Ошибки Цикл diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" new file mode 100644 index 000000000..e3fb6e7fc --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" @@ -0,0 +1,53 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта) + + Данные = Новый Структура; + Данные.Вставить("Идентификатор", Новый УникальныйИдентификатор()); + Данные.Вставить("ИдентификаторБазовогоОписания", ОписаниеБазовогоОбъекта.Идентификатор); + Данные.Вставить("Статус", Новый Структура); + Данные.Вставить("Родитель", Неопределено); + +КонецФункции + +Функция ОписаниеБазовогоОбъекта(Идентификатор, АдресХранилища) Экспорт + + ДанныеХранилища = ПолучитьИзВременногоХранилища(АдресХранилища); + Возврат ДанныеХранилища[Идентификатор]; + +КонецФункции + +Функция РезультатТесирования(ДанныеИсполняемого) Экспорт + + Результат = Новый Структура; + Результат.Вставить("Идентификатор", ДанныеИсполняемого.Идентификатор); + Результат.Вставить("Представление"); + Результат.Вставить("Статус"); + Результат.Вставить("Контекст"); + Результат.Вставить("Метки"); + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" new file mode 100644 index 000000000..62c2f904a --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" @@ -0,0 +1,9 @@ + + + ЮТСтруктураТестов + + ru + Структура тестов + + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index c01ac32c0..548c7302f 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -210,13 +210,11 @@ // * Теги - Массив из Строка - Тэги набора // * Ошибки - Массив из см. ЮТФабрикаСлужебный.ОписаниеВозникшейОшибки - Описания ошибок выполнения теста // * Режим - Строка - Режим исполнения набора, см. ЮТФабрика.КонтекстыВызова -// * МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля // * Тесты - Массив из см. ОписаниеИсполняемогоТеста - Тесты набора, структуру тестов см. ОписаниеИсполняемогоТеста // * Выполнять - Булево - Признак, что можно выполнить прогон набора (нет ошибок блокирующих запуск) // * ДатаСтарта - Число - Дата запуска набора // * Длительность - Число - Продолжительность выполнения набора // * НастройкиВыполнения - Структура - Настройки исполнения теста -// * ТестовыйМодуль - См. ОписаниеТестовогоМодуля // * Зависимости- Массив Из см. ЮТФабрика.НовоеОписаниеЗависимости - Зависимости тестового набора Функция ОписаниеИсполняемогоНабораТестов(НаборТестов, ТестовыйМодуль) Экспорт @@ -225,8 +223,6 @@ Описание.Вставить("Имя", НаборТестов.Имя); Описание.Вставить("Представление", НаборТестов.Представление); Описание.Вставить("Режим", ""); - Описание.Вставить("ТестовыйМодуль", ТестовыйМодуль); - Описание.Вставить("МетаданныеМодуля", ТестовыйМодуль.МетаданныеМодуля); Описание.Вставить("Тесты", Новый Массив); Описание.Вставить("Выполнять", Описание.Ошибки.Количество() = 0); Описание.Вставить("ДатаСтарта", 0); diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index 0c7b93b9c..31482c527 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -126,6 +126,7 @@ CommonModule.ЮТСравнениеСлужебныйВызовСервера CommonModule.ЮТСравнениеСлужебныйКлиентСервер CommonModule.ЮТСтроки + CommonModule.ЮТСтруктураТестов CommonModule.ЮТТестовыеДанные CommonModule.ЮТТестовыеДанныеСлужебный CommonModule.ЮТТестовыеДанныеСлужебныйВызовСервера diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index d970c6e1f..3e4d04151 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -59,16 +59,16 @@ .Свойство("МетаданныеМодуля").ИмеетТип("Структура") .Свойство("НаборыТестов").ИмеетТип("Массив"); - МетаданныеМодуля = НаборМодуля.МетаданныеМодуля; - ЮТест.ОжидаетЧто(МетаданныеМодуля, "Метаданные модуля") - .Заполнено() - .ИмеетТип("Структура") - .Свойство("Имя").Равно("ОМ_ЮТЧитательСлужебный") - .Свойство("КлиентОбычноеПриложение").Равно(Истина) - .Свойство("КлиентУправляемоеПриложение").Равно(Истина) - .Свойство("ВызовСервера").Равно(Ложь) - .Свойство("ПолноеИмя").Равно("tests.ОМ_ЮТЧитательСлужебный") - .Свойство("Сервер").Равно(Ложь); +// МетаданныеМодуля = НаборМодуля.МетаданныеМодуля; +// ЮТест.ОжидаетЧто(МетаданныеМодуля, "Метаданные модуля") +// .Заполнено() +// .ИмеетТип("Структура") +// .Свойство("Имя").Равно("ОМ_ЮТЧитательСлужебный") +// .Свойство("КлиентОбычноеПриложение").Равно(Истина) +// .Свойство("КлиентУправляемоеПриложение").Равно(Истина) +// .Свойство("ВызовСервера").Равно(Ложь) +// .Свойство("ПолноеИмя").Равно("tests.ОМ_ЮТЧитательСлужебный") +// .Свойство("Сервер").Равно(Ложь); НаборыТестов = НаборМодуля.НаборыТестов; diff --git "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index 1bb7e03c8..717090421 100644 --- "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -23,7 +23,7 @@ Результат = Новый Массив(); Модуль = ОписаниеТестовогоМодуля(); Набор = ОписаниеТестовогоНабора(Модуль); - Тест = ОписаниеТеста(Набор); + Тест = ОписаниеТеста(Модуль, Набор); Набор.Тесты.Добавить(Тест); Модуль.НаборыТестов.Добавить(Набор); Результат.Добавить(Модуль); @@ -56,8 +56,8 @@ Описание.Вставить("Теги", Новый Массив()); Описание.Вставить("Ошибки", Новый Массив()); Описание.Вставить("Режим", ""); - Описание.Вставить("ТестовыйМодуль", ТестовыйМодуль); - Описание.Вставить("МетаданныеМодуля", ТестовыйМодуль.МетаданныеМодуля); +// Описание.Вставить("ТестовыйМодуль", ТестовыйМодуль); +// Описание.Вставить("МетаданныеМодуля", ТестовыйМодуль.МетаданныеМодуля); Описание.Вставить("Тесты", Новый Массив); Описание.Вставить("Выполнять", Истина); Описание.Вставить("ДатаСтарта", 0); @@ -68,12 +68,11 @@ КонецФункции -Функция ОписаниеТеста(Набор) Экспорт +Функция ОписаниеТеста(Модуль, Набор) Экспорт - ТестовыйМодуль = Набор.ТестовыйМодуль; ИмяМетода = ЮТТестовыеДанные.СлучайнаяСтрока(); - ПолноеИмяМетода = СтрШаблон("%1.%2", ТестовыйМодуль.МетаданныеМодуля.Имя, ИмяМетода); + ПолноеИмяМетода = СтрШаблон("%1.%2", Набор.МетаданныеМодуля.Имя, ИмяМетода); Представление = ИмяМетода + "()"; ОписаниеТеста = Новый Структура; From ba445e50cdd974e426d867747b0593d5fb8b4129 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Wed, 22 May 2024 23:40:59 +0300 Subject: [PATCH 27/54] =?UTF-8?q?#337=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=82=D0=B5=D1=81=D1=82?= =?UTF-8?q?=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 5 +++-- .../Module.bsl" | 9 ++++----- .../Module.bsl" | 4 ++-- .../Module.bsl" | 2 -- 4 files changed, 9 insertions(+), 11 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 883dcf5b3..f8a5bf92e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -79,13 +79,14 @@ Функция ОписаниеТеста(РезультатТеста, Набор, Модуль) Экспорт Статусы = ЮТФабрика.СтатусыИсполненияТеста(); + ПолноеИмяМетода = СтрШаблон("%1.%2", Модуль.МетаданныеМодуля.Имя, РезультатТеста.Метод); ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим); - ПолныйИдентификаторТеста = СтрШаблон("%1_%2_%3", РезультатТеста.НомерВНаборе, РезультатТеста.ПолноеИмяМетода, РезультатТеста.Режим); + ПолныйИдентификаторТеста = СтрШаблон("%1_%2.3_%4", РезультатТеста.НомерВНаборе, ПолноеИмяМетода, РезультатТеста.Режим); Теги = ЮТОтчетСлужебныйКлиентСервер.УникальныеТеги(Модуль, Набор, РезультатТеста); Описание = НовыйОписаниеТеста(); - Описание.fullName = РезультатТеста.ПолноеИмяМетода + ПредставлениеРежима; + Описание.fullName = ПолноеИмяМетода + ПредставлениеРежима; Описание.name = РезультатТеста.Метод + ПредставлениеРежима; Описание.status = СтатусОтчета(РезультатТеста.Статус, Статусы); Описание.testCaseId = ЮТОбщий.ХешMD5(ПолныйИдентификаторТеста); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 548c7302f..b3b4261ad 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -85,6 +85,7 @@ // Возвращаемое значение: // Структура - Описание тестового модуля: // * МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// * Теги - Массив из Строка - Коллекция тегов набора // * НаборыТестов - Массив из см. ЮТФабрикаСлужебный.ОписаниеТестовогоНабора // * Ошибки - Массив из см. ЮТФабрикаСлужебный.ОписаниеВозникшейОшибки // * НастройкиВыполнения- Структура - Настройки исполнения теста @@ -181,6 +182,7 @@ // Возвращаемое значение: // Структура - Описание тестового модуля: // * МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// * Теги - Массив из Строка - Коллекция тегов набора // * НаборыТестов - Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов // * Ошибки - Массив из см. ЮТФабрикаСлужебный.ОписаниеВозникшейОшибки // * НастройкиВыполнения- Структура - Настройки исполнения теста @@ -337,6 +339,7 @@ // * Сообщение - Строка - Описание возникшей ошибки // * Стек - Строка - Стек возникшей ошибки // * ТипОшибки - Строка - Тип возникшей ошибки. Доступные значения см. ЮТФабрикаСлужебный.ТипыОшибок +// * Лог - Массив из Строка // * ПроверяемоеЗначение - Произвольный - Проверяемое, фактическое значение // * ОжидаемоеЗначение - Произвольный - Ожидаемое значение Функция ОписаниеОшибкиСравнения(Сообщение) Экспорт @@ -357,11 +360,7 @@ // Сообщение - Строка // // Возвращаемое значение: -// Структура - Описание возникшей ошибки: -// * Сообщение - Строка - Описание возникшей ошибки -// * Стек - Строка - Стек возникшей ошибки -// * ТипОшибки - Строка - Тип возникшей ошибки. Доступные значения -// См. ЮТФабрикаСлужебный.ТипыОшибок +// см. ОписаниеВозникшейОшибки Функция ОписаниеОшибкиПропуска(Сообщение) Экспорт Описание = ОписаниеВозникшейОшибки(Сообщение); diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index d72596891..b7b7f197b 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -56,7 +56,7 @@ Модуль = ТестовыеДанные.ОписаниеТестовогоМодуля(); Набор = ТестовыеДанные.ОписаниеТестовогоНабора(Модуль); - Тест = ТестовыеДанные.ОписаниеТеста(Набор); + Тест = ТестовыеДанные.ОписаниеТеста(Модуль, Набор); ОписаниеТеста = ЮТОтчетAllureСлужебный.ОписаниеТеста(Тест, Набор, Модуль); ЮТест.ОжидаетЧто(ОписаниеТеста) @@ -84,7 +84,7 @@ Модуль = ТестовыеДанные.ОписаниеТестовогоМодуля(); Набор = ТестовыеДанные.ОписаниеТестовогоНабора(Модуль); - Тест = ТестовыеДанные.ОписаниеТеста(Набор); + Тест = ТестовыеДанные.ОписаниеТеста(Модуль, Набор); Модуль.Теги = ЮТСтроки.РазделитьСтроку("Модуль, Тег1, Тег 2", ","); Набор.Теги = ЮТСтроки.РазделитьСтроку("Набор, ТЕГ 2, Тег3", ","); diff --git "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index 717090421..cb86fd538 100644 --- "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -72,13 +72,11 @@ ИмяМетода = ЮТТестовыеДанные.СлучайнаяСтрока(); - ПолноеИмяМетода = СтрШаблон("%1.%2", Набор.МетаданныеМодуля.Имя, ИмяМетода); Представление = ИмяМетода + "()"; ОписаниеТеста = Новый Структура; ОписаниеТеста.Вставить("Имя", Представление); ОписаниеТеста.Вставить("Метод", ИмяМетода); - ОписаниеТеста.Вставить("ПолноеИмяМетода", ПолноеИмяМетода); ОписаниеТеста.Вставить("Теги", Новый Массив); ОписаниеТеста.Вставить("Режим", Набор.Режим); ОписаниеТеста.Вставить("ДатаСтарта", 0); From 4db00f95c4d385388edc9921d4cb3b37d9411536 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Wed, 22 May 2024 23:41:53 +0300 Subject: [PATCH 28/54] =?UTF-8?q?#337=20=D0=A0=D0=B5=D1=84=D0=B0=D0=BA?= =?UTF-8?q?=D1=82=D0=BE=D1=80=D0=B8=D0=BD=D0=B3,=20=D0=BF=D0=B5=D1=80?= =?UTF-8?q?=D0=B5=D0=B8=D0=BC=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D0=BB=20=D1=81?= =?UTF-8?q?=D0=B2=D0=BE=D0=B9=D1=81=D1=82=D0=B2=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 6 ++-- .../Module.bsl" | 31 ++++++++++--------- .../Module.bsl" | 5 ++- .../Module.bsl" | 8 ++--- .../Module.bsl" | 2 +- .../Module.bsl" | 4 +-- .../Module.bsl" | 4 +-- .../Module.bsl" | 26 +++++++--------- .../Module.bsl" | 2 +- .../Module.bsl" | 6 ++-- .../Module.bsl" | 4 +-- .../Module.bsl" | 2 +- .../Module.bsl" | 4 +-- .../Module.bsl" | 2 +- .../Module.bsl" | 8 ++--- .../Module.bsl" | 16 ++-------- .../Module.bsl" | 7 ++--- 17 files changed, 58 insertions(+), 79 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index fe2c9c409..b238689cf 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -291,7 +291,7 @@ ИсполняемыйТестовыйМодуль = ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля(ТестовыйМодуль); КонтекстыПриложения = ЮТФабрикаСлужебный.КонтекстыПриложения(); - КонтекстыМодуля = ЮТФабрикаСлужебный.КонтекстыМодуля(ТестовыйМодуль.МетаданныеМодуля); + КонтекстыМодуля = ЮТФабрикаСлужебный.КонтекстыМодуля(ТестовыйМодуль.Метаданные); КонтекстыИсполнения = ЮТФабрика.КонтекстыИсполнения(); ИсполняемыйТестовыйМодуль.НаборыТестов = ИсполняемыеНаборыМодуля(ТестовыйМодуль); @@ -340,7 +340,7 @@ Для Каждого Контекст Из Тест.КонтекстВызова Цикл Если НЕ НаборыКонтекстов.Свойство(Контекст) Тогда - ИсполняемыйНабор = ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов(ТестовыйНабор, ТестовыйМодуль); + ИсполняемыйНабор = ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов(ТестовыйНабор); ИсполняемыйНабор.Режим = Контекст; НаборыКонтекстов.Вставить(Контекст, ИсполняемыйНабор); Иначе @@ -388,7 +388,7 @@ КонецПроцедуры Функция ОписаниеТестаСОшибкойЧтения(Модуль, Ошибка) - Контексты = ЮТФабрикаСлужебный.КонтекстыМодуля(Модуль.МетаданныеМодуля); + Контексты = ЮТФабрикаСлужебный.КонтекстыМодуля(Модуль.Метаданные); Тест = ЮТФабрикаСлужебный.ОписаниеТеста("ИсполняемыеСценарии", "ИсполняемыеСценарии", Контексты); Тест.Вставить("Ошибки", Новый Массив); Тест.Ошибки.Добавить(ЮТКоллекции.СкопироватьСтруктуру(Ошибка)); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index b9228062f..3dfc94835 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -130,24 +130,23 @@ КонецПроцедуры -// Перед чтением сценариев модуля. +// Обработка события "ПередЧтениемСценариевМодуля" // // Параметры: -// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля -// ИсполняемыеСценарии - см. ЮТТесты.СценарииМодуля -Процедура ПередЧтениемСценариевМодуля(МетаданныеМодуля, ИсполняемыеСценарии) Экспорт +// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля +Процедура ПередЧтениемСценариевМодуля(МетаданныеМодуля) Экспорт ЮТЛогирование.Информация(СтрШаблон("Загрузка сценариев модуля `%1`", МетаданныеМодуля.Имя)); КонецПроцедуры -// Перед чтением сценариев модуля. +// Обработка события "ПослеЧтенияСценариевМодуля" // // Параметры: -// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// ОписаниеТестовогоМодуля - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля Процедура ПослеЧтенияСценариевМодуля(ОписаниеТестовогоМодуля) Экспорт - ЮТЛогирование.Информация(СтрШаблон("Загрузка сценариев модуля завершена `%1`", ОписаниеТестовогоМодуля.МетаданныеМодуля.Имя)); + ЮТЛогирование.Информация(СтрШаблон("Загрузка сценариев модуля завершена `%1`", ОписаниеТестовогоМодуля.Метаданные.Имя)); КонецПроцедуры @@ -183,7 +182,7 @@ КонецПроцедуры -// Перед всеми тестами. +// Обработка события "ПередВсемиТестами" // // Параметры: // ОписаниеСобытия - см. ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов @@ -198,11 +197,12 @@ Контекст.КоличествоВыполненныхТестов = ПрогрессСервер; КонецЕсли; #КонецЕсли - ЮТЛогирование.Информация(СтрШаблон("Запуск тестов модуля `%1`", ОписаниеСобытия.Модуль.МетаданныеМодуля.ПолноеИмя)); + МетаданныеМодуля = ОписаниеСобытия.Модуль.Метаданные; + ЮТЛогирование.Информация(СтрШаблон("Запуск тестов модуля `%1.%2`", МетаданныеМодуля.Расширение, МетаданныеМодуля.Имя)); КонецПроцедуры -// Перед тестовым набором. +// Обработка события "ПередТестовымНабором" // // Параметры: // ОписаниеСобытия - см. ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов @@ -212,7 +212,7 @@ КонецПроцедуры -// Перед каждым тестом. +// Обработка события "ПередКаждымТестом" // // Параметры: // ОписаниеСобытия - см. ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов @@ -222,7 +222,7 @@ КонецПроцедуры -// Перед каждым тестом. +// Обработка события "ПослеКаждогоТеста" // // Параметры: // ОписаниеСобытия - см. ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов @@ -238,7 +238,7 @@ КонецПроцедуры -// Перед каждым тестом. +// Обработка события "ПослеТестовогоНабора" // // Параметры: // ОписаниеСобытия - см. ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов @@ -248,7 +248,7 @@ КонецПроцедуры -// Перед каждым тестом. +// Обработка события "ПослеВсехТестов" // // Параметры: // ОписаниеСобытия - см. ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов @@ -262,7 +262,8 @@ ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(ИмяКонтекстаЛогирования() + ".КоличествоВыполненныхТестов", Контекст.КоличествоВыполненныхТестов, Истина); #КонецЕсли - ЮТЛогирование.Информация(СтрШаблон("Завершен модуль `%1`", ОписаниеСобытия.Модуль.МетаданныеМодуля.ПолноеИмя)); + МетаданныеМодуля = ОписаниеСобытия.Модуль.Метаданные; + ЮТЛогирование.Информация(СтрШаблон("Завершен модуль `%1.%2`", МетаданныеМодуля.Расширение, МетаданныеМодуля.Имя)); КонецПроцедуры diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 69f9a5f43..3f75db8e0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -22,7 +22,7 @@ // Выполняет чтение метаданных общих модулей, которые предположительно могут являться тестами // // Возвращаемое значение: -// Массив из см. ЮТФабрикаСлужебный.ОписаниеМодуля - Коллекция описаний моделей, структуру элемента см. ЮТФабрикаСлужебный.ОписаниеМодуля +// Массив из см. ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля - Коллекция описаний моделей Функция МодулиРасширений() Экспорт УстановитьПривилегированныйРежим(Истина); @@ -55,7 +55,7 @@ КонецЕсли; КонецЕсли; - Описание = ЮТФабрикаСлужебный.ОписаниеМодуля(); + Описание = ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля(); Описание.Имя = Модуль.Имя; Описание.КлиентУправляемоеПриложение = Модуль.КлиентУправляемоеПриложение; Описание.КлиентОбычноеПриложение = Модуль.КлиентОбычноеПриложение; @@ -63,7 +63,6 @@ Описание.Сервер = Модуль.Сервер; Описание.ВызовСервера = Модуль.ВызовСервера; Описание.Расширение = Модуль.РасширениеКонфигурации().Имя; - Описание.ПолноеИмя = СтрШаблон("%1.%2", Описание.Расширение, Модуль.Имя); Возврат Описание; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index f8a5bf92e..ce5c6b194 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -79,7 +79,7 @@ Функция ОписаниеТеста(РезультатТеста, Набор, Модуль) Экспорт Статусы = ЮТФабрика.СтатусыИсполненияТеста(); - ПолноеИмяМетода = СтрШаблон("%1.%2", Модуль.МетаданныеМодуля.Имя, РезультатТеста.Метод); + ПолноеИмяМетода = СтрШаблон("%1.%2", Модуль.Метаданные.Имя, РезультатТеста.Метод); ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим); ПолныйИдентификаторТеста = СтрШаблон("%1_%2.3_%4", РезультатТеста.НомерВНаборе, ПолноеИмяМетода, РезультатТеста.Режим); @@ -93,8 +93,8 @@ Описание.start = ЮниксВремя(РезультатТеста.ДатаСтарта); Описание.stop = ЮниксВремя(РезультатТеста.ДатаСтарта) + РезультатТеста.Длительность; - ОписаниеМодуля = ИмяМодуляПоСхеме(Модуль.МетаданныеМодуля.Имя); - ИмяНабора = Модуль.МетаданныеМодуля.Имя; + ОписаниеМодуля = ИмяМодуляПоСхеме(Модуль.Метаданные.Имя); + ИмяНабора = Модуль.Метаданные.Имя; ИмяВложенногоНабора = Набор.Представление + ПредставлениеРежима; ДобавитьМетку(Описание, "language", "bsl"); @@ -113,7 +113,7 @@ КонецЕсли; ДобавитьМетку(Описание, "suite", ИмяНабора); - Если Модуль.НаборыТестов.Количество() > 1 ИЛИ Модуль.МетаданныеМодуля.Имя <> Набор.Представление Тогда + Если Модуль.НаборыТестов.Количество() > 1 ИЛИ Модуль.Метаданные.Имя <> Набор.Представление Тогда ДобавитьМетку(Описание, "subSuite", ИмяВложенногоНабора); КонецЕсли; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index c5f191d60..be6dc7f9e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202JUnit\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -231,7 +231,7 @@ ЗаписьXML.ЗаписатьАтрибут("failures", XMLСтрока(КоличествоУпавших)); ЗаписьXML.ЗаписатьАтрибут("timestamp", XMLСтрока(ЮТОбщий.МестноеВремяПоВременнойМетке(Набор.ДатаСтарта))); ЗаписьXML.ЗаписатьАтрибут("time", XMLСтрока(ЮТОбщий.ПродолжительностьВСекундах(Набор.Длительность))); - ЗаписьXML.ЗаписатьАтрибут("package", Модуль.МетаданныеМодуля.Расширение); + ЗаписьXML.ЗаписатьАтрибут("package", Модуль.Метаданные.Расширение); ЗаписьXML.ЗаписатьАтрибут("context", Набор.Режим); Для Каждого ОписаниеОшибки Из Набор.Ошибки Цикл diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 7accd799b..43186f649 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -212,7 +212,7 @@ // Позволяет настроить базовые параметры перед чтением настроек тестов модуля. // // Параметры: -// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля Процедура ПередЧтениемСценариевМодуля(МетаданныеМодуля) Экспорт Параметры = ЮТКоллекции.ЗначениеВМассиве(МетаданныеМодуля); @@ -352,7 +352,7 @@ ИмяСобытия = ПереопределенноеИмяСобытия(ИмяСобытия); КонецЕсли; - ИмяМодуля = ОписаниеСобытия.Модуль.МетаданныеМодуля.Имя; + ИмяМодуля = ОписаниеСобытия.Модуль.Метаданные.Имя; ЧастиКоманды = СтрРазделить(ИмяСобытия, "."); Если ЧастиКоманды.Количество() = 2 Тогда diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 4fa1a51b8..3aea22cbf 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -205,7 +205,7 @@ // Новое описание тестового модуля. // // Параметры: -// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля // // Возвращаемое значение: // см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля @@ -222,7 +222,7 @@ Функция КонтекстыВызоваПоУмолчанию() - Возврат ЮТФабрикаСлужебный.КонтекстыМодуля(Контекст().ОписаниеМодуля.МетаданныеМодуля); + Возврат ЮТФабрикаСлужебный.КонтекстыМодуля(Контекст().ОписаниеМодуля.Метаданные); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index b3b4261ad..069563a8c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -79,12 +79,12 @@ // Описание тестового модуля. // // Параметры: -// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// МетаданныеМодуля - см. ОписаниеМетаданныеМодуля // НаборыТестов - Массив из см. ЮТФабрикаСлужебный.ОписаниеТестовогоНабора // // Возвращаемое значение: // Структура - Описание тестового модуля: -// * МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// * Метаданные - см. ОписаниеМетаданныеМодуля // * Теги - Массив из Строка - Коллекция тегов набора // * НаборыТестов - Массив из см. ЮТФабрикаСлужебный.ОписаниеТестовогоНабора // * Ошибки - Массив из см. ЮТФабрикаСлужебный.ОписаниеВозникшейОшибки @@ -94,7 +94,7 @@ Описание = БазовоеОписаниеРегистрируемогоОбъекта(); - Описание.Вставить("МетаданныеМодуля", МетаданныеМодуля); + Описание.Вставить("Метаданные", МетаданныеМодуля); Описание.Вставить("НаборыТестов", НаборыТестов); Возврат Описание; @@ -181,7 +181,7 @@ // // Возвращаемое значение: // Структура - Описание тестового модуля: -// * МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// * Метаданные - см. ОписаниеМетаданныеМодуля // * Теги - Массив из Строка - Коллекция тегов набора // * НаборыТестов - Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов // * Ошибки - Массив из см. ЮТФабрикаСлужебный.ОписаниеВозникшейОшибки @@ -191,7 +191,7 @@ Описание = БазовоеОписаниеИсполняемогоОбъекта(ТестовыйМодуль); - Описание.Вставить("МетаданныеМодуля", ТестовыйМодуль.МетаданныеМодуля); + Описание.Вставить("Метаданные", ТестовыйМодуль.Метаданные); Описание.Вставить("НаборыТестов", Новый Массив); Возврат Описание; @@ -203,7 +203,6 @@ // Содержит данные необходимые для выполнения прогона тестов // Параметры: // НаборТестов - См. ОписаниеТестовогоНабора -// ТестовыйМодуль - См. ОписаниеТестовогоМодуля // // Возвращаемое значение: // Структура - Описание исполняемого набора тестов: @@ -218,7 +217,7 @@ // * Длительность - Число - Продолжительность выполнения набора // * НастройкиВыполнения - Структура - Настройки исполнения теста // * Зависимости- Массив Из см. ЮТФабрика.НовоеОписаниеЗависимости - Зависимости тестового набора -Функция ОписаниеИсполняемогоНабораТестов(НаборТестов, ТестовыйМодуль) Экспорт +Функция ОписаниеИсполняемогоНабораТестов(НаборТестов) Экспорт Описание = БазовоеОписаниеИсполняемогоОбъекта(НаборТестов); @@ -260,7 +259,7 @@ // * Зависимости- Массив Из см. ЮТФабрика.НовоеОписаниеЗависимости - Зависимости теста Функция ОписаниеИсполняемогоТеста(Тест, Режим, ТестовыйМодуль) Экспорт - ПолноеИмяМетода = СтрШаблон("%1.%2", ТестовыйМодуль.МетаданныеМодуля.Имя, Тест.Имя); + ПолноеИмяМетода = СтрШаблон("%1.%2", ТестовыйМодуль.Метаданные.Имя, Тест.Имя); Представление = ПредставлениеТеста(Тест); Описание = БазовоеОписаниеИсполняемогоОбъекта(Тест); @@ -279,23 +278,20 @@ КонецФункции -// ОписаниеМодуля -// Возвращает структуру описания модуля +// Возвращает структуру описания метаданных модуля // Возвращаемое значение: -// Структура - Описание модуля: +// Структура - Метаданные модуля: // * Имя - Строка - Имя модуля -// * ПолноеИмя - Строка - Полное имя модуля // * Расширение - Строка - Имя расширения, владельца модуля // * КлиентУправляемоеПриложение - Булево - Доступность контекста // * КлиентОбычноеПриложение - Булево - Доступность контекста // * Сервер - Булево - Доступность контекста // * ВызовСервера - Булево - Доступность контекста // * Глобальный - Булево - Доступность контекста -Функция ОписаниеМодуля() Экспорт +Функция ОписаниеМетаданныеМодуля() Экспорт Описание = Новый Структура; Описание.Вставить("Имя", ""); - Описание.Вставить("ПолноеИмя", ""); Описание.Вставить("Расширение", ""); Описание.Вставить("КлиентУправляемоеПриложение", Ложь); Описание.Вставить("КлиентОбычноеПриложение", Ложь); @@ -532,7 +528,7 @@ // КонтекстыМодуля // Возвращает коллекцию доступных контекстов выполнения модуля // Параметры: -// Модуль - См. ОписаниеМодуля +// Модуль - См. ОписаниеМетаданныеМодуля // // Возвращаемое значение: // Массив из Строка - Контексты модуля, возможные значения см. ЮТФабрика.КонтекстыВызова diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index b9b0e28de..2a57092d9 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -51,7 +51,7 @@ КонецЕсли; НаборыТестов = ОписаниеТестовогоМодуля.НаборыТестов; - МетаданныеМодуля = ОписаниеТестовогоМодуля.МетаданныеМодуля; + МетаданныеМодуля = ОписаниеТестовогоМодуля.Метаданные; Результат = Новый Массив(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 114a5ea1a..c96c0bce5 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -54,7 +54,7 @@ // ПрочитатьНаборТестов // Читает набор тестов из модуля // Параметры: -// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМодуля +// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля // // Возвращаемое значение: // - Неопределено - Если это не тестовый модуль @@ -110,7 +110,7 @@ // ЭтоТестовыйМодуль // Проверяет, является ли модуль модулем с тестами // Параметры: -// МетаданныеМодуля - Структура - Описание метаданных модуля, см. ЮТФабрикаСлужебный.ОписаниеМодуля +// МетаданныеМодуля - Структура - Описание метаданных модуля, см. ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля // // Возвращаемое значение: // Булево - Этот модуль содержит тесты @@ -169,9 +169,7 @@ Для Каждого ОписаниеМодуля Из МодулиРасширения Цикл Если ЮТФильтрацияСлужебный.ЭтоПодходящийМодуль(ОписаниеМодуля) И ЭтоТестовыйМодуль(ОписаниеМодуля) Тогда - ТестовыеМодули.Добавить(ОписаниеМодуля); - КонецЕсли; КонецЦикла; diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" index 14c0c1420..597dd79d8 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" @@ -187,7 +187,7 @@ Для Каждого ОписаниеМодуля Из ТестовыеМодули Цикл - ИмяРасширения = ОписаниеМодуля.МетаданныеМодуля.Расширение; + ИмяРасширения = ОписаниеМодуля.Метаданные.Расширение; СтрокаРасширения = СтрокиРасширений[ИмяРасширения]; Если СтрокаРасширения = Неопределено Тогда @@ -195,7 +195,7 @@ СтрокиРасширений.Вставить(ИмяРасширения, СтрокаРасширения); КонецЕсли; - СтрокаМодуля = ДобавитьСтрокуМодуля(СтрокаРасширения, ОписаниеМодуля.МетаданныеМодуля); + СтрокаМодуля = ДобавитьСтрокуМодуля(СтрокаРасширения, ОписаниеМодуля.Метаданные); Если ОписаниеМодуля.НаборыТестов.Количество() = 1 Тогда diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index f38dbaa4a..29d8613ac 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -95,7 +95,7 @@ Функция ОписаниеРезультатаТестирования(НаборыТестов) ОписаниеРезультата = Новый Структура; - ОписаниеРезультата.Вставить("МетаданныеМодуля", Неопределено); + ОписаниеРезультата.Вставить("Метаданные", Неопределено); ОписаниеРезультата.Вставить("НаборыТестов", НаборыТестов); ОписаниеРезультата.Вставить("Ошибки", Новый Массив); ОписаниеРезультата.Вставить("НастройкиВыполнения", Неопределено); diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index b7b7f197b..c8506c9f3 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -64,12 +64,12 @@ .Заполнено() ; - ИмяТестовогоНабора = Модуль.МетаданныеМодуля.Имя; + ИмяТестовогоНабора = Модуль.Метаданные.Имя; ИмяВложенногоНабора = СтрШаблон("%1 [%2]", Набор.Представление, Тест.Режим); СодержитМетку(ОписаниеТеста, "suite", ИмяТестовогоНабора); СодержитМетку(ОписаниеТеста, "subSuite", ИмяВложенногоНабора); - Набор.Представление = Модуль.МетаданныеМодуля.Имя; + Набор.Представление = Модуль.Метаданные.Имя; ОписаниеТеста = ЮТОтчетAllureСлужебный.ОписаниеТеста(Тест, Набор, Модуль); СодержитМетку(ОписаниеТеста, "suite", ИмяТестовогоНабора); ЮТест.ОжидаетЧто(ОписаниеТеста) diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" index dae584987..8397c5f4d 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\321\213/Module.bsl" @@ -31,7 +31,7 @@ Процедура ПередКаждымТестом() Экспорт - ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеМодуля(); + ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля(); ОписаниеМодуля.КлиентУправляемоеПриложение = Истина; ОписаниеМодуля.КлиентОбычноеПриложение = Истина; ОписаниеМодуля.Сервер = Истина; diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index acf86ece6..85c7680f0 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -143,8 +143,8 @@ Набор.Тесты.Добавить(Тест); ОписаниеМодуля = ОписаниеМодуля(); - ОписаниеМодуля.МетаданныеМодуля.Сервер = Истина; - ОписаниеМодуля.МетаданныеМодуля.КлиентУправляемоеПриложение = Истина; + ОписаниеМодуля.Метаданные.Сервер = Истина; + ОписаниеМодуля.Метаданные.КлиентУправляемоеПриложение = Истина; ДобавитьКопиюНабора(ОписаниеМодуля, Набор); @@ -353,7 +353,7 @@ Функция МетаданныеМодуля(ИмяМодуля = "ТестовыйМодуль", Расширение = "ТестовоеРасширение") - МетаданныеМодуля = ЮТФабрикаСлужебный.ОписаниеМодуля(); + МетаданныеМодуля = ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля(); МетаданныеМодуля.Имя = ИмяМодуля; МетаданныеМодуля.Расширение = Расширение; @@ -379,7 +379,7 @@ ИмяТеста = ЮТест.Данные().СлучайнаяСтрока(); КонецЕсли; - Возврат ЮТФабрикаСлужебный.ОписаниеТеста(ИмяТеста, + Возврат ЮТФабрикаСлужебный.ОписаниеТеста(ИмяТеста, ЮТест.Данные().СлучайнаяСтрока(), ЮТСтроки.РазделитьСтроку(КонтекстыВызова, ","), Теги); diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 3e4d04151..29b2c1d6d 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -56,20 +56,9 @@ ЮТест.ОжидаетЧто(НаборМодуля, "Набор тестов ОМ_ЮТЧитательСлужебный") .ИмеетТип("Структура") - .Свойство("МетаданныеМодуля").ИмеетТип("Структура") + .Свойство("Метаданные").ИмеетТип("Структура") .Свойство("НаборыТестов").ИмеетТип("Массив"); -// МетаданныеМодуля = НаборМодуля.МетаданныеМодуля; -// ЮТест.ОжидаетЧто(МетаданныеМодуля, "Метаданные модуля") -// .Заполнено() -// .ИмеетТип("Структура") -// .Свойство("Имя").Равно("ОМ_ЮТЧитательСлужебный") -// .Свойство("КлиентОбычноеПриложение").Равно(Истина) -// .Свойство("КлиентУправляемоеПриложение").Равно(Истина) -// .Свойство("ВызовСервера").Равно(Ложь) -// .Свойство("ПолноеИмя").Равно("tests.ОМ_ЮТЧитательСлужебный") -// .Свойство("Сервер").Равно(Ложь); - НаборыТестов = НаборМодуля.НаборыТестов; ЮТест.ОжидаетЧто(НаборыТестов, "Наборы тестов модуля") @@ -158,9 +147,8 @@ КонецПроцедуры Процедура ИсполняемыеСценарииМодуляСОшибкойЧтения() Экспорт - ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеМодуля(); + ОписаниеМодуля = ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля(); ОписаниеМодуля.Имя = "ОМ_ЮТЧитатель"; - ОписаниеМодуля.ПолноеИмя = "tests.ОМ_ЮТЧитатель"; ОписаниеМодуля.Расширение = "tests"; #Если Клиент Тогда ОписаниеМодуля.КлиентУправляемоеПриложение = Истина; diff --git "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index cb86fd538..ade1e0061 100644 --- "a/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -35,14 +35,13 @@ Функция ОписаниеТестовогоМодуля(ИмяМодуля = Неопределено) Экспорт Описание = Новый Структура(); - Описание.Вставить("МетаданныеМодуля", ЮТФабрикаСлужебный.ОписаниеМодуля()); + Описание.Вставить("Метаданные", ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля()); Описание.Вставить("НаборыТестов", Новый Массив); Описание.Вставить("Ошибки", Новый Массив); Описание.Вставить("НастройкиВыполнения", Новый Структура); Описание.Вставить("Теги", Новый Массив()); - Описание.МетаданныеМодуля.Имя = СлучайнаяСтрокаЕслиНеопределено(ИмяМодуля); - Описание.МетаданныеМодуля.ПолноеИмя = ЮТТестовыеДанные.СлучайнаяСтрока() + "." + Описание.МетаданныеМодуля.Имя; + Описание.Метаданные.Имя = СлучайнаяСтрокаЕслиНеопределено(ИмяМодуля); Возврат Описание; @@ -56,8 +55,6 @@ Описание.Вставить("Теги", Новый Массив()); Описание.Вставить("Ошибки", Новый Массив()); Описание.Вставить("Режим", ""); -// Описание.Вставить("ТестовыйМодуль", ТестовыйМодуль); -// Описание.Вставить("МетаданныеМодуля", ТестовыйМодуль.МетаданныеМодуля); Описание.Вставить("Тесты", Новый Массив); Описание.Вставить("Выполнять", Истина); Описание.Вставить("ДатаСтарта", 0); From acd287c9c0042ca1640c1129c20df69be8132f58 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Thu, 23 May 2024 00:41:15 +0300 Subject: [PATCH 29/54] =?UTF-8?q?#337=20=D0=92=D1=8B=D0=B7=D0=BE=D0=B2=20?= =?UTF-8?q?=D1=81=D0=B5=D1=80=D0=B2=D0=B5=D1=80=D0=BD=D1=8B=D1=85=20=D1=81?= =?UTF-8?q?=D0=BE=D0=B1=D1=8B=D1=82=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 58 +++++++++++++++++-- .../Module.bsl" | 8 ++- .../Module.bsl" | 42 ++++++++++++++ .../Module.bsl" | 28 +++++++++ 4 files changed, 128 insertions(+), 8 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 77ad127d7..4c6f0886e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -18,19 +18,65 @@ #Область СлужебныйПрограммныйИнтерфейс -// ПрогонНаборов -// Выполняет тесты наборов модуля. Возвращает результат прогона -// Это обертка для прогона на сервере +// Выполняет тесты наборов модуля. Возвращает результат прогона +// Это обертка для прогона на сервере +// // Параметры: -// Наборы - Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Наборы исполняемых тестов, структуру набора см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов -// ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля +// ИдентификаторыТестовыхНаборов - Массив из Строка +// ИдентификаторТестовогоМодуля - Строка // // Возвращаемое значение: // Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Результат прогона наборов тестов, структура набора см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов -Функция ВыполнитьГруппуНаборовТестов(Знач Наборы, Знач ТестовыйМодуль) Экспорт +Функция ВыполнитьГруппуНаборовТестов(Знач ИдентификаторыТестовыхНаборов, Знач ИдентификаторТестовогоМодуля) Экспорт + + АдресХранилища = ЮТКонтекстСлужебный.ЗначениеКонтекста("ХранилищеТестовыхСценариев"); + Хранилище = ПолучитьИзВременногоХранилища(АдресХранилища); + + ТестовыйМодуль = Хранилище[ИдентификаторТестовогоМодуля]; + Наборы = Новый Массив(); + + Для Каждого Идентификатор Из ИдентификаторыТестовыхНаборов Цикл + Наборы.Добавить(Хранилище[Идентификатор]); + КонецЦикла; Возврат ЮТИсполнительСлужебныйКлиентСервер.ВыполнитьГруппуНаборовТестов(Наборы, ТестовыйМодуль); КонецФункции +// Сохранить информацию о тестовых сценариях. +// +// Параметры: +// ТестовыеМодули - Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля +Процедура СохранитьИнформациюОТестовыхСценариях(Знач ТестовыеМодули) Экспорт + + Хранилище = Новый Соответствие(); + + Для Каждого Модуль Из ТестовыеМодули Цикл + + Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(Модуль); + Хранилище.Вставить(Идентификатор, Модуль); + + Для Каждого Набор Из Модуль.НаборыТестов Цикл + + Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(Модуль, Набор); + Хранилище.Вставить(Идентификатор, Набор); + + Для Каждого Тест Из Набор.Тесты Цикл + + Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(Модуль, Набор, Тест); + Хранилище.Вставить(Идентификатор, Тест); + + КонецЦикла; + + КонецЦикла; + + Модуль.НаборыТестов = Новый Массив; // Уже не нужно, поэтому очистим + + КонецЦикла; + + АдресХранилища = ПоместитьВоВременноеХранилище(Хранилище, Новый УникальныйИдентификатор()); + ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста("ХранилищеТестовыхСценариев", АдресХранилища); + +КонецПроцедуры + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index b238689cf..dd4995c35 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -87,7 +87,8 @@ Если РежимИсполнения = КонтекстыИсполнения.Клиент Тогда КлиентскиеНаборы.Добавить(Набор); ИначеЕсли РежимИсполнения = КонтекстыИсполнения.Сервер Тогда - СерверныеНаборы.Добавить(Набор); + ИдентификаторТестовогоНабора = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(ТестовыйМодуль, Набор); + СерверныеНаборы.Добавить(ИдентификаторТестовогоНабора); Иначе ПропущенныеНаборы.Добавить(Набор); КонецЕсли; @@ -102,7 +103,8 @@ КонецЕсли; Если ЗначениеЗаполнено(СерверныеНаборы) Тогда - Результат = ЮТИсполнительСлужебныйВызовСервера.ВыполнитьГруппуНаборовТестов(СерверныеНаборы, ТестовыйМодульОблегченный); + ИдентификаторТестовогоМодуля = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(ТестовыйМодуль); + Результат = ЮТИсполнительСлужебныйВызовСервера.ВыполнитьГруппуНаборовТестов(СерверныеНаборы, ИдентификаторТестовогоМодуля); ЮТЛогированиеСлужебный.ВывестиСерверныеСообщения(); ЮТКоллекции.ДополнитьМассив(Результаты, Результат); КонецЕсли; @@ -206,6 +208,8 @@ Процедура ОбработчикВыполнитьТестирование(_, ДополнительныеПараметры) Экспорт ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().ПрогонТестов); + ЮТИсполнительСлужебныйВызовСервера.СохранитьИнформациюОТестовыхСценариях(ДополнительныеПараметры.ИсполняемыеТестовыеМодули); + ЮТСобытияСлужебный.ПередВыполнениемТестов(ДополнительныеПараметры.ИсполняемыеТестовыеМодули); РезультатыТестирования = Новый Массив(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 9c619b516..39477a6ee 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -60,6 +60,48 @@ КонецФункции +// Возвращает идентификатор тестового модуля. +// +// Параметры: +// ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля +// +// Возвращаемое значение: +// Строка +Функция ИдентификаторТестовогоМодуля(ТестовыйМодуль) Экспорт + + Возврат ТестовыйМодуль.Метаданные.Имя; + +КонецФункции + +// Возвращает идентификатор тестового набора. +// +// Параметры: +// ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля +// ТестовыйНабор - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов +// +// Возвращаемое значение: +// Строка - Идентификатор тестового набора +Функция ИдентификаторТестовогоНабора(ТестовыйМодуль, ТестовыйНабор) Экспорт + + Возврат СтрШаблон("%1.%2.%3", ТестовыйМодуль.Метаданные.Имя, ТестовыйНабор.Имя, ТестовыйНабор.Режим); + +КонецФункции + +// Возврашает мдентификатор теста. +// +// Параметры: +// ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля +// ТестовыйНабор - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов +// Тест - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТеста +// +// Возвращаемое значение: +// Строка - Идентификатор теста +Функция ИдентификаторТеста(ТестовыйМодуль, ТестовыйНабор, Тест) Экспорт + + Возврат СтрШаблон("%1.%2.%3.%4.%5", ТестовыйМодуль.Метаданные.Имя, ТестовыйНабор.Имя, ТестовыйНабор.Режим, Тест.Имя, Тест.НомерВНаборе); + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 43186f649..fbb123003 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -303,16 +303,44 @@ Если ЭтоСобытиеПеред(ИмяСобытия) Тогда Ошибки = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); +#Если Клиент Тогда + СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); + ЮТКоллекции.ДополнитьМассив(Ошибки, СерверныеОшибки); +#КонецЕсли ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия); Иначе ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия); Ошибки = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); +#Если Клиент Тогда + СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); + ЮТКоллекции.ДополнитьМассив(Ошибки, СерверныеОшибки); +#КонецЕсли КонецЕсли; ЗарегистрироватьОшибкиСобытияИсполнения(ИмяСобытия, ОписаниеСобытия, Ошибки); КонецПроцедуры +Функция ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия) Экспорт + + Параметры = Новый Массив(3); + + Если ОписаниеСобытия.Модуль <> Неопределено Тогда + Параметры[0] = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(ОписаниеСобытия.Модуль); + КонецЕсли; + + Если ОписаниеСобытия.Набор <> Неопределено Тогда + Параметры[1] = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); + КонецЕсли; + + Если ОписаниеСобытия.Тест <> Неопределено Тогда + Параметры[2]= ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор, ОписаниеСобытия.Тест); + КонецЕсли; + + Возврат ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); + +КонецФункции + Функция ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, Подсистема, ПараметрыСобытия) Ошибки = Новый Массив(); From 196947a20644e50a7d75ec8fb7b3acf710f0f447 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 01:06:36 +0300 Subject: [PATCH 30/54] =?UTF-8?q?#337=20=D0=9F=D0=B5=D1=80=D0=B5=D1=80?= =?UTF-8?q?=D0=B0=D0=B1=D0=BE=D1=82=D0=BA=D0=B0=20=D0=B2=D1=8B=D0=B7=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=20=D1=81=D0=BE=D0=B1=D1=8B=D1=82=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 2 +- .../Module.bsl" | 141 ++++++++++++++---- .../Module.bsl" | 4 - 3 files changed, 113 insertions(+), 34 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2271b396d..ea6a8ed1d 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -125,7 +125,7 @@ ИначеЕсли ТипЗнч(Параметры) = Тип("Массив") Тогда Алгоритм = СтрШаблон("%1(%2)", ПолноеИмяМетода, СтрокаПараметровМетода(Параметры, ИмяМассиваПараметров)); Иначе - ВызватьИсключение СтрШаблон("Не верный тип параметров `%1` для вызова метода, должен быть массив", ТипЗнч(Параметры)); + ВызватьИсключение СтрШаблон("Не верный тип параметров `%1` для вызова метода (%2), должен быть массив", ТипЗнч(Параметры), ПолноеИмяМетода); КонецЕсли; Возврат Алгоритм; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index fbb123003..0097bcd95 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -85,9 +85,6 @@ // ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля Процедура ПередВсемиТестамиМодуля(ТестовыйМодуль) Экспорт - УстановитьКонтекстИсполнения(ТестовыйМодуль); - ЮТКонтекстСлужебный.УстановитьКонтекстМодуля(); - ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль); ВызватьОбработкуСобытияИсполненияТестов("ПередВсемиТестами", ОписаниеСобытия); @@ -100,9 +97,6 @@ // Набор - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов Процедура ПередТестовымНабором(ТестовыйМодуль, Набор) Экспорт - УстановитьКонтекстИсполнения(ТестовыйМодуль, Набор); - ЮТКонтекстСлужебный.УстановитьКонтекстНабораТестов(); - ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль, Набор); ВызватьОбработкуСобытияИсполненияТестов("ПередТестовымНабором", ОписаниеСобытия); @@ -116,15 +110,7 @@ // Тест - см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТеста Процедура ПередКаждымТестом(ТестовыйМодуль, Набор, Тест) Экспорт - // Установка контекста исполнения вызывается в см. ЮТИсполнительСлужебныйКлиентСервер.ПередКаждымТестом - ЮТКонтекстСлужебный.УстановитьКонтекстТеста(); - ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль, Набор, Тест); - - #Если Сервер ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда - ПолучитьСообщенияПользователю(Истина); - #КонецЕсли - ВызватьОбработкуСобытийИсполненияТестов(ЮТКоллекции.ЗначениеВМассиве("ПередКаждымТестом", "ПередТестом"), ОписаниеСобытия); КонецПроцедуры @@ -138,10 +124,7 @@ Процедура ПослеКаждогоТеста(ТестовыйМодуль, Набор, Тест) Экспорт ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль, Набор, Тест); - - ВызватьОбработкуСобытийИсполненияТестов(ЮТКоллекции.ЗначениеВМассиве("ПослеТеста", "ПослеКаждогоТеста"), ОписаниеСобытия); - - УстановитьКонтекстИсполнения(ТестовыйМодуль, Набор); + ВызватьОбработкуСобытийИсполненияТестов(ЮТКоллекции.ЗначениеВМассиве("ПослеКаждогоТеста", "ПослеТеста"), ОписаниеСобытия); КонецПроцедуры @@ -155,8 +138,6 @@ ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль, Набор); ВызватьОбработкуСобытияИсполненияТестов("ПослеТестовогоНабора", ОписаниеСобытия); - УстановитьКонтекстИсполнения(ТестовыйМодуль); - КонецПроцедуры // Обработчик события "ПослеВсехТестовМодуля" @@ -168,8 +149,6 @@ ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль); ВызватьОбработкуСобытияИсполненияТестов("ПослеВсехТестов", ОписаниеСобытия); - УстановитьКонтекстИсполнения(); - КонецПроцедуры // Перед выполнением тестов. @@ -302,6 +281,7 @@ Параметры = ЮТКоллекции.ЗначениеВМассиве(ОписаниеСобытия); Если ЭтоСобытиеПеред(ИмяСобытия) Тогда + ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); Ошибки = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); #Если Клиент Тогда СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); @@ -314,6 +294,7 @@ #Если Клиент Тогда СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); ЮТКоллекции.ДополнитьМассив(Ошибки, СерверныеОшибки); + ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); #КонецЕсли КонецЕсли; @@ -321,31 +302,80 @@ КонецПроцедуры -Функция ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия) Экспорт +Процедура ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия) - Параметры = Новый Массив(3); + Если ИмяСобытия = "ПередТестом" Или ИмяСобытия = "ПослеТеста" Тогда + Возврат; + КонецЕсли; + +#Если ВебКлиент Тогда + ЮТИсключения.МетодНеДоступен("ЮТСобытияСлужебный.ВыполнитьОбработкуСобытияИсполненияТеста"); +#Иначе + ИмяМетода = "Обработчик" + ИмяСобытия; + //@skip-check server-execution-safe-mode + Выполнить(ИмяМетода + "(ОписаниеСобытия)"); +#КонецЕсли + +КонецПроцедуры + +Функция ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия) + + ОписаниеСобытияСервер = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(Неопределено); Если ОписаниеСобытия.Модуль <> Неопределено Тогда - Параметры[0] = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(ОписаниеСобытия.Модуль); + ОписаниеСобытияСервер.Модуль = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(ОписаниеСобытия.Модуль); КонецЕсли; Если ОписаниеСобытия.Набор <> Неопределено Тогда - Параметры[1] = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); + ОписаниеСобытияСервер.Набор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); КонецЕсли; Если ОписаниеСобытия.Тест <> Неопределено Тогда - Параметры[2]= ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор, ОписаниеСобытия.Тест); + ОписаниеСобытияСервер.Тест = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор, ОписаниеСобытия.Тест); КонецЕсли; - Возврат ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); + Параметры = ЮТКоллекции.ЗначениеВМассиве(ИмяСобытия, ОписаниеСобытияСервер); + Возврат ЮТМетодыСлужебный.ВызватьФункциюКонфигурацииНаСервере("ЮТСобытияСлужебный", "СерверныйВызовОбработкиСобытияИсполненияТестов", Параметры); + +КонецФункции + +Функция СерверныйВызовОбработкиСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия) Экспорт + + АдресХранилища = ЮТКонтекстСлужебный.ЗначениеКонтекста("ХранилищеТестовыхСценариев"); + Хранилище = ПолучитьИзВременногоХранилища(АдресХранилища); + + Если ОписаниеСобытия.Модуль <> Неопределено Тогда + ОписаниеСобытия.Модуль = Хранилище[ОписаниеСобытия.Модуль]; + КонецЕсли; + + Если ОписаниеСобытия.Набор <> Неопределено Тогда + ОписаниеСобытия.Набор = Хранилище[ОписаниеСобытия.Набор]; + КонецЕсли; + + Если ОписаниеСобытия.Тест <> Неопределено Тогда + ОписаниеСобытия.Тест = Хранилище[ОписаниеСобытия.Тест]; + КонецЕсли; + + Если ЭтоСобытиеПеред(ИмяСобытия) Тогда + ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); + КонецЕсли; + + Результат = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", ЮТКоллекции.ЗначениеВМассиве(ОписаниеСобытия)); + + Если ЭтоСобытиеПосле(ИмяСобытия) Тогда + ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); + КонецЕсли; + + Возврат Результат; КонецФункции Функция ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, Подсистема, ПараметрыСобытия) + ОбработчикиСобытий = ЮТПодключаемыеМодулиСлужебный.ОбработчикиСобытий(Подсистема); Ошибки = Новый Массив(); - Для Каждого ИмяМодуля Из ЮТПодключаемыеМодулиСлужебный.ОбработчикиСобытий(Подсистема) Цикл + Для Каждого ИмяМодуля Из ОбработчикиСобытий Цикл Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда ПолноеИмяМетода = СтрШаблон("%1.%2", ИмяМодуля, ИмяСобытия); @@ -448,4 +478,57 @@ КонецФункции +#Область ОбработчикиСобытийИсполненияТестов + +//@skip-check module-unused-method +Процедура ОбработчикПередВсемиТестами(ОписаниеСобытия) + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль); + ЮТКонтекстСлужебный.УстановитьКонтекстМодуля(); + +КонецПроцедуры + +//@skip-check module-unused-method +Процедура ОбработчикПередТестовымНабором(ОписаниеСобытия) + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); + ЮТКонтекстСлужебный.УстановитьКонтекстНабораТестов(); + +КонецПроцедуры + +//@skip-check module-unused-method +Процедура ОбработчикПередКаждымТестом(ОписаниеСобытия) + +#Если Сервер ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда + ПолучитьСообщенияПользователю(Истина); +#КонецЕсли + + // Установка контекста исполнения вызывается в см. ЮТИсполнительСлужебныйКлиентСервер.ПередКаждымТестом + ЮТКонтекстСлужебный.УстановитьКонтекстТеста(); + +КонецПроцедуры + +//@skip-check module-unused-method +Процедура ОбработчикПослеКаждогоТеста(ОписаниеСобытия) + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); + +КонецПроцедуры + +//@skip-check module-unused-method +Процедура ОбработчикПослеТестовогоНабора(ОписаниеСобытия) + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль); + +КонецПроцедуры + +//@skip-check module-unused-method +Процедура ОбработчикПослеВсехТестов(ОписаниеСобытия) + + УстановитьКонтекстИсполнения(); + +КонецПроцедуры + +#КонецОбласти + #КонецОбласти diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ea8150efc..07ddb0ee1 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -123,11 +123,7 @@ СсылкаНеСуществует(Ссылки.Тест, "Тест"); КонецЕсли; -#Если Сервер Тогда СсылкаНеСуществует(Ссылки.ТестВызовСервера, "ТестВызовСервера"); -#Иначе - СсылкаСуществует(Ссылки.ТестВызовСервера, "ТестВызовСервера"); -#КонецЕсли КонецПроцедуры From 868713df7aa0466e3a55ffa4ea0da3a8aa928535 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 13:55:04 +0300 Subject: [PATCH 31/54] =?UTF-8?q?#337=20=D0=9F=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B8=20=D0=BF=D0=BE=20=D0=BB=D0=BE=D0=B3=D0=B8=D1=80=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BD=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 2 +- .../Module.bsl" | 4 +++- .../Module.bsl" | 7 ++++++- .../Module.bsl" | 6 ++++-- .../Module.bsl" | 2 +- .../Module.bsl" | 6 ++++++ .../Module.bsl" | 7 +++++++ .../Module.bsl" | 3 ++- .../Module.bsl" | 10 ++++++---- 9 files changed, 36 insertions(+), 11 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" index 94e2c1f0b..e83633770 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" @@ -110,7 +110,7 @@ Возврат ЮТСлужебныйПовторногоИспользования.ПодключитьКомпоненту(ИмяМакета, ИмяКомпоненты); КонецЕсли; - Если ЮТСтроки.ВерсияБольше(ЮТест.Окружение().ВерсияПлатформы, "8.3.20") Тогда + Если ЮТСтроки.ВерсияБольше(ЮТОкружениеСлужебныйКлиентСервер.ВерсияПлатформы(), "8.3.20") Тогда ТипПодключения = ЮТМетодыСлужебный.ВычислитьБезопасно("ТипПодключенияВнешнейКомпоненты.НеИзолированно"); //@skip-check many-actual-parameters Возврат ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native, ТипПодключения); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 3dfc94835..8a029781a 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -30,7 +30,7 @@ #Иначе КонтекстИсполнения = "Сервер"; #КонецЕсли - Текст = СтрШаблон("%1 [%2][%3]: %4", ЮТОбщий.ПредставлениеУниверсальнойДата(), КонтекстИсполнения, УровеньЛога, Сообщение); + Текст = СтрШаблон("%1 [%2][%3]: %4", ЮТОбщий.ПредставлениеУниверсальнойДата(, Истина), КонтекстИсполнения, УровеньЛога, Сообщение); #Если Клиент Тогда ЗаписатьСообщения(Контекст, ЮТКоллекции.ЗначениеВМассиве(Текст)); #Иначе @@ -328,6 +328,8 @@ ЮТОбщий.ВывестиВКонсоль(Сообщение); КонецЦикла; Исключение + ОшибкаЛогирования = ИнформацияОбОшибке(); + ЮТРегистрацияОшибок.ПредставлениеОшибки("Вывод сообщения в консоль", ОшибкаЛогирования); // Игнорируем ошибку КонецПопытки; #КонецЕсли diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ea6a8ed1d..ab83d3bc4 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -170,7 +170,12 @@ Выражение = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры); - Возврат ВычислитьБезопасно(Выражение, Параметры); + Если Безопасно Тогда + Возврат ВычислитьБезопасно(Выражение, Параметры); + Иначе + //@skip-check server-execution-safe-mode + Возврат Вычислить(Выражение); + КонецЕсли; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" index ce39b3845..e5e5e6cc2 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" @@ -140,7 +140,7 @@ КонецФункции -Функция ПредставлениеУниверсальнойДата(Знач УниверсальнаяДатаВМиллисекундах = Неопределено) Экспорт +Функция ПредставлениеУниверсальнойДата(Знач УниверсальнаяДатаВМиллисекундах = Неопределено, ТолькоВремя = Ложь) Экспорт Если УниверсальнаяДатаВМиллисекундах = Неопределено Тогда УниверсальнаяДатаВМиллисекундах = ТекущаяУниверсальнаяДатаВМиллисекундах(); @@ -149,7 +149,9 @@ Дата = '00010101' + УниверсальнаяДатаВМиллисекундах / 1000; Дата = МестноеВремя(Дата); - Возврат СтрШаблон("%1.%2", Дата, Формат(УниверсальнаяДатаВМиллисекундах % 1000, "ЧЦ=3; ЧН=000; ЧВН=; ЧГ=0;")); + ФорматДата = ?(ТолькоВремя, "ДФ='HH:mm:ss';", "ДФ='dd.MM.yyyy HH:mm:ss';"); + ФорматМиллисекунды = "ЧЦ=3; ЧН=000; ЧВН=; ЧГ=0;"; + Возврат СтрШаблон("%1.%2", Формат(Дата, ФорматДата), Формат(УниверсальнаяДатаВМиллисекундах % 1000, ФорматМиллисекунды)); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 70eea2a16..81d5ef6fe 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -128,7 +128,7 @@ ПолноеИмяМетода = ЮТСтроки.ДобавитьСтроку(ИмяМодуля, ИмяМетода, "."); - Возврат ЮТМетодыСлужебный.ВызватьФункцию(ПолноеИмяМетода, Параметры, Истина); + Возврат ЮТМетодыСлужебный.ВызватьФункцию(ПолноеИмяМетода, Параметры, Ложь); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index ba3621ae2..dd280357a 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -68,6 +68,12 @@ КонецФункции +Функция ВерсияПлатформы() Экспорт + + Возврат ЮТСлужебныйПовторногоИспользования.ВерсияПлатформы(); + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" index 01a195787..693f6199e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" @@ -91,4 +91,11 @@ КонецФункции +Функция ВерсияПлатформы() Экспорт + + СистемнаяИнформация = Новый СистемнаяИнформация(); + Возврат СистемнаяИнформация.ВерсияПриложения; + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 0097bcd95..2f17d506a 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -419,13 +419,14 @@ КонецЕсли; Ошибки = Новый Массив(); - Команда = СтрШаблон("%1.%2()", ИмяМодуля, ИмяСобытия); + Команда = СтрШаблон("%1.%2", ИмяМодуля, ИмяСобытия); Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2`", ИмяСобытия, Команда)); Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(Команда); Если Ошибка <> Неопределено Тогда + ЮТЛогирование.Ошибка(ЮТРегистрацияОшибок.ПредставлениеОшибки("Ошибка обработки события", Ошибка)); Ошибки.Добавить(Ошибка); КонецЕсли; diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 07ddb0ee1..8fbdfb7df 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -47,7 +47,7 @@ .ДобавитьТест("УдалениеТестовыхДанныхРегистрСведений") .СПараметрами(Период) .СПараметрами(Период) - .ДобавитьТест("НеУдалениеТестовыхДанныхВызовСервера") + .ДобавитьТест("УдалениеТестовыхДанныхВызовСервера") ; КонецПроцедуры @@ -71,7 +71,7 @@ КонецПроцедуры -Процедура НеУдалениеТестовыхДанныхВызовСервера() Экспорт +Процедура УдалениеТестовыхДанныхВызовСервера() Экспорт Ссылка = ПомощникТестированияВызовСервера.НовыйТовар(); ЮТест.Контекст().Значение("Ссылки").Вставить("ТестВызовСервера", Ссылка); @@ -119,11 +119,13 @@ Ссылки = ЮТест.Контекст().Значение("Ссылки"); СсылкаНеСуществует(Ссылки.Набор, "Набор"); - Если Ссылки.Тест <> Неопределено Тогда + Если Ссылки.Свойство("Тест") И Ссылки.Тест <> Неопределено Тогда СсылкаНеСуществует(Ссылки.Тест, "Тест"); КонецЕсли; - СсылкаНеСуществует(Ссылки.ТестВызовСервера, "ТестВызовСервера"); + Если Ссылки.Свойство("ТестВызовСервера") Тогда + СсылкаНеСуществует(Ссылки.ТестВызовСервера, "ТестВызовСервера"); + КонецЕсли; КонецПроцедуры From 0f8faf09fe90983aa485df85c18588b8ff022946 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 14:22:07 +0300 Subject: [PATCH 32/54] =?UTF-8?q?#337=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 2 +- .../Module.bsl" | 5 +++-- .../Module.bsl" | 7 +++++++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2f17d506a..d0e2baae9 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -294,8 +294,8 @@ #Если Клиент Тогда СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); ЮТКоллекции.ДополнитьМассив(Ошибки, СерверныеОшибки); - ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); #КонецЕсли + ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); КонецЕсли; ЗарегистрироватьОшибкиСобытияИсполнения(ИмяСобытия, ОписаниеСобытия, Ошибки); diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" index dea98a664..c284acc23 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -67,9 +67,10 @@ ЮТест.ОжидаетЧто(ЮТМетаданные.РегистрыДвиженийДокумента(ПредопределенноеЗначение("Документ.ПриходТовара.ПустаяСсылка"))) .ИмеетТип("Структура") .Заполнено() - .ИмеетДлину(2) + .ИмеетДлину(3) .Свойство("ТоварныеЗапасы").Равно("РегистрНакопления.ТоварныеЗапасы") - .Свойство("Взаиморасчеты").Равно("РегистрНакопления.Взаиморасчеты"); + .Свойство("Взаиморасчеты").Равно("РегистрНакопления.Взаиморасчеты") + .Свойство("Основной").Равно("РегистрБухгалтерии.Основной"); ЮТест.ОжидаетЧто(ЮТМетаданные) .Метод("РегистрыДвиженийДокумента").Параметр("РегистрНакопления.ТоварныеЗапасы") diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 8fbdfb7df..c94f4c824 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -115,6 +115,13 @@ КонецПроцедуры +Процедура ПослеТестовогоНабора() Экспорт + + Ссылки = ЮТест.Контекст().Значение("Ссылки"); + СсылкаСуществует(Ссылки.Набор, "Набор"); + +КонецПроцедуры + Процедура ПослеВсехТестов() Экспорт Ссылки = ЮТест.Контекст().Значение("Ссылки"); From 5d1dea09e711b5384440a7b89bfaa416f85e8479 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 14:23:55 +0300 Subject: [PATCH 33/54] =?UTF-8?q?#337=20=D0=92=D0=BA=D0=BB=D1=8E=D1=87?= =?UTF-8?q?=D0=B8=D0=BB=20=D0=BB=D0=BE=D0=B3=D0=B8=D1=80=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D0=B2=D1=8B=D0=BF=D0=BE=D0=BB=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/step-run-tests-linux.yml | 4 +--- .github/workflows/step-run-tests-windows.yml | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/step-run-tests-linux.yml b/.github/workflows/step-run-tests-linux.yml index 4731a9254..4db81fda2 100644 --- a/.github/workflows/step-run-tests-linux.yml +++ b/.github/workflows/step-run-tests-linux.yml @@ -135,9 +135,7 @@ jobs: "closeAfterTests": true, "exitCode": "exit-code.txt", "logging": { - "enable": false, - "console": true, - "file": "execute.log" + "console": true } } diff --git a/.github/workflows/step-run-tests-windows.yml b/.github/workflows/step-run-tests-windows.yml index ab48216b0..3cc6d65ef 100644 --- a/.github/workflows/step-run-tests-windows.yml +++ b/.github/workflows/step-run-tests-windows.yml @@ -83,9 +83,7 @@ jobs: "closeAfterTests": true, "exitCode": "exit-code.txt", "logging": { - "enable": false, - "console": true, - "file": "execute.log" + "console": true } } From 86791c0d5d819254c7da3462477bfc32d7725ab4 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 14:35:01 +0300 Subject: [PATCH 34/54] =?UTF-8?q?#337=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=BF=D0=B0=D0=B9=D0=BF=D0=BB=D0=B0=D0=B9=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/step-run-tests-windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/step-run-tests-windows.yml b/.github/workflows/step-run-tests-windows.yml index 3cc6d65ef..9c7427092 100644 --- a/.github/workflows/step-run-tests-windows.yml +++ b/.github/workflows/step-run-tests-windows.yml @@ -90,7 +90,7 @@ jobs: - name: set short_locale id: short_locale run: | - Write-Output "substring='${{ inputs.locale }}'.Substring(0, 2)" >> $Env:GITHUB_OUTPUT + Write-Output "substring=" + '${{ inputs.locale }}'.Substring(0, 2) >> $Env:GITHUB_OUTPUT - name: Test run: | From 86bec7a9379c23d9e154e613be2a14a41efff9cd Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 17:16:12 +0300 Subject: [PATCH 35/54] =?UTF-8?q?#337=20=D0=98=D0=B7=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B0=D0=BB=D0=B3=D0=BE=D1=80=D0=B8?= =?UTF-8?q?=D1=82=D0=BC=D0=B0=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D1=8B=20?= =?UTF-8?q?=D1=81=20=D1=81=D0=BE=D0=B1=D1=8B=D1=82=D0=B8=D1=8F=D0=BC=D0=B8?= =?UTF-8?q?=20=D0=B8=D1=81=D0=BF=D0=BE=D0=BB=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 31 +--- .../Module.bsl" | 2 +- .../Module.bsl" | 70 +++++++++ ...0\265\321\200\320\262\320\265\321\200.mdo" | 9 ++ .../Module.bsl" | 24 +++ .../Module.bsl" | 89 +++++++++++ ...0\265\321\200\320\262\320\265\321\200.mdo" | 11 ++ .../Module.bsl" | 2 +- .../Module.bsl" | 23 +++ .../Module.bsl" | 6 + .../Module.bsl" | 139 ++++-------------- .../src/Configuration/Configuration.mdo | 2 + ...0\265\321\200\320\262\320\270\321\201.mdo" | 1 + ...0\265\321\201\321\202\320\276\320\262.mdo" | 1 + 14 files changed, 265 insertions(+), 145 deletions(-) create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200.mdo" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 4c6f0886e..385241a57 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -29,8 +29,7 @@ // Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Результат прогона наборов тестов, структура набора см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов Функция ВыполнитьГруппуНаборовТестов(Знач ИдентификаторыТестовыхНаборов, Знач ИдентификаторТестовогоМодуля) Экспорт - АдресХранилища = ЮТКонтекстСлужебный.ЗначениеКонтекста("ХранилищеТестовыхСценариев"); - Хранилище = ПолучитьИзВременногоХранилища(АдресХранилища); + Хранилище = ЮТИсполнительСлужебныйСервер.СерверноеХранилищеТестов(); ТестовыйМодуль = Хранилище[ИдентификаторТестовогоМодуля]; Наборы = Новый Массив(); @@ -49,33 +48,7 @@ // ТестовыеМодули - Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля Процедура СохранитьИнформациюОТестовыхСценариях(Знач ТестовыеМодули) Экспорт - Хранилище = Новый Соответствие(); - - Для Каждого Модуль Из ТестовыеМодули Цикл - - Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(Модуль); - Хранилище.Вставить(Идентификатор, Модуль); - - Для Каждого Набор Из Модуль.НаборыТестов Цикл - - Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(Модуль, Набор); - Хранилище.Вставить(Идентификатор, Набор); - - Для Каждого Тест Из Набор.Тесты Цикл - - Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(Модуль, Набор, Тест); - Хранилище.Вставить(Идентификатор, Тест); - - КонецЦикла; - - КонецЦикла; - - Модуль.НаборыТестов = Новый Массив; // Уже не нужно, поэтому очистим - - КонецЦикла; - - АдресХранилища = ПоместитьВоВременноеХранилище(Хранилище, Новый УникальныйИдентификатор()); - ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста("ХранилищеТестовыхСценариев", АдресХранилища); + ЮТИсполнительСлужебныйСервер.СохранитьИнформациюОТестовыхСценариях(ТестовыеМодули); КонецПроцедуры diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 39477a6ee..7e41b254d 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -143,7 +143,7 @@ Процедура ПередКаждымТестом(ТестовыйМодуль, Набор, Тест, ВТранзакции) - ЮТСобытияСлужебный.УстановитьКонтекстИсполнения(ТестовыйМодуль, Набор, Тест); + ЮТКонтекстИсполненияСлужебныйКлиентСервер.УстановитьКонтекстИсполнения(ТестовыйМодуль, Набор, Тест); #Если Сервер ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда ВТранзакции = ЮТНастройкиВыполнения.ВТранзакции(); Если ВТранзакции Тогда diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" new file mode 100644 index 000000000..72e424900 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -0,0 +1,70 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +Функция СерверноеХранилищеТестов() Экспорт + + АдресХранилища = ЮТКонтекстСлужебный.ЗначениеКонтекста(ИмяКонтекстаХранилище()); + Возврат ПолучитьИзВременногоХранилища(АдресХранилища); + +КонецФункции + +Процедура СохранитьИнформациюОТестовыхСценариях(ТестовыеМодули) Экспорт + + Хранилище = Новый Соответствие(); + + Для Каждого Модуль Из ТестовыеМодули Цикл + + Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(Модуль); + Хранилище.Вставить(Идентификатор, Модуль); + + Для Каждого Набор Из Модуль.НаборыТестов Цикл + + Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(Модуль, Набор); + Хранилище.Вставить(Идентификатор, Набор); + + Для Каждого Тест Из Набор.Тесты Цикл + + Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(Модуль, Набор, Тест); + Хранилище.Вставить(Идентификатор, Тест); + + КонецЦикла; + + КонецЦикла; + + Модуль.НаборыТестов = Новый Массив; // Уже не нужно, поэтому очистим + + КонецЦикла; + + АдресХранилища = ПоместитьВоВременноеХранилище(Хранилище, Новый УникальныйИдентификатор()); + ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(ИмяКонтекстаХранилище(), АдресХранилища); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Функция ИмяКонтекстаХранилище() + + Возврат "ХранилищеТестовыхСценариев"; + +КонецФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200.mdo" new file mode 100644 index 000000000..e6d52a148 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200.mdo" @@ -0,0 +1,9 @@ + + + ЮТИсполнительСлужебныйСервер + + ru + Исполнитель служебный сервер + + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index 942853ee0..99a62fbdc 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -470,6 +470,30 @@ КонецФункции +// Возвращает массив с обратной последовательностью элементов +// +// Параметры: +// Значения - Массив Из Произвольный +// +// Возвращаемое значение: +// Массив Из Произвольный - Перевернутый массив +Функция ОбратныйПорядок(Значения) Экспорт + + Если НЕ ЗначениеЗаполнено(Значения) Тогда + Возврат Новый Массив; + КонецЕсли; + + ВГраница = Значения.ВГраница(); + Результат = Новый Массив(Значения.Количество()); + + Для Инд = 0 По ВГраница Цикл + Результат[Инд] = Значения[ВГраница - Инд]; + КонецЦикла; + + Возврат Результат; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" new file mode 100644 index 000000000..3e17618d3 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -0,0 +1,89 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +Процедура УстановитьКонтекстИсполнения(ТестовыйМодуль = Неопределено, Набор = Неопределено, Тест = Неопределено) Экспорт + + Уровни = ЮТФабрика.УровниИсполнения(); + КонтекстИсполнения = ЮТКонтекстСлужебный.КонтекстИсполнения(); + + КонтекстИсполнения.Модуль = ТестовыйМодуль; + КонтекстИсполнения.Набор = Набор; + КонтекстИсполнения.Тест = Тест; + + Если Тест <> Неопределено Тогда + КонтекстИсполнения.Уровень = Уровни.Тест; + ИначеЕсли Набор <> Неопределено Тогда + КонтекстИсполнения.Уровень = Уровни.НаборТестов; + ИначеЕсли ТестовыйМодуль <> Неопределено Тогда + КонтекстИсполнения.Уровень = Уровни.Модуль; + Иначе + КонтекстИсполнения.Уровень = Неопределено; + КонецЕсли; + +КонецПроцедуры + +Процедура ПередВсемиТестами(ОписаниеСобытия) Экспорт + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль); + ЮТКонтекстСлужебный.УстановитьКонтекстМодуля(); + +КонецПроцедуры + +Процедура ПередТестовымНабором(ОписаниеСобытия) Экспорт + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); + ЮТКонтекстСлужебный.УстановитьКонтекстНабораТестов(); + +КонецПроцедуры + +Процедура ПередКаждымТестом(ОписаниеСобытия) Экспорт + +#Если Сервер ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда + ПолучитьСообщенияПользователю(Истина); +#КонецЕсли + + // Установка контекста исполнения вызывается в см. ЮТИсполнительСлужебныйКлиентСервер.ПередКаждымТестом + ЮТКонтекстСлужебный.УстановитьКонтекстТеста(); + +КонецПроцедуры + +Процедура ПослеКаждогоТеста(ОписаниеСобытия) Экспорт + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); + +КонецПроцедуры + +Процедура ПослеТестовогоНабора(ОписаниеСобытия) Экспорт + + УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль); + +КонецПроцедуры + +Процедура ПослеВсехТестов(ОписаниеСобытия) Экспорт + + УстановитьКонтекстИсполнения(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" new file mode 100644 index 000000000..08614cf3c --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200.mdo" @@ -0,0 +1,11 @@ + + + ЮТКонтекстИсполненияСлужебныйКлиентСервер + + ru + Контекст исполнения служебный клиент сервер + + true + true + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 4fc92c72f..f48dbde80 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -36,7 +36,7 @@ Клиентские = Истина; #КонецЕсли - Возврат ЮТПодключаемыеМодулиСлужебныйВызовСервера.ОбработчикиСобытий(Подсистема, Серверные, Клиентские); + Возврат ЮТСлужебныйПовторногоИспользования.ОбработчикиСобытий(Подсистема, Серверные, Клиентские); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 56697ddff..c1ddf59f8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -34,6 +34,9 @@ КонецЦикла; + // Изначально планировалось на основе состава подсистем, но он не позволяет задать четкий порядок элементов. + ПриоритезироватьОбработчикиСобытий(ГруппаОбработчиков, Модули); + Возврат Модули; КонецФункции @@ -103,4 +106,24 @@ КонецФункции +Процедура ПриоритезироватьОбработчикиСобытий(ГруппаОбработчиков, Модули) + + Если ГруппаОбработчиков = "ИсполнениеТестов" Тогда + Порядок = "ЮТЛогированиеСлужебный, ЮТИсполнительСлужебныйКлиент, ЮТКонтекстИсполненияСлужебныйКлиентСервер"; + Иначе + Возврат; + КонецЕсли; + + ЭлементыПорядка = ЮТКоллекции.ОбратныйПорядок(ЮТСтроки.РазделитьСтроку(Порядок, ",")); + + Для Каждого Элемент Из ЭлементыПорядка Цикл + Индекс = Модули.Найти(Элемент); + Если Индекс <> Неопределено Тогда + Модули.Удалить(Индекс); + Модули.Вставить(0, Элемент); + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" index 693f6199e..902f02933 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\276\321\200\320\275\320\276\320\263\320\276\320\230\321\201\320\277\320\276\320\273\321\214\320\267\320\276\320\262\320\260\320\275\320\270\321\217/Module.bsl" @@ -98,4 +98,10 @@ КонецФункции +Функция ОбработчикиСобытий(Знач Подсистема, Знач Серверные = Истина, Знач Клиентские = Истина) Экспорт + + Возврат ЮТПодключаемыеМодулиСлужебныйВызовСервера.ОбработчикиСобытий(Подсистема, Серверные, Клиентские); + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index d0e2baae9..1c418d78b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -236,27 +236,6 @@ #Область СлужебныеПроцедурыИФункции -Процедура УстановитьКонтекстИсполнения(ТестовыйМодуль = Неопределено, Набор = Неопределено, Тест = Неопределено) Экспорт - - Уровни = ЮТФабрика.УровниИсполнения(); - КонтекстИсполнения = ЮТКонтекстСлужебный.КонтекстИсполнения(); - - КонтекстИсполнения.Модуль = ТестовыйМодуль; - КонтекстИсполнения.Набор = Набор; - КонтекстИсполнения.Тест = Тест; - - Если Тест <> Неопределено Тогда - КонтекстИсполнения.Уровень = Уровни.Тест; - ИначеЕсли Набор <> Неопределено Тогда - КонтекстИсполнения.Уровень = Уровни.НаборТестов; - ИначеЕсли ТестовыйМодуль <> Неопределено Тогда - КонтекстИсполнения.Уровень = Уровни.Модуль; - Иначе - КонтекстИсполнения.Уровень = Неопределено; - КонецЕсли; - -КонецПроцедуры - Процедура ВызватьОбработкуСобытийИсполненияТестов(События, ОписаниеСобытия) Для ы = 0 По События.ВГраница() Цикл @@ -281,98 +260,83 @@ Параметры = ЮТКоллекции.ЗначениеВМассиве(ОписаниеСобытия); Если ЭтоСобытиеПеред(ИмяСобытия) Тогда - ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); + Ошибки = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); #Если Клиент Тогда СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); ЮТКоллекции.ДополнитьМассив(Ошибки, СерверныеОшибки); #КонецЕсли ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия); + Иначе + ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия); Ошибки = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); #Если Клиент Тогда СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); ЮТКоллекции.ДополнитьМассив(Ошибки, СерверныеОшибки); #КонецЕсли - ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); + КонецЕсли; ЗарегистрироватьОшибкиСобытияИсполнения(ИмяСобытия, ОписаниеСобытия, Ошибки); КонецПроцедуры -Процедура ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия) - - Если ИмяСобытия = "ПередТестом" Или ИмяСобытия = "ПослеТеста" Тогда - Возврат; - КонецЕсли; - -#Если ВебКлиент Тогда - ЮТИсключения.МетодНеДоступен("ЮТСобытияСлужебный.ВыполнитьОбработкуСобытияИсполненияТеста"); -#Иначе - ИмяМетода = "Обработчик" + ИмяСобытия; - //@skip-check server-execution-safe-mode - Выполнить(ИмяМетода + "(ОписаниеСобытия)"); -#КонецЕсли - -КонецПроцедуры - Функция ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия) - ОписаниеСобытияСервер = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(Неопределено); + Параметры = Новый Массив(4); + Параметры[0] = ИмяСобытия; Если ОписаниеСобытия.Модуль <> Неопределено Тогда - ОписаниеСобытияСервер.Модуль = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(ОписаниеСобытия.Модуль); + Параметры[1] = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(ОписаниеСобытия.Модуль); КонецЕсли; Если ОписаниеСобытия.Набор <> Неопределено Тогда - ОписаниеСобытияСервер.Набор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); + Параметры[2] = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); КонецЕсли; Если ОписаниеСобытия.Тест <> Неопределено Тогда - ОписаниеСобытияСервер.Тест = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор, ОписаниеСобытия.Тест); + Параметры[3] = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТеста(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор, ОписаниеСобытия.Тест); КонецЕсли; - Параметры = ЮТКоллекции.ЗначениеВМассиве(ИмяСобытия, ОписаниеСобытияСервер); Возврат ЮТМетодыСлужебный.ВызватьФункциюКонфигурацииНаСервере("ЮТСобытияСлужебный", "СерверныйВызовОбработкиСобытияИсполненияТестов", Параметры); КонецФункции -Функция СерверныйВызовОбработкиСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия) Экспорт +#Если Сервер Тогда +Функция СерверныйВызовОбработкиСобытияИсполненияТестов(ИмяСобытия, ИдентификаторМодуля = Неопределено, ИдентификаторНабора = Неопределено, ИдентификаторТеста = Неопределено) Экспорт - АдресХранилища = ЮТКонтекстСлужебный.ЗначениеКонтекста("ХранилищеТестовыхСценариев"); - Хранилище = ПолучитьИзВременногоХранилища(АдресХранилища); + Хранилище = ЮТИсполнительСлужебныйСервер.СерверноеХранилищеТестов(); + ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(Неопределено); - Если ОписаниеСобытия.Модуль <> Неопределено Тогда - ОписаниеСобытия.Модуль = Хранилище[ОписаниеСобытия.Модуль]; + Если ИдентификаторМодуля <> Неопределено Тогда + ОписаниеСобытия.Модуль = Хранилище[ИдентификаторМодуля]; КонецЕсли; - Если ОписаниеСобытия.Набор <> Неопределено Тогда - ОписаниеСобытия.Набор = Хранилище[ОписаниеСобытия.Набор]; + Если ИдентификаторНабора <> Неопределено Тогда + ОписаниеСобытия.Набор = Хранилище[ИдентификаторНабора]; КонецЕсли; - Если ОписаниеСобытия.Тест <> Неопределено Тогда - ОписаниеСобытия.Тест = Хранилище[ОписаниеСобытия.Тест]; - КонецЕсли; - - Если ЭтоСобытиеПеред(ИмяСобытия) Тогда - ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); + Если ИдентификаторТеста <> Неопределено Тогда + ОписаниеСобытия.Тест = Хранилище[ИдентификаторТеста]; КонецЕсли; Результат = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", ЮТКоллекции.ЗначениеВМассиве(ОписаниеСобытия)); - Если ЭтоСобытиеПосле(ИмяСобытия) Тогда - ВыполнитьОбработкуСобытияИсполненияТеста(ИмяСобытия, ОписаниеСобытия); - КонецЕсли; - Возврат Результат; КонецФункции +#КонецЕсли Функция ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, Подсистема, ПараметрыСобытия) ОбработчикиСобытий = ЮТПодключаемыеМодулиСлужебный.ОбработчикиСобытий(Подсистема); + + Если ЭтоСобытиеПосле(ИмяСобытия) Тогда + ОбработчикиСобытий = ЮТКоллекции.ОбратныйПорядок(ОбработчикиСобытий); + КонецЕсли; + Ошибки = Новый Массив(); Для Каждого ИмяМодуля Из ОбработчикиСобытий Цикл @@ -479,57 +443,4 @@ КонецФункции -#Область ОбработчикиСобытийИсполненияТестов - -//@skip-check module-unused-method -Процедура ОбработчикПередВсемиТестами(ОписаниеСобытия) - - УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль); - ЮТКонтекстСлужебный.УстановитьКонтекстМодуля(); - -КонецПроцедуры - -//@skip-check module-unused-method -Процедура ОбработчикПередТестовымНабором(ОписаниеСобытия) - - УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); - ЮТКонтекстСлужебный.УстановитьКонтекстНабораТестов(); - -КонецПроцедуры - -//@skip-check module-unused-method -Процедура ОбработчикПередКаждымТестом(ОписаниеСобытия) - -#Если Сервер ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда - ПолучитьСообщенияПользователю(Истина); -#КонецЕсли - - // Установка контекста исполнения вызывается в см. ЮТИсполнительСлужебныйКлиентСервер.ПередКаждымТестом - ЮТКонтекстСлужебный.УстановитьКонтекстТеста(); - -КонецПроцедуры - -//@skip-check module-unused-method -Процедура ОбработчикПослеКаждогоТеста(ОписаниеСобытия) - - УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль, ОписаниеСобытия.Набор); - -КонецПроцедуры - -//@skip-check module-unused-method -Процедура ОбработчикПослеТестовогоНабора(ОписаниеСобытия) - - УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль); - -КонецПроцедуры - -//@skip-check module-unused-method -Процедура ОбработчикПослеВсехТестов(ОписаниеСобытия) - - УстановитьКонтекстИсполнения(); - -КонецПроцедуры - -#КонецОбласти - #КонецОбласти diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index 31482c527..c2052d638 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -73,12 +73,14 @@ CommonModule.ЮТИсполнительСлужебныйГлобальный CommonModule.ЮТИсполнительСлужебныйКлиент CommonModule.ЮТИсполнительСлужебныйКлиентСервер + CommonModule.ЮТИсполнительСлужебныйСервер CommonModule.ЮТКоллекции CommonModule.ЮТКомпоненты CommonModule.ЮТКомпонентыСлужебныйВызовСервера CommonModule.ЮТКомпонентыСлужебныйКлиент CommonModule.ЮТКонструкторВариантов CommonModule.ЮТКонструкторТестовыхДанныхСлужебный + CommonModule.ЮТКонтекстИсполненияСлужебныйКлиентСервер CommonModule.ЮТКонтекстСлужебный CommonModule.ЮТКонтекстСлужебныйВызовСервера CommonModule.ЮТКонтекстСлужебныйКлиент diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" index ccb510e78..49ce33575 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" @@ -17,6 +17,7 @@ CommonModule.ЮТКомпоненты CommonModule.ЮТКомпонентыСлужебныйВызовСервера CommonModule.ЮТКомпонентыСлужебныйКлиент + CommonModule.ЮТКонтекстИсполненияСлужебныйКлиентСервер CommonModule.ЮТЛогированиеСлужебныйВызовСервера CommonModule.ЮТЛогИсполненияТестаСлужебный CommonModule.ЮТЛокальСлужебный diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262.mdo" index cabd5580a..64a73d8b3 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262/\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\276\320\262.mdo" @@ -8,6 +8,7 @@ true CommonModule.МокитоСлужебный CommonModule.ЮТИсполнительСлужебныйКлиент + CommonModule.ЮТКонтекстИсполненияСлужебныйКлиентСервер CommonModule.ЮТТестовыеДанныеСлужебный CommonModule.ЮТУтверждения Subsystem.ЮТПодключаемыеМодули.Subsystem.ОбработчикиСобытий From ca5dc9372a7018c5d5a712069cdd28cf02a20e61 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 17:23:48 +0300 Subject: [PATCH 36/54] =?UTF-8?q?#337=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=BF=D0=B0=D0=B9=D0=BF=D0=BB=D0=B0=D0=B9=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/step-run-tests-windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/step-run-tests-windows.yml b/.github/workflows/step-run-tests-windows.yml index 9c7427092..8a4dc6e6f 100644 --- a/.github/workflows/step-run-tests-windows.yml +++ b/.github/workflows/step-run-tests-windows.yml @@ -90,7 +90,7 @@ jobs: - name: set short_locale id: short_locale run: | - Write-Output "substring=" + '${{ inputs.locale }}'.Substring(0, 2) >> $Env:GITHUB_OUTPUT + Write-Output "substring='$(${{ inputs.locale }}'.Substring(0, 2))" >> $Env:GITHUB_OUTPUT - name: Test run: | From 9e3024e315d683afdb33b8b065001547ebe09876 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 18:06:29 +0300 Subject: [PATCH 37/54] =?UTF-8?q?#337=20=D0=9F=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B7=D0=B0=D0=BC=D0=B5=D1=87=D0=B0=D0=BD=D0=B8=D0=B9?= =?UTF-8?q?,=20=D1=80=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE=D1=80=D0=B8?= =?UTF-8?q?=D0=BD=D0=B3=20=D0=B2=D1=8B=D0=B7=D0=BE=D0=B2=D0=B0=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D0=B8=D0=B7=D0=B2=D0=BE=D0=BB=D1=8C=D0=BD=D1=8B?= =?UTF-8?q?=D1=85=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/step-run-tests-windows.yml | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 4 +- .../Module.bsl" | 6 +- .../Module.bsl" | 2 +- .../Module.bsl" | 115 ++++++++++++------ .../Module.bsl" | 12 +- .../Module.bsl" | 4 +- .../Module.bsl" | 2 +- .../Module.bsl" | 4 +- .../Module.bsl" | 18 +-- .../Module.bsl" | 53 -------- ...0\265\321\201\321\202\320\276\320\262.mdo" | 9 -- .../Module.bsl" | 26 ++-- .../Module.bsl" | 9 +- .../src/Configuration/Configuration.mdo | 1 - .../Module.bsl" | 2 +- 17 files changed, 133 insertions(+), 138 deletions(-) delete mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" delete mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" diff --git a/.github/workflows/step-run-tests-windows.yml b/.github/workflows/step-run-tests-windows.yml index 8a4dc6e6f..6ec43a942 100644 --- a/.github/workflows/step-run-tests-windows.yml +++ b/.github/workflows/step-run-tests-windows.yml @@ -90,7 +90,7 @@ jobs: - name: set short_locale id: short_locale run: | - Write-Output "substring='$(${{ inputs.locale }}'.Substring(0, 2))" >> $Env:GITHUB_OUTPUT + Write-Output "substring=$('${{ inputs.locale }}'.Substring(0, 2))" >> $Env:GITHUB_OUTPUT - name: Test run: | diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 4c853644f..7f2e2d8c4 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -21,7 +21,7 @@ Функция РазрешитьЗависимость(Знач ОписаниеЗависимости) Экспорт Попытка - Результат = ЮТМетодыСлужебный.ВызватьФункцию(ОписаниеЗависимости.МетодРеализации, ОписаниеЗависимости.Параметры, Ложь); + Результат = ЮТМетодыСлужебный.ВызватьФункциюКонфигурации(ОписаниеЗависимости.МетодРеализации, , ОписаниеЗависимости.Параметры, Ложь); Исключение Результат = ЮТФабрикаСлужебный.РезультатРазрешенияЗависимости(); Результат.Ошибка = ИнформацияОбОшибке(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 29da51f9b..204a8369f 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -146,7 +146,7 @@ ПараметрыМетода = ЮТКоллекции.СкопироватьМассив(ОписаниеЗависимости.Параметры); ПараметрыМетода.Добавить(Обработчик); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ИмяМетода, ПараметрыМетода); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ИмяМетода, , ПараметрыМетода); Если Ошибка <> Неопределено Тогда Результат = ЮТФабрикаСлужебный.РезультатРазрешенияЗависимости(); @@ -164,7 +164,7 @@ Если ОписаниеЗависимости.ОбработкаНаСервере Тогда Результат = ЮТЗависимостиСлужебныйВызовСервера.РазрешитьЗависимость(ОписаниеЗависимости); Иначе - Результат = ЮТМетодыСлужебный.ВызватьФункцию(ОписаниеЗависимости.МетодРеализации, ОписаниеЗависимости.Параметры, Ложь); + Результат = ЮТМетодыСлужебный.ВызватьФункциюКонфигурации(ОписаниеЗависимости.МетодРеализации, , ОписаниеЗависимости.Параметры, Ложь); КонецЕсли; Исключение diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 385241a57..c7eeda147 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -22,11 +22,11 @@ // Это обертка для прогона на сервере // // Параметры: -// ИдентификаторыТестовыхНаборов - Массив из Строка -// ИдентификаторТестовогоМодуля - Строка +// ИдентификаторыТестовыхНаборов - Массив из Строка - Идентификаторы тестовых наборов, см. ЮТИсполнительСлужебныйСервер.СерверноеХранилищеТестов +// ИдентификаторТестовогоМодуля - Строка - Идентификатор тестового модуля, см. ЮТИсполнительСлужебныйСервер.СерверноеХранилищеТестов // // Возвращаемое значение: -// Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Результат прогона наборов тестов, структура набора см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов +// Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Результат прогона наборов тестов Функция ВыполнитьГруппуНаборовТестов(Знач ИдентификаторыТестовыхНаборов, Знач ИдентификаторТестовогоМодуля) Экспорт Хранилище = ЮТИсполнительСлужебныйСервер.СерверноеХранилищеТестов(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 7e41b254d..19020deb5 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -202,7 +202,7 @@ СтатусыИсполненияТеста = ЮТФабрика.СтатусыИсполненияТеста(); Тест.Статус = СтатусыИсполненияТеста.Исполнение; - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(Тест.ПолноеИмяМетода, Тест.Параметры); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(Тест.ПолноеИмяМетода, , Тест.Параметры); Если Ошибка <> Неопределено Тогда ЮТРегистрацияОшибокСлужебный.ЗарегистрироватьОшибкуВыполненияТеста(Тест, Ошибка); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ab83d3bc4..608dcb1f8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -60,7 +60,7 @@ ПолноеИмяМетода = СтрШаблон("%1.%2", ИмяМодуля, ИмяМетода); Алгоритм = ПолноеИмяМетода + "(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)"; - Ошибка = ВыполнитьМетод(Алгоритм); + Ошибка = ВыполнитьВыражение(Алгоритм); ТипОшибки = ЮТРегистрацияОшибокСлужебный.ТипОшибки(Ошибка, ПолноеИмяМетода); Возврат ТипОшибки = ЮТФабрикаСлужебный.ТипыОшибок().МногоПараметров; @@ -85,7 +85,7 @@ ПолноеИмяМетода = СтрШаблон("Объект.%1", ИмяМетода); Алгоритм = ПолноеИмяМетода + "(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)"; - Ошибка = ВыполнитьМетод(Алгоритм, , Объект); + Ошибка = ВыполнитьВыражение(Алгоритм, , Объект); ТипОшибки = ЮТРегистрацияОшибокСлужебный.ТипОшибки(Ошибка, ПолноеИмяМетода); Возврат ТипОшибки = ЮТФабрикаСлужебный.ТипыОшибок().МногоПараметров; @@ -97,22 +97,19 @@ #Область ВызовМетодов -Функция ВыполнитьМетод(ПолноеИмяМетода, Параметры = Неопределено, Объект = Неопределено) Экспорт +Функция ВыполнитьМетодОбъекта(Объект, ИмяМетода, Параметры = Неопределено) Экспорт -#Если ВебКлиент Тогда - ВызватьИсключение ЮТИсключения.МетодНеДоступен("ЮТОбщий.ВыполнитьМетод"); -#Иначе - Алгоритм = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры, "Параметры"); + Выражение = "Объект." + СтрокаВызоваМетода(ИмяМетода, Параметры, "Параметры"); + Возврат ВыполнитьВыражение(Выражение, Параметры, Объект, Ложь); - Попытка - //@skip-check server-execution-safe-mode - Выполнить(Алгоритм); - Исключение - Возврат ИнформацияОбОшибке(); - КонецПопытки; +КонецФункции + +Функция ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяМетода, Параметры = Неопределено) Экспорт - Возврат Неопределено; -#КонецЕсли + ПолноеИмяМетода = ЮТСтроки.ДобавитьСтроку(ИмяМодуля, ИмяМетода, "."); + Выражение = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры, "Параметры"); + + Возврат ВыполнитьВыражение(Выражение, Параметры, , Ложь); КонецФункции @@ -134,21 +131,7 @@ Функция ВычислитьБезопасно(Выражение, Параметры = Неопределено) Экспорт -#Если НЕ ВебКлиент И НЕ ТонкийКлиент Тогда - УстановитьБезопасныйРежим(Истина); - Попытка - Значение = Вычислить(Выражение); - Исключение - УстановитьБезопасныйРежим(Ложь); - ВызватьИсключение; - КонецПопытки; - - УстановитьБезопасныйРежим(Ложь); -#Иначе - Значение = Вычислить(Выражение); -#КонецЕсли - - Возврат Значение; + Возврат ВычислитьВыражение(Выражение, Параметры, Истина); КонецФункции @@ -166,16 +149,19 @@ КонецФункции -Функция ВызватьФункцию(ПолноеИмяМетода, Параметры, Безопасно = Истина) Экспорт +Функция ВызватьФункциюОбъекта(Объект, ИмяМетода, Параметры = Неопределено) Экспорт + + Выражение = "Объект." + СтрокаВызоваМетода(ИмяМетода, Параметры); + Возврат ВычислитьВыражение(Выражение, Параметры); + +КонецФункции + +Функция ВызватьФункциюКонфигурации(ИмяМодуля, ИмяМетода, Параметры, Безопасно = Истина) Экспорт + ПолноеИмяМетода = ЮТСтроки.ДобавитьСтроку(ИмяМодуля, ИмяМетода, "."); Выражение = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры); - Если Безопасно Тогда - Возврат ВычислитьБезопасно(Выражение, Параметры); - Иначе - //@skip-check server-execution-safe-mode - Возврат Вычислить(Выражение); - КонецЕсли; + Возврат ВычислитьВыражение(Выражение, Параметры, Безопасно); КонецФункции @@ -185,6 +171,61 @@ #Область СлужебныеПроцедурыИФункции +Функция ВыполнитьВыражение(Выражение, Параметры = Неопределено, Объект = Неопределено, Безопасно = Истина) + + // BSLLS:ExecuteExternalCodeInCommonModule-off +#Если ВебКлиент Тогда + ВызватьИсключение ЮТИсключения.МетодНеДоступен("ЮТМетодыСлужебный.ВыполнитьВыражение"); +#КонецЕсли + + Попытка +#Если ТонкийКлиент Тогда + Выполнить(Выражение); +#ИначеЕсли НЕ ВебКлиент Тогда + Если Безопасно Тогда + УстановитьБезопасныйРежим(Истина); + Выполнить(Выражение); + Иначе + //@skip-check server-execution-safe-mode + Выполнить(Выражение); + КонецЕсли; +#КонецЕсли + Исключение + Возврат ИнформацияОбОшибке(); + КонецПопытки; + + Возврат Неопределено; + // BSLLS:ExecuteExternalCodeInCommonModule-on + +КонецФункции + +Функция ВычислитьВыражение(Выражение, Параметры = Неопределено, Безопасно = Истина) + + // BSLLS:ExecuteExternalCodeInCommonModule-off + Если НЕ Безопасно Тогда + //@skip-check server-execution-safe-mode + Возврат Вычислить(Выражение); + КонецЕсли; + +#Если НЕ ВебКлиент И НЕ ТонкийКлиент Тогда + УстановитьБезопасныйРежим(Истина); + Попытка + Значение = Вычислить(Выражение); + Исключение + УстановитьБезопасныйРежим(Ложь); + ВызватьИсключение; + КонецПопытки; + + УстановитьБезопасныйРежим(Ложь); +#Иначе + Значение = Вычислить(Выражение); +#КонецЕсли + + Возврат Значение; + // BSLLS:ExecuteExternalCodeInCommonModule-on + +КонецФункции + Функция ВерсияЗапретаИспользованияУстаревших() Возврат "23.01"; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" index e5e5e6cc2..60a97c1c6 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" @@ -146,12 +146,14 @@ УниверсальнаяДатаВМиллисекундах = ТекущаяУниверсальнаяДатаВМиллисекундах(); КонецЕсли; - Дата = '00010101' + УниверсальнаяДатаВМиллисекундах / 1000; + Множитель = 1000; + + Дата = '00010101' + УниверсальнаяДатаВМиллисекундах / Множитель; Дата = МестноеВремя(Дата); ФорматДата = ?(ТолькоВремя, "ДФ='HH:mm:ss';", "ДФ='dd.MM.yyyy HH:mm:ss';"); ФорматМиллисекунды = "ЧЦ=3; ЧН=000; ЧВН=; ЧГ=0;"; - Возврат СтрШаблон("%1.%2", Формат(Дата, ФорматДата), Формат(УниверсальнаяДатаВМиллисекундах % 1000, ФорматМиллисекунды)); + Возврат СтрШаблон("%1.%2", Формат(Дата, ФорматДата), Формат(УниверсальнаяДатаВМиллисекундах % Множитель, ФорматМиллисекунды)); КонецФункции @@ -715,7 +717,11 @@ Функция ВыполнитьМетод(ПолноеИмяМетода, Параметры = Неопределено, Объект = Неопределено) Экспорт ЮТМетодыСлужебный.ВызовУстаревшегоМетода("ЮТОбщий.ВыполнитьМетод", Неопределено, "24.03"); - Возврат ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода, Параметры, Объект); + Если Объект <> Неопределено Тогда + Возврат ЮТМетодыСлужебный.ВыполнитьМетодОбъекта(Объект, ПолноеИмяМетода, Параметры); + Иначе + Возврат ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ПолноеИмяМетода, , Параметры); + КонецЕсли; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 81d5ef6fe..cbf2e2068 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -126,9 +126,7 @@ Функция ВызватьФункциюКонфигурацииНаСервере(Знач ИмяМодуля, Знач ИмяМетода, Знач Параметры = Неопределено) Экспорт - ПолноеИмяМетода = ЮТСтроки.ДобавитьСтроку(ИмяМодуля, ИмяМетода, "."); - - Возврат ЮТМетодыСлужебный.ВызватьФункцию(ПолноеИмяМетода, Параметры, Ложь); + Возврат ЮТМетодыСлужебный.ВызватьФункциюКонфигурации(ИмяМодуля, ИмяМетода, Параметры, Ложь); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ce5c6b194..94992bbb3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -81,7 +81,7 @@ Статусы = ЮТФабрика.СтатусыИсполненияТеста(); ПолноеИмяМетода = СтрШаблон("%1.%2", Модуль.Метаданные.Имя, РезультатТеста.Метод); ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим); - ПолныйИдентификаторТеста = СтрШаблон("%1_%2.3_%4", РезультатТеста.НомерВНаборе, ПолноеИмяМетода, РезультатТеста.Режим); + ПолныйИдентификаторТеста = СтрШаблон("%1_%2_%3", РезультатТеста.НомерВНаборе, ПолноеИмяМетода, РезультатТеста.Режим); Теги = ЮТОтчетСлужебныйКлиентСервер.УникальныеТеги(Модуль, Набор, РезультатТеста); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index c1ddf59f8..6ca927c97 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -35,7 +35,7 @@ КонецЦикла; // Изначально планировалось на основе состава подсистем, но он не позволяет задать четкий порядок элементов. - ПриоритезироватьОбработчикиСобытий(ГруппаОбработчиков, Модули); + ПриоритизироватьОбработчикиСобытий(ГруппаОбработчиков, Модули); Возврат Модули; @@ -106,7 +106,7 @@ КонецФункции -Процедура ПриоритезироватьОбработчикиСобытий(ГруппаОбработчиков, Модули) +Процедура ПриоритизироватьОбработчикиСобытий(ГруппаОбработчиков, Модули) Если ГруппаОбработчиков = "ИсполнениеТестов" Тогда Порядок = "ЮТЛогированиеСлужебный, ЮТИсполнительСлужебныйКлиент, ЮТКонтекстИсполненияСлужебныйКлиентСервер"; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 1c418d78b..733af69d4 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -305,7 +305,10 @@ КонецФункции #Если Сервер Тогда -Функция СерверныйВызовОбработкиСобытияИсполненияТестов(ИмяСобытия, ИдентификаторМодуля = Неопределено, ИдентификаторНабора = Неопределено, ИдентификаторТеста = Неопределено) Экспорт +Функция СерверныйВызовОбработкиСобытияИсполненияТестов(ИмяСобытия, + ИдентификаторМодуля = Неопределено, + ИдентификаторНабора = Неопределено, + ИдентификаторТеста = Неопределено) Экспорт Хранилище = ЮТИсполнительСлужебныйСервер.СерверноеХранилищеТестов(); ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(Неопределено); @@ -342,10 +345,9 @@ Для Каждого ИмяМодуля Из ОбработчикиСобытий Цикл Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда - ПолноеИмяМетода = СтрШаблон("%1.%2", ИмяМодуля, ИмяСобытия); - ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2`", ИмяСобытия, ПолноеИмяМетода)); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода, ПараметрыСобытия); + ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2.%3`", ИмяСобытия, ИмяМодуля, ИмяСобытия)); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяСобытия, ПараметрыСобытия); Если Ошибка <> Неопределено Тогда ЮТЛогирование.Ошибка(ЮТРегистрацияОшибок.ПредставлениеОшибки("Ошибка обработки события", Ошибка)); КонецЕсли; @@ -353,6 +355,7 @@ Если Ошибка <> Неопределено Тогда Ошибки.Добавить(Ошибка); КонецЕсли; + КонецЕсли; КонецЦикла; @@ -383,11 +386,10 @@ КонецЕсли; Ошибки = Новый Массив(); - Команда = СтрШаблон("%1.%2", ИмяМодуля, ИмяСобытия); Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда - ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2`", ИмяСобытия, Команда)); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(Команда); + ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2.%3`", ИмяСобытия, ИмяМодуля, ИмяСобытия)); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяСобытия); Если Ошибка <> Неопределено Тогда ЮТЛогирование.Ошибка(ЮТРегистрацияОшибок.ПредставлениеОшибки("Ошибка обработки события", Ошибка)); @@ -396,7 +398,7 @@ ИначеЕсли ОбработчикСобытияПереопределен Тогда - ТекстИсключения = СтрШаблон("Не найден обработчик тестового модуля %1", Команда); + ТекстИсключения = СтрШаблон("Не найден обработчик тестового модуля %1.%2", ИмяМодуля, ИмяСобытия); ВызватьИсключение ТекстИсключения; КонецЕсли; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" deleted file mode 100644 index e3fb6e7fc..000000000 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" +++ /dev/null @@ -1,53 +0,0 @@ -//©///////////////////////////////////////////////////////////////////////////©// -// -// Copyright 2021-2024 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. -// -//©///////////////////////////////////////////////////////////////////////////©// - -#Область СлужебныйПрограммныйИнтерфейс - -Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта) - - Данные = Новый Структура; - Данные.Вставить("Идентификатор", Новый УникальныйИдентификатор()); - Данные.Вставить("ИдентификаторБазовогоОписания", ОписаниеБазовогоОбъекта.Идентификатор); - Данные.Вставить("Статус", Новый Структура); - Данные.Вставить("Родитель", Неопределено); - -КонецФункции - -Функция ОписаниеБазовогоОбъекта(Идентификатор, АдресХранилища) Экспорт - - ДанныеХранилища = ПолучитьИзВременногоХранилища(АдресХранилища); - Возврат ДанныеХранилища[Идентификатор]; - -КонецФункции - -Функция РезультатТесирования(ДанныеИсполняемого) Экспорт - - Результат = Новый Структура; - Результат.Вставить("Идентификатор", ДанныеИсполняемого.Идентификатор); - Результат.Вставить("Представление"); - Результат.Вставить("Статус"); - Результат.Вставить("Контекст"); - Результат.Вставить("Метки"); - -КонецФункции - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" deleted file mode 100644 index 62c2f904a..000000000 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\241\321\202\321\200\321\203\320\272\321\202\321\203\321\200\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" +++ /dev/null @@ -1,9 +0,0 @@ - - - ЮТСтруктураТестов - - ru - Структура тестов - - true - diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index 351592c50..f1430334e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -1589,12 +1589,6 @@ КонецЕсли; #КонецЕсли - Если Модуль <> Неопределено Тогда - ПолноеИмяМетода = СтрШаблон("Объект.%1", ИмяМетода); - Иначе - ПолноеИмяМетода = СтрШаблон("%1", ИмяМетода); - КонецЕсли; - Результат = Новый Структура("ИсключениеВозникло, ТекстИсключения", Ложь); #Если Сервер Тогда @@ -1604,13 +1598,13 @@ КонецЕсли; НачатьТранзакцию(); // BSLLS:PairingBrokenTransaction-off BSLLS:BeginTransactionBeforeTryCatch-off - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода, ПараметрыМетода, Модуль); + Ошибка = ВыполнитьМетодМодуля(Модуль, ИмяМетода, ПараметрыМетода); ОтменитьТранзакцию(); // BSLLS:WrongUseOfRollbackTransactionMethod-off Иначе - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода, ПараметрыМетода, Модуль); + Ошибка = ВыполнитьМетодМодуля(Модуль, ИмяМетода, ПараметрыМетода); КонецЕсли; #Иначе - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода, ПараметрыМетода, Модуль); + Ошибка = ВыполнитьМетодМодуля(Модуль, ИмяМетода, ПараметрыМетода); #КонецЕсли Если Ошибка <> Неопределено Тогда @@ -1623,6 +1617,20 @@ КонецФункции +Функция ВыполнитьМетодМодуля(Модуль, ИмяМетода, ПараметрыМетода) + + ВызоваМетодаОбъекта = Модуль <> Неопределено И ТипЗнч(Модуль) <> Тип("Строка"); + + Если ВызоваМетодаОбъекта Тогда + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодОбъекта(Модуль, ИмяМетода, ПараметрыМетода); + Иначе + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(Модуль, ИмяМетода, ПараметрыМетода); + КонецЕсли; + + Возврат Ошибка; + +КонецФункции + #Область ПроверкаТипов Процедура ПроверитьТипЗначения(Контекст, diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index c96c0bce5..08b370536 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -66,7 +66,7 @@ ЮТСобытияСлужебный.ПередЧтениемСценариевМодуля(МетаданныеМодуля); ПолноеИмяМетода = МетаданныеМодуля.Имя + "." + ИмяМетодаСценариев(); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ПолноеИмяМетода, Неопределено); Если Ошибка <> Неопределено Тогда @@ -77,8 +77,11 @@ ЭтоТестовыйМодуль = Ложь; Ошибка = Неопределено; ИначеЕсли ТипОшибки = ТипыОшибок.МалоПараметров Тогда - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод(ПолноеИмяМетода, ЮТКоллекции.ЗначениеВМассиве(Неопределено)); - ЮТОбщий.СообщитьПользователю("Используется устаревшая сигнатура метода `ИсполняемыеСценарии`, метод не должен принимать параметров."); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ПолноеИмяМетода, Неопределено, ЮТКоллекции.ЗначениеВМассиве(Неопределено)); + + Сообщение = "Используется устаревшая сигнатура метода `ИсполняемыеСценарии`, метод не должен принимать параметров."; + ЮТОбщий.СообщитьПользователю(Сообщение); + ЮТЛогирование.Предостережение(Сообщение); КонецЕсли; КонецЕсли; diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index c2052d638..0c649856e 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -128,7 +128,6 @@ CommonModule.ЮТСравнениеСлужебныйВызовСервера CommonModule.ЮТСравнениеСлужебныйКлиентСервер CommonModule.ЮТСтроки - CommonModule.ЮТСтруктураТестов CommonModule.ЮТТестовыеДанные CommonModule.ЮТТестовыеДанныеСлужебный CommonModule.ЮТТестовыеДанныеСлужебныйВызовСервера diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index 170406dbb..60c8326c8 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -2418,7 +2418,7 @@ Параметры = ЮТКоллекции.ЗначениеВМассиве(Параметр); ЮТест.ОжидаетЧто(ПроверяемоеЗначение); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетод("ЮТУтверждения." + Утверждение, Параметры); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации("ЮТУтверждения", Утверждение, Параметры); Возврат Ошибка; From 1e0fd5c3b630b3d83dcf8b9216c3a733ab006c50 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 20:24:02 +0300 Subject: [PATCH 38/54] =?UTF-8?q?#288=20=D0=9F=D1=80=D0=BE=D0=B1=D1=80?= =?UTF-8?q?=D0=BE=D1=81=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=20=D0=BF=D0=BE=20=D1=83=D0=BC=D0=BE=D0=BB=D1=87?= =?UTF-8?q?=D0=B0=D0=BD=D0=B8=D1=8E=20=D0=9F=D1=80=D0=B8=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B7=D0=BE=D0=B2=D0=B5=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D0=B0?= =?UTF-8?q?=20=D0=B8=20=D0=BF=D1=80=D0=B8=20=D0=BD=D0=B0=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=BE=D0=B9=D0=BA=D0=B5=20=D0=BC=D0=BE=D0=BA=D0=B8=D1=82=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 22 ++-- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 99 ++++++----------- .../Module.bsl" | 100 ++++++++++++++++++ ...0\265\321\202\320\276\320\264\321\213.mdo" | 11 ++ .../Module.bsl" | 76 +++++++++---- .../Module.bsl" | 17 +-- .../Module.bsl" | 96 +++++++++++++++++ ...0\265\320\261\320\275\321\213\320\271.mdo" | 11 ++ .../Module.bsl" | 4 +- .../Module.bsl" | 2 +- .../Module.bsl" | 4 +- .../Module.bsl" | 4 +- .../Module.bsl" | 4 +- .../src/Configuration/Configuration.mdo | 2 + .../ManagerModule.bsl" | 4 +- .../ObjectModule.bsl" | 2 +- .../ObjectModule.bsl" | 2 +- .../Module.bsl" | 2 +- .../Module.bsl" | 14 ++- .../Module.bsl" | 10 +- .../Module.bsl" | 8 +- .../Module.bsl" | 24 ++++- .../Module.bsl" | 44 ++++---- .../ObjectModule.bsl" | 2 +- .../ManagerModule.bsl" | 2 +- .../RecordSetModule.bsl" | 4 +- 28 files changed, 404 insertions(+), 170 deletions(-) create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213.mdo" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" diff --git "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" index 3840c6b65..8d05a87ad 100644 --- "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" @@ -169,6 +169,7 @@ КонецФункции // Формирует массив параметров. Применяется при обучении (настройке) мокито. +// Если параметр пропущен, то будет использовать маска см. ЛюбойПараметр // // Параметры: // Параметр1 - Произвольный @@ -198,16 +199,17 @@ Параметр9 = "_!%*", Параметр10 = "_!%*") Экспорт - Возврат ЮТКоллекции.ЗначениеВМассиве(Параметр1, - Параметр2, - Параметр3, - Параметр4, - Параметр5, - Параметр6, - Параметр7, - Параметр8, - Параметр9, - Параметр10); + Возврат ЮТОбщийСлужебный.ЗначениеВМассивеПоУмолчанию(Мокито.ЛюбойПараметр(), + Параметр1, + Параметр2, + Параметр3, + Параметр4, + Параметр5, + Параметр6, + Параметр7, + Параметр8, + Параметр9, + Параметр10); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 204a8369f..9dac1a2f8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -146,7 +146,7 @@ ПараметрыМетода = ЮТКоллекции.СкопироватьМассив(ОписаниеЗависимости.Параметры); ПараметрыМетода.Добавить(Обработчик); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ИмяМетода, , ПараметрыМетода); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ИмяМетода, , ПараметрыМетода); Если Ошибка <> Неопределено Тогда Результат = ЮТФабрикаСлужебный.РезультатРазрешенияЗависимости(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 19020deb5..0385786b0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -202,7 +202,7 @@ СтатусыИсполненияТеста = ЮТФабрика.СтатусыИсполненияТеста(); Тест.Статус = СтатусыИсполненияТеста.Исполнение; - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(Тест.ПолноеИмяМетода, , Тест.Параметры); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(Тест.ПолноеИмяМетода, , Тест.Параметры); Если Ошибка <> Неопределено Тогда ЮТРегистрацияОшибокСлужебный.ЗарегистрироватьОшибкуВыполненияТеста(Тест, Ошибка); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index 99a62fbdc..136606495 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -312,7 +312,7 @@ // Создает массив с переданными значениями // // Параметры: -// Значение - Произвольный +// Значение1 - Произвольный // Значение2 - Произвольный // Значение3 - Произвольный // Значение4 - Произвольный @@ -326,58 +326,36 @@ // Возвращаемое значение: // Массив из Произвольный //@skip-check method-too-many-params -Функция ЗначениеВМассиве(Значение, - Значение2 = "_!%*", - Значение3 = "_!%*", - Значение4 = "_!%*", - Значение5 = "_!%*", - Значение6 = "_!%*", - Значение7 = "_!%*", - Значение8 = "_!%*", - Значение9 = "_!%*", - Значение10 = "_!%*") Экспорт - - Значения = Новый Массив; - - Если Не ДобавитьНеПоследнее(Значения, Значение) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение2) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение3) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение4) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение5) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение6) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение7) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение8) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение9) Тогда - Возврат Значения; - КонецЕсли; - - Если Не ДобавитьНеПоследнее(Значения, Значение10) Тогда - Возврат Значения; - КонецЕсли; +Функция ЗначениеВМассиве(Значение1, + Значение2 = "_!%*", + Значение3 = "_!%*", + Значение4 = "_!%*", + Значение5 = "_!%*", + Значение6 = "_!%*", + Значение7 = "_!%*", + Значение8 = "_!%*", + Значение9 = "_!%*", + Значение10 = "_!%*") Экспорт + + ФлагПустогоЗначения = "_!%*"; + Значения = Неопределено; + + Для Инд = -10 По -1 Цикл + + //@skip-check server-execution-safe-mode + Значение = Вычислить("Значение" + (-Инд)); + + Если Значение = ФлагПустогоЗначения Тогда + Продолжить; + КонецЕсли; + + Если Значения = Неопределено Тогда + Значения = Новый Массив(-Инд); + КонецЕсли; + + Значения[-Инд - 1] = Значение; + + КонецЦикла; Возврат Значения; @@ -495,18 +473,3 @@ КонецФункции #КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -Функция ДобавитьНеПоследнее(Значения, Значение, ФлагОкончания = "_!%*") - - Если Значение <> ФлагОкончания Тогда - Значения.Добавить(Значение); - Возврат Истина; - КонецЕсли; - - Возврат Ложь; - -КонецФункции - -#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" new file mode 100644 index 000000000..b6db791c3 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" @@ -0,0 +1,100 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область ПрограммныйИнтерфейс + +// Выполняет вызов метода модуля конфигурации +// +// Параметры: +// ИмяМодуля - Строка - Имя модуля +// ИмяМетода - Строка - Имя метода +// Параметры - Неопределено - Вызов метода без параметров +// - Массив из Произвольный - Параметры вызова метода +Процедура ВызватьМетодМодуля(ИмяМодуля, ИмяМетода, Параметры = Неопределено) Экспорт + +#Если ВебКлиент Тогда + ВызватьИсключение ЮТИсключения.МетодНеДоступен("ЮТМетоды.ВызватьМетодМодуля"); +#КонецЕсли + + ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяМетода, Параметры); + +КонецПроцедуры + +// Выполняет вызов метода указанного объекта +// +// Параметры: +// Объект - Строка - Объект, метод которого необходимо вызвать +// ИмяМетода - Строка - Имя метода +// Параметры - Неопределено - Вызов метода без параметров +// - Массив из Произвольный - Параметры вызова метода +Процедура ВызватьМетодОбъекта(Объект, ИмяМетода, Параметры = Неопределено) Экспорт + +#Если ВебКлиент Тогда + ВызватьИсключение ЮТИсключения.МетодНеДоступен("ЮТМетоды.ВызватьМетодОбъекта"); +#КонецЕсли + + ЮТМетодыСлужебный.ВыполнитьМетодОбъекта(Объект, ИмяМетода, Параметры); + +КонецПроцедуры + +// Формирует массив параметров. Применяется при обучении (настройке) мокито. +// Если параметр пропущен, то будет использовать параметр по умолчанию +// +// Параметры: +// Параметр1 - Произвольный +// Параметр2 - Произвольный +// Параметр3 - Произвольный +// Параметр4 - Произвольный +// Параметр5 - Произвольный +// Параметр6 - Произвольный +// Параметр7 - Произвольный +// Параметр8 - Произвольный +// Параметр9 - Произвольный +// Параметр10 - Произвольный +// +// Возвращаемое значение: +// Массив из Произвольный - Массив параметров +//@skip-check method-too-many-params +// BSLLS:NumberOfOptionalParams-off +// BSLLS:NumberOfParams-off +Функция МассивПараметров(Параметр1 = "_!%*", + Параметр2 = "_!%*", + Параметр3 = "_!%*", + Параметр4 = "_!%*", + Параметр5 = "_!%*", + Параметр6 = "_!%*", + Параметр7 = "_!%*", + Параметр8 = "_!%*", + Параметр9 = "_!%*", + Параметр10 = "_!%*") Экспорт + + Возврат ЮТОбщийСлужебный.ЗначениеВМассивеПоУмолчанию(Мокито.ПараметрПоУмолчанию(), + Параметр1, + Параметр2, + Параметр3, + Параметр4, + Параметр5, + Параметр6, + Параметр7, + Параметр8, + Параметр9, + Параметр10); + +КонецФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213.mdo" new file mode 100644 index 000000000..83b07d9c2 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213.mdo" @@ -0,0 +1,11 @@ + + + ЮТМетоды + + ru + Методы + + true + true + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 608dcb1f8..01a37ab43 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -60,7 +60,7 @@ ПолноеИмяМетода = СтрШаблон("%1.%2", ИмяМодуля, ИмяМетода); Алгоритм = ПолноеИмяМетода + "(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)"; - Ошибка = ВыполнитьВыражение(Алгоритм); + Ошибка = ВыполнитьВыражениеСПерехватомОшибки(Алгоритм); ТипОшибки = ЮТРегистрацияОшибокСлужебный.ТипОшибки(Ошибка, ПолноеИмяМетода); Возврат ТипОшибки = ЮТФабрикаСлужебный.ТипыОшибок().МногоПараметров; @@ -85,7 +85,7 @@ ПолноеИмяМетода = СтрШаблон("Объект.%1", ИмяМетода); Алгоритм = ПолноеИмяМетода + "(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)"; - Ошибка = ВыполнитьВыражение(Алгоритм, , Объект); + Ошибка = ВыполнитьВыражениеСПерехватомОшибки(Алгоритм, , Объект); ТипОшибки = ЮТРегистрацияОшибокСлужебный.ТипОшибки(Ошибка, ПолноеИмяМетода); Возврат ТипОшибки = ЮТФабрикаСлужебный.ТипыОшибок().МногоПараметров; @@ -97,35 +97,35 @@ #Область ВызовМетодов -Функция ВыполнитьМетодОбъекта(Объект, ИмяМетода, Параметры = Неопределено) Экспорт +Процедура ВыполнитьМетодОбъекта(Объект, ИмяМетода, Параметры = Неопределено) Экспорт Выражение = "Объект." + СтрокаВызоваМетода(ИмяМетода, Параметры, "Параметры"); - Возврат ВыполнитьВыражение(Выражение, Параметры, Объект, Ложь); + ВыполнитьВыражение(Выражение, Параметры, Объект, Ложь); + +КонецПроцедуры + +Функция ВыполнитьМетодОбъектаСПерехватомОшибки(Объект, ИмяМетода, Параметры = Неопределено) Экспорт + + Выражение = "Объект." + СтрокаВызоваМетода(ИмяМетода, Параметры, "Параметры"); + Возврат ВыполнитьВыражениеСПерехватомОшибки(Выражение, Параметры, Объект, Ложь); КонецФункции -Функция ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяМетода, Параметры = Неопределено) Экспорт +Процедура ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяМетода, Параметры = Неопределено) Экспорт ПолноеИмяМетода = ЮТСтроки.ДобавитьСтроку(ИмяМодуля, ИмяМетода, "."); Выражение = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры, "Параметры"); - Возврат ВыполнитьВыражение(Выражение, Параметры, , Ложь); + ВыполнитьВыражение(Выражение, Параметры, , Ложь); -КонецФункции +КонецПроцедуры -Функция СтрокаВызоваМетода(ПолноеИмяМетода, Параметры, ИмяМассиваПараметров = "Параметры") Экспорт +Функция ВыполнитьМетодКонфигурацииСПерехватомОшибки(ИмяМодуля, ИмяМетода, Параметры = Неопределено) Экспорт - Если СтрЗаканчиваетсяНа(ПолноеИмяМетода, ")") Тогда - Алгоритм = ПолноеИмяМетода; - ИначеЕсли НЕ ЗначениеЗаполнено(Параметры) Тогда - Алгоритм = ПолноеИмяМетода + "()"; - ИначеЕсли ТипЗнч(Параметры) = Тип("Массив") Тогда - Алгоритм = СтрШаблон("%1(%2)", ПолноеИмяМетода, СтрокаПараметровМетода(Параметры, ИмяМассиваПараметров)); - Иначе - ВызватьИсключение СтрШаблон("Не верный тип параметров `%1` для вызова метода (%2), должен быть массив", ТипЗнч(Параметры), ПолноеИмяМетода); - КонецЕсли; + ПолноеИмяМетода = ЮТСтроки.ДобавитьСтроку(ИмяМодуля, ИмяМетода, "."); + Выражение = СтрокаВызоваМетода(ПолноеИмяМетода, Параметры, "Параметры"); - Возврат Алгоритм; + Возврат ВыполнитьВыражениеСПерехватомОшибки(Выражение, Параметры, , Ложь); КонецФункции @@ -171,7 +171,45 @@ #Область СлужебныеПроцедурыИФункции -Функция ВыполнитьВыражение(Выражение, Параметры = Неопределено, Объект = Неопределено, Безопасно = Истина) +Функция СтрокаВызоваМетода(ПолноеИмяМетода, Параметры, ИмяМассиваПараметров = "Параметры") + + Если СтрЗаканчиваетсяНа(ПолноеИмяМетода, ")") Тогда + Выражение = ПолноеИмяМетода; + ИначеЕсли НЕ ЗначениеЗаполнено(Параметры) Тогда + Выражение = ПолноеИмяМетода + "()"; + ИначеЕсли ТипЗнч(Параметры) = Тип("Массив") Тогда + Выражение = СтрШаблон("%1(%2)", ПолноеИмяМетода, СтрокаПараметровМетода(Параметры, ИмяМассиваПараметров)); + Иначе + ВызватьИсключение СтрШаблон("Не верный тип параметров `%1` для вызова метода (%2), должен быть массив", ТипЗнч(Параметры), ПолноеИмяМетода); + КонецЕсли; + + Возврат Выражение; + +КонецФункции + +Процедура ВыполнитьВыражение(Выражение, Параметры = Неопределено, Объект = Неопределено, Безопасно = Истина) + + // BSLLS:ExecuteExternalCodeInCommonModule-off +#Если ВебКлиент Тогда + ВызватьИсключение ЮТИсключения.МетодНеДоступен("ЮТМетодыСлужебный.ВыполнитьВыражение"); +#КонецЕсли + +#Если ТонкийКлиент Тогда + Выполнить(Выражение); +#ИначеЕсли НЕ ВебКлиент Тогда + Если Безопасно Тогда + УстановитьБезопасныйРежим(Истина); + Выполнить(Выражение); + Иначе + //@skip-check server-execution-safe-mode + Выполнить(Выражение); + КонецЕсли; +#КонецЕсли + // BSLLS:ExecuteExternalCodeInCommonModule-on + +КонецПроцедуры + +Функция ВыполнитьВыражениеСПерехватомОшибки(Выражение, Параметры = Неопределено, Объект = Неопределено, Безопасно = Истина) // BSLLS:ExecuteExternalCodeInCommonModule-off #Если ВебКлиент Тогда diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" index 60a97c1c6..26f736d49 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271/Module.bsl" @@ -55,19 +55,6 @@ КонецФункции -// Вычисляет хеш по алгоритму md5. -// -// Параметры: -// Данные - Строка, ДвоичныеДанные - Данные, для которых необходимо вычислить хеш -// -// Возвращаемое значение: -// Строка -Функция ХешMD5(Данные) Экспорт - - Возврат ЮТОбщийСлужебныйВызовСервера.ХешMD5(Данные); - -КонецФункции - #Область ДатаВремя // Добавляет к дате указанное значение временных интервалов @@ -718,9 +705,9 @@ ЮТМетодыСлужебный.ВызовУстаревшегоМетода("ЮТОбщий.ВыполнитьМетод", Неопределено, "24.03"); Если Объект <> Неопределено Тогда - Возврат ЮТМетодыСлужебный.ВыполнитьМетодОбъекта(Объект, ПолноеИмяМетода, Параметры); + Возврат ЮТМетодыСлужебный.ВыполнитьМетодОбъектаСПерехватомОшибки(Объект, ПолноеИмяМетода, Параметры); Иначе - Возврат ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ПолноеИмяМетода, , Параметры); + Возврат ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ПолноеИмяМетода, , Параметры); КонецЕсли; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" new file mode 100644 index 000000000..f06168a8a --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -0,0 +1,96 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +// Вычисляет хеш по алгоритму md5. +// +// Параметры: +// Данные - Строка, ДвоичныеДанные - Данные, для которых необходимо вычислить хеш +// +// Возвращаемое значение: +// Строка +Функция ХешMD5(Данные) Экспорт + + Возврат ЮТОбщийСлужебныйВызовСервера.ХешMD5(Данные); + +КонецФункции + +// Создает массив с переданными значениями +// +// Параметры: +// ЗначениеПоУмолчанию - Произвольный - Значение, подставляемое для пропущенных параметров +// Значение1 - Произвольный +// Значение2 - Произвольный +// Значение3 - Произвольный +// Значение4 - Произвольный +// Значение5 - Произвольный +// Значение6 - Произвольный +// Значение7 - Произвольный +// Значение8 - Произвольный +// Значение9 - Произвольный +// Значение10 - Произвольный +// +// Возвращаемое значение: +// Массив из Произвольный +//@skip-check method-too-many-params +Функция ЗначениеВМассивеПоУмолчанию(ЗначениеПоУмолчанию, + Значение1, + Значение2 = "_!%*", + Значение3 = "_!%*", + Значение4 = "_!%*", + Значение5 = "_!%*", + Значение6 = "_!%*", + Значение7 = "_!%*", + Значение8 = "_!%*", + Значение9 = "_!%*", + Значение10 = "_!%*") Экспорт + + ФлагПустогоЗначения = "_!%*"; + Значения = Неопределено; + + Для Инд = -10 По -1 Цикл + + //@skip-check server-execution-safe-mode + Значение = Вычислить("Значение" + (-Инд)); + + Если Значение = ФлагПустогоЗначения И Значения = Неопределено Тогда + Продолжить; + КонецЕсли; + + Если Значения = Неопределено Тогда + Значения = Новый Массив(-Инд); + КонецЕсли; + + Если Значение = ФлагПустогоЗначения Тогда + Значение = ЗначениеПоУмолчанию; + КонецЕсли; + + Значения[-Инд - 1] = Значение; + + КонецЦикла; + + Возврат Значения; + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" new file mode 100644 index 000000000..7361f29e0 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" @@ -0,0 +1,11 @@ + + + ЮТОбщийСлужебный + + ru + Общий служебный + + true + true + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 94992bbb3..af2b406c1 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202Allure\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -89,7 +89,7 @@ Описание.fullName = ПолноеИмяМетода + ПредставлениеРежима; Описание.name = РезультатТеста.Метод + ПредставлениеРежима; Описание.status = СтатусОтчета(РезультатТеста.Статус, Статусы); - Описание.testCaseId = ЮТОбщий.ХешMD5(ПолныйИдентификаторТеста); + Описание.testCaseId = ЮТОбщийСлужебный.ХешMD5(ПолныйИдентификаторТеста); Описание.start = ЮниксВремя(РезультатТеста.ДатаСтарта); Описание.stop = ЮниксВремя(РезультатТеста.ДатаСтарта) + РезультатТеста.Длительность; @@ -130,7 +130,7 @@ КонецЦикла; КонецЕсли; - Описание.historyId = ЮТОбщий.ХешMD5(ПолныйИдентификаторТеста); + Описание.historyId = ЮТОбщийСлужебный.ХешMD5(ПолныйИдентификаторТеста); Для Каждого ОписаниеОшибки Из РезультатТеста.Ошибки Цикл diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\260\320\267\321\200\320\265\321\210\320\265\320\275\320\270\320\265\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\265\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\260\320\267\321\200\320\265\321\210\320\265\320\275\320\270\320\265\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\265\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index a53eeffb8..17a6097bb 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\260\320\267\321\200\320\265\321\210\320\265\320\275\320\270\320\265\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\265\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\260\320\267\321\200\320\265\321\210\320\265\320\275\320\270\320\265\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\265\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -85,7 +85,7 @@ Функция ФайлыПроектаРабочийКаталог() - КлючБазы = ЮТОбщий.ХешMD5(СтрокаСоединенияИнформационнойБазы()); + КлючБазы = ЮТОбщийСлужебный.ХешMD5(СтрокаСоединенияИнформационнойБазы()); Возврат ЮТФайлы.ОбъединитьПути(КаталогВременныхФайлов(), КлючБазы, "КаталогПроекта"); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 733af69d4..f212da66a 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -347,7 +347,7 @@ Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2.%3`", ИмяСобытия, ИмяМодуля, ИмяСобытия)); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяСобытия, ПараметрыСобытия); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ИмяМодуля, ИмяСобытия, ПараметрыСобытия); Если Ошибка <> Неопределено Тогда ЮТЛогирование.Ошибка(ЮТРегистрацияОшибок.ПредставлениеОшибки("Ошибка обработки события", Ошибка)); КонецЕсли; @@ -389,7 +389,7 @@ Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2.%3`", ИмяСобытия, ИмяМодуля, ИмяСобытия)); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ИмяМодуля, ИмяСобытия); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ИмяМодуля, ИмяСобытия); Если Ошибка <> Неопределено Тогда ЮТЛогирование.Ошибка(ЮТРегистрацияОшибок.ПредставлениеОшибки("Ошибка обработки события", Ошибка)); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index f1430334e..ce2e2723c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -1622,9 +1622,9 @@ ВызоваМетодаОбъекта = Модуль <> Неопределено И ТипЗнч(Модуль) <> Тип("Строка"); Если ВызоваМетодаОбъекта Тогда - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодОбъекта(Модуль, ИмяМетода, ПараметрыМетода); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодОбъектаСПерехватомОшибки(Модуль, ИмяМетода, ПараметрыМетода); Иначе - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(Модуль, ИмяМетода, ПараметрыМетода); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(Модуль, ИмяМетода, ПараметрыМетода); КонецЕсли; Возврат Ошибка; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 08b370536..445277f9b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\247\320\270\321\202\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -66,7 +66,7 @@ ЮТСобытияСлужебный.ПередЧтениемСценариевМодуля(МетаданныеМодуля); ПолноеИмяМетода = МетаданныеМодуля.Имя + "." + ИмяМетодаСценариев(); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ПолноеИмяМетода, Неопределено); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ПолноеИмяМетода, Неопределено); Если Ошибка <> Неопределено Тогда @@ -77,7 +77,7 @@ ЭтоТестовыйМодуль = Ложь; Ошибка = Неопределено; ИначеЕсли ТипОшибки = ТипыОшибок.МалоПараметров Тогда - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации(ПолноеИмяМетода, Неопределено, ЮТКоллекции.ЗначениеВМассиве(Неопределено)); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ПолноеИмяМетода, Неопределено, ЮТКоллекции.ЗначениеВМассиве(Неопределено)); Сообщение = "Используется устаревшая сигнатура метода `ИсполняемыеСценарии`, метод не должен принимать параметров."; ЮТОбщий.СообщитьПользователю(Сообщение); diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index 0c649856e..aa945105b 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -94,9 +94,11 @@ CommonModule.ЮТМетаданныеСлужебный CommonModule.ЮТМетаданныеСлужебныйВызовСервера CommonModule.ЮТМетаданныеСлужебныйПовтИсп + CommonModule.ЮТМетоды CommonModule.ЮТМетодыСлужебный CommonModule.ЮТНастройкиВыполнения CommonModule.ЮТОбщий + CommonModule.ЮТОбщийСлужебный CommonModule.ЮТОбщийСлужебныйВызовСервера CommonModule.ЮТОкружениеСлужебныйКлиентСервер CommonModule.ЮТОтчетAllureСлужебный diff --git "a/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ManagerModule.bsl" "b/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ManagerModule.bsl" index c2a7ce9eb..828d5050f 100644 --- "a/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ManagerModule.bsl" +++ "b/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ManagerModule.bsl" @@ -19,7 +19,7 @@ &Вместо("СохранитьИзменения") Функция Расш1_СохранитьИзменения(ОбрабатываемыеЭлементы) Экспорт - ПараметрыМетода = Мокито.МассивПараметров(ОбрабатываемыеЭлементы); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(ОбрабатываемыеЭлементы); ПрерватьВыполнение = Ложь; Результат = МокитоПерехват.АнализВызова(Справочники.Встречи, "СохранитьИзменения", ПараметрыМетода, ПрерватьВыполнение); @@ -35,7 +35,7 @@ &Вместо("ЗаполнитьОбъект") Процедура Расш1_ЗаполнитьОбъект(Объект, ОбрабатываемыйЭлемент) Экспорт - ПараметрыМетода = Мокито.МассивПараметров(Объект, ОбрабатываемыйЭлемент); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Объект, ОбрабатываемыйЭлемент); ПрерватьВыполнение = Ложь; МокитоПерехват.АнализВызова(Справочники.Встречи, "ЗаполнитьОбъект", ПараметрыМетода, ПрерватьВыполнение); diff --git "a/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ObjectModule.bsl" "b/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ObjectModule.bsl" index b4238820d..328cb0662 100644 --- "a/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ObjectModule.bsl" +++ "b/tests/src/Catalogs/\320\222\321\201\321\202\321\200\320\265\321\207\320\270/ObjectModule.bsl" @@ -35,7 +35,7 @@ &Вместо("ПередЗаписью") Процедура Расш1_ПередЗаписью(Отказ) - ПараметрыМетода = Мокито.МассивПараметров(Отказ); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Отказ); ПрерватьВыполнение = Ложь; МокитоПерехват.АнализВызова(ЭтотОбъект, "ПередЗаписью", ПараметрыМетода, ПрерватьВыполнение); diff --git "a/tests/src/Catalogs/\320\242\320\276\320\262\320\260\321\200\321\213/ObjectModule.bsl" "b/tests/src/Catalogs/\320\242\320\276\320\262\320\260\321\200\321\213/ObjectModule.bsl" index 958f0846f..e96428b25 100644 --- "a/tests/src/Catalogs/\320\242\320\276\320\262\320\260\321\200\321\213/ObjectModule.bsl" +++ "b/tests/src/Catalogs/\320\242\320\276\320\262\320\260\321\200\321\213/ObjectModule.bsl" @@ -19,7 +19,7 @@ &Вместо("ПечатнаяФормаШтрихкода") Функция Расш1_ПечатнаяФормаШтрихкода(ТабличныйДокумент) Экспорт - ПараметрыМетода = Мокито.МассивПараметров(ТабличныйДокумент); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(ТабличныйДокумент); ПрерватьВыполнение = Ложь; Результат = МокитоПерехват.АнализВызова(ЭтотОбъект, "ПечатнаяФормаШтрихкода", ПараметрыМетода, ПрерватьВыполнение); diff --git "a/tests/src/CommonModules/\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217/Module.bsl" "b/tests/src/CommonModules/\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217/Module.bsl" index 39c2b26b4..2343b0e4d 100644 --- "a/tests/src/CommonModules/\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217/Module.bsl" +++ "b/tests/src/CommonModules/\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217/Module.bsl" @@ -19,7 +19,7 @@ &Вместо("ВыполнитьЗапрос") Функция Расш1_ВыполнитьЗапрос(Адрес, ФорматОтвета, Авторизация) Экспорт - ПараметрыМетода = Мокито.МассивПараметров(Адрес, ФорматОтвета, Авторизация); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Адрес, ФорматОтвета, Авторизация); ПрерватьВыполнение = Ложь; Результат = МокитоПерехват.АнализВызова(Интеграция, "ВыполнитьЗапрос", ПараметрыМетода, ПрерватьВыполнение); diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" index f9cb364eb..de3ef2aa6 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" @@ -60,15 +60,19 @@ Описание = "Обучение через указание имени и набора параметров"; Мокито.Обучение(Интеграция) - .Когда("ВыполнитьЗапрос", Мокито.МассивПараметров(ЛюбойПараметр, ЛюбойПараметр)) - .Вернуть(20) - .Когда("ВыполнитьЗапрос", Мокито.МассивПараметров(Адрес, 2)) + .Когда("ВыполнитьЗапрос", Мокито.МассивПараметров(Адрес, 1)) + .Вернуть(1) + .Когда("ВыполнитьЗапрос", Мокито.МассивПараметров(, 2)) .Вернуть(2) + .Когда("ВыполнитьЗапрос",) + .Вернуть(20) .Прогон(); - ЮТест.ОжидаетЧто(Интеграция.ВыполнитьЗапрос(Адрес, 2), Описание + ". Кейс 1") + ЮТест.ОжидаетЧто(Интеграция.ВыполнитьЗапрос(Адрес, 1), Описание + ". Кейс 1") + .Равно(1); + ЮТест.ОжидаетЧто(Интеграция.ВыполнитьЗапрос(Адрес, 2), Описание + ". Кейс 2") .Равно(2); - ЮТест.ОжидаетЧто(Интеграция.ВыполнитьЗапрос(Адрес, 1), Описание + ". Кейс 2") + ЮТест.ОжидаетЧто(Интеграция.ВыполнитьЗапрос(Адрес, 10), Описание + ". Кейс 3") .Равно(20); КонецПроцедуры diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index eb31d2bc1..02cc3add6 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -303,18 +303,17 @@ Значение2 = ЮТест.Данные().СлучайнаяСтрока(); Значение3 = ЮТест.Данные().СлучайнаяСтрока(); Значение4 = ЮТест.Данные().СлучайнаяСтрока(); - Значение5 = ЮТест.Данные().СлучайнаяСтрока(); + Значение5 = Неопределено; Значение6 = ЮТест.Данные().СлучайнаяСтрока(); Значение7 = ЮТест.Данные().СлучайнаяСтрока(); Значение8 = ЮТест.Данные().СлучайнаяСтрока(); Значение9 = ЮТест.Данные().СлучайнаяСтрока(); - Значение10 = ЮТест.Данные().СлучайнаяСтрока(); - Результат = ЮТКоллекции.ЗначениеВМассиве(Значение1, Значение2, Значение3, Значение4, Значение5, Значение6, Значение7, Значение8, Значение9, Значение10); + Результат = ЮТКоллекции.ЗначениеВМассиве(Значение1, Значение2, Значение3, Значение4, , Значение6, Значение7, Значение8, Значение9); ЮТест.ОжидаетЧто(Результат, "Массив значений после добавления") .ИмеетТип("Массив") - .ИмеетДлину(10) + .ИмеетДлину(9) .Элемент(0).Равно(Значение1) .Элемент(1).Равно(Значение2) .Элемент(2).Равно(Значение3) @@ -323,8 +322,7 @@ .Элемент(5).Равно(Значение6) .Элемент(6).Равно(Значение7) .Элемент(7).Равно(Значение8) - .Элемент(8).Равно(Значение9) - .Элемент(9).Равно(Значение10); + .Элемент(8).Равно(Значение9); КонецПроцедуры diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 990d59a09..3adf5508e 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\237\321\200\320\265\320\264\320\270\320\272\320\260\321\202\321\213\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -46,11 +46,11 @@ Варианты = ЮТест.Варианты("Предикаты, ОжидаемоеЗначение") .Добавить(ЮТПредикаты, Истина) - .Добавить(Мокито.МассивПараметров(СтруктураПредикат), Истина) + .Добавить(ЮТКоллекции.ЗначениеВМассиве(СтруктураПредикат), Истина) .Добавить(СтруктураПредикат, Истина) - .Добавить(Мокито.МассивПараметров(Новый Структура), Ложь) - .Добавить(Мокито.МассивПараметров(Новый Структура("ЛюбойПараметр", 1)), Ложь) - .Добавить(Мокито.МассивПараметров(1, 2, 3), Ложь); + .Добавить(ЮТКоллекции.ЗначениеВМассиве(Новый Структура), Ложь) + .Добавить(ЮТКоллекции.ЗначениеВМассиве(Новый Структура("ЛюбойПараметр", 1)), Ложь) + .Добавить(ЮТКоллекции.ЗначениеВМассиве(1, 2, 3), Ложь); Для Каждого Вариант Из Варианты.СписокВариантов() Цикл ЮТест.ОжидаетЧто(ЮТПредикатыСлужебныйКлиентСервер.ЭтоПредикат(Вариант.Предикаты)).Равно(Вариант.ОжидаемоеЗначение); diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index 60c8326c8..191e09daa 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -55,6 +55,7 @@ .ДобавитьТест("НеИмеетДлину") .ДобавитьТест("ВыбрасываетИсключение") .ДобавитьТест("НеВыбрасываетИсключение") + .ДобавитьТест("УказаниеПараметровПоУмолчанию") .ДобавитьТест("ИмеетМетод") .ДобавитьСерверныйТест("ПроверкаМетодаВТранзакции").ВТранзакции(Ложь) .ДобавитьТест("ПроверкаМетодаВТранзакцииНаКлиенте", , , "КлиентУправляемоеПриложение") @@ -77,7 +78,8 @@ .ДобавитьТест("ЛюбойЭлементСоответствуетПредикату") .ДобавитьТест("СодержитПредикат") .ДобавитьТест("НеСодержитПредикат") - .ДобавитьТест("ФорматированныеСтроки"); + .ДобавитьТест("ФорматированныеСтроки") + ; Массив = ЮТКоллекции.ЗначениеВМассиве(0, 1, "2"); Список = Новый СписокЗначений(); @@ -1708,6 +1710,16 @@ КонецПроцедуры +Процедура УказаниеПараметровПоУмолчанию() Экспорт + + ЮТУтверждения.Что(ОМ_ЮТУтверждения) + .Метод("МетодСоЗначениеПоУмолчанию", ЮТМетоды.МассивПараметров(, "Исключение")) + .НеВыбрасываетИсключение("Значение отличается от значения по умолчанию") + .НеВыбрасываетИсключение() + ; + +КонецПроцедуры + Процедура ИмеетМетод() Экспорт ЮТест.ОжидаетЧто(ОМ_ЮТУтверждения) @@ -2548,6 +2560,16 @@ КонецФункции +Функция МетодСоЗначениеПоУмолчанию(Значение = 999, ОбязательноеЗначение) Экспорт + + Если Значение <> 999 Тогда + ВызватьИсключение "Значение отличается от значения по умолчанию"; + КонецЕсли; + + Возврат ОбязательноеЗначение; + +КонецФункции + Функция ЗаписатьОбъект(Объект) Экспорт Объект.Записать(); diff --git "a/tests/src/CommonModules/\320\237\320\276\320\264\320\277\320\270\321\201\320\272\320\270\320\235\320\260\320\241\320\276\320\261\321\213\321\202\320\270\321\217/Module.bsl" "b/tests/src/CommonModules/\320\237\320\276\320\264\320\277\320\270\321\201\320\272\320\270\320\235\320\260\320\241\320\276\320\261\321\213\321\202\320\270\321\217/Module.bsl" index 5ab296940..d6dca64a2 100644 --- "a/tests/src/CommonModules/\320\237\320\276\320\264\320\277\320\270\321\201\320\272\320\270\320\235\320\260\320\241\320\276\320\261\321\213\321\202\320\270\321\217/Module.bsl" +++ "b/tests/src/CommonModules/\320\237\320\276\320\264\320\277\320\270\321\201\320\272\320\270\320\235\320\260\320\241\320\276\320\261\321\213\321\202\320\270\321\217/Module.bsl" @@ -20,32 +20,32 @@ Процедура Расш1_ПередЗаписьюДокумента(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт // Собираем параметры в массив - ПараметрыМетода = Мокито.МассивПараметров(Источник, Отказ); - - // Отправляем данные на анализ - ПрерватьВыполнение = Ложь; - МокитоПерехват.АнализВызова(ПодпискиНаСобытия, "ПередЗаписьюДокумента", ПараметрыМетода, ПрерватьВыполнение); - - // Обрабатываем результат анализа - Если НЕ ПрерватьВыполнение Тогда - ПродолжитьВызов(Источник, Отказ); - КонецЕсли; - + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Источник, Отказ); + + // Отправляем данные на анализ + ПрерватьВыполнение = Ложь; + МокитоПерехват.АнализВызова(ПодпискиНаСобытия, "ПередЗаписьюДокумента", ПараметрыМетода, ПрерватьВыполнение); + + // Обрабатываем результат анализа + Если НЕ ПрерватьВыполнение Тогда + ПродолжитьВызов(Источник, Отказ); + КонецЕсли; + КонецПроцедуры &Вместо("ПередЗаписьюСправочника") Процедура Расш1_ПередЗаписьюСправочника(Источник, Отказ) Экспорт // Собираем параметры в массив - ПараметрыМетода = Мокито.МассивПараметров(Источник, Отказ); - - // Отправляем данные на анализ - ПрерватьВыполнение = Ложь; - МокитоПерехват.АнализВызова(ПодпискиНаСобытия, "ПередЗаписьюСправочника", ПараметрыМетода, ПрерватьВыполнение); - - // Обрабатываем результат анализа - Если НЕ ПрерватьВыполнение Тогда - ПродолжитьВызов(Источник, Отказ); - КонецЕсли; - + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Источник, Отказ); + + // Отправляем данные на анализ + ПрерватьВыполнение = Ложь; + МокитоПерехват.АнализВызова(ПодпискиНаСобытия, "ПередЗаписьюСправочника", ПараметрыМетода, ПрерватьВыполнение); + + // Обрабатываем результат анализа + Если НЕ ПрерватьВыполнение Тогда + ПродолжитьВызов(Источник, Отказ); + КонецЕсли; + КонецПроцедуры diff --git "a/tests/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" "b/tests/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" index 5db6d642a..749811bd4 100644 --- "a/tests/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" +++ "b/tests/src/Documents/\320\237\321\200\320\270\321\205\320\276\320\264\320\242\320\276\320\262\320\260\321\200\320\260/ObjectModule.bsl" @@ -19,7 +19,7 @@ &Вместо("ОбработкаПроведения") Процедура Расш1_ОбработкаПроведения(Отказ, Режим) - ПараметрыМетода = Мокито.МассивПараметров(Отказ, Режим); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Отказ, Режим); ПрерватьВыполнение = Ложь; МокитоПерехват.АнализВызова(ЭтотОбъект, "ОбработкаПроведения", ПараметрыМетода, ПрерватьВыполнение); diff --git "a/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/ManagerModule.bsl" "b/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/ManagerModule.bsl" index ca4460b4f..85a9ace4b 100644 --- "a/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/ManagerModule.bsl" +++ "b/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/ManagerModule.bsl" @@ -19,7 +19,7 @@ &Вместо("ЗаполненоКорректно") Процедура Расш1_ЗаполненоКорректно(НаборЗаписей) Экспорт - ПараметрыМетода = Мокито.МассивПараметров(НаборЗаписей); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(НаборЗаписей); ПрерватьВыполнение = Ложь; МокитоПерехват.АнализВызова(РегистрыСведений.ЦеныТоваров, "ЗаполненоКорректно", ПараметрыМетода, ПрерватьВыполнение); diff --git "a/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/RecordSetModule.bsl" "b/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/RecordSetModule.bsl" index c4786acf4..2e40cdb5c 100644 --- "a/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/RecordSetModule.bsl" +++ "b/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/RecordSetModule.bsl" @@ -19,7 +19,7 @@ &Вместо("ПередЗаписью") Процедура Расш1_ПередЗаписью(Отказ, Замещение) - ПараметрыМетода = Мокито.МассивПараметров(Отказ, Замещение); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Отказ, Замещение); ПрерватьВыполнение = Ложь; МокитоПерехват.АнализВызова(ЭтотОбъект, "ПередЗаписью", ПараметрыМетода, ПрерватьВыполнение); @@ -33,7 +33,7 @@ &Вместо("ОбработкаПроверкиЗаполнения") Процедура Расш1_ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) - ПараметрыМетода = Мокито.МассивПараметров(Отказ, ПроверяемыеРеквизиты); + ПараметрыМетода = ЮТКоллекции.ЗначениеВМассиве(Отказ, ПроверяемыеРеквизиты); ПрерватьВыполнение = Ложь; МокитоПерехват.АнализВызова(ЭтотОбъект, "ОбработкаПроверкиЗаполнения", ПараметрыМетода, ПрерватьВыполнение); From de795eb078592a994ca2dafe21728fde9c74a869 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 20:55:42 +0300 Subject: [PATCH 39/54] =?UTF-8?q?#288=20=D0=9F=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B7=D0=B0=D0=BC=D0=B5=D1=87=D0=B0=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 5 ++- .../Module.bsl" | 40 +++++++++---------- .../Module.bsl" | 4 ++ .../Module.bsl" | 32 +++++++++------ .../Module.bsl" | 2 +- 5 files changed, 45 insertions(+), 38 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" index 8d05a87ad..d02f324db 100644 --- "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" @@ -188,6 +188,7 @@ //@skip-check method-too-many-params // BSLLS:NumberOfOptionalParams-off // BSLLS:NumberOfParams-off +// BSLLS:DuplicateStringLiteral-off Функция МассивПараметров(Параметр1 = "_!%*", Параметр2 = "_!%*", Параметр3 = "_!%*", @@ -199,7 +200,7 @@ Параметр9 = "_!%*", Параметр10 = "_!%*") Экспорт - Возврат ЮТОбщийСлужебный.ЗначениеВМассивеПоУмолчанию(Мокито.ЛюбойПараметр(), + Возврат ЮТОбщийСлужебный.ЗначениеВМассивеПоУмолчанию(ЛюбойПараметр(), Параметр1, Параметр2, Параметр3, @@ -212,7 +213,7 @@ Параметр10); КонецФункции - +// BSLLS:DuplicateStringLiteral-on // BSLLS:NumberOfParams-on // BSLLS:NumberOfOptionalParams-on diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" index 136606495..afd0a06e8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\273\320\273\320\265\320\272\321\206\320\270\320\270/Module.bsl" @@ -324,8 +324,11 @@ // Значение10 - Произвольный // // Возвращаемое значение: -// Массив из Произвольный +// Массив из Произвольный - Массив переданных значений //@skip-check method-too-many-params +// BSLLS:NumberOfOptionalParams-off +// BSLLS:NumberOfParams-off +// BSLLS:DuplicateStringLiteral-off Функция ЗначениеВМассиве(Значение1, Значение2 = "_!%*", Значение3 = "_!%*", @@ -337,29 +340,22 @@ Значение9 = "_!%*", Значение10 = "_!%*") Экспорт - ФлагПустогоЗначения = "_!%*"; - Значения = Неопределено; - - Для Инд = -10 По -1 Цикл - - //@skip-check server-execution-safe-mode - Значение = Вычислить("Значение" + (-Инд)); - - Если Значение = ФлагПустогоЗначения Тогда - Продолжить; - КонецЕсли; - - Если Значения = Неопределено Тогда - Значения = Новый Массив(-Инд); - КонецЕсли; - - Значения[-Инд - 1] = Значение; - - КонецЦикла; - - Возврат Значения; + Возврат ЮТОбщийСлужебный.ЗначениеВМассивеПоУмолчанию(Неопределено, + Значение1, + Значение2, + Значение3, + Значение4, + Значение5, + Значение6, + Значение7, + Значение8, + Значение9, + Значение10); КонецФункции +// BSLLS:DuplicateStringLiteral-onsud +// BSLLS:NumberOfOptionalParams-on +// BSLLS:NumberOfParams-on // Возвращает соответствие элементов переданной коллекции, в качестве ключей выступают значения указанного поля элементов коллекции. // diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" index b6db791c3..0a5d72494 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" @@ -72,6 +72,7 @@ //@skip-check method-too-many-params // BSLLS:NumberOfOptionalParams-off // BSLLS:NumberOfParams-off +// BSLLS:DuplicateStringLiteral-off Функция МассивПараметров(Параметр1 = "_!%*", Параметр2 = "_!%*", Параметр3 = "_!%*", @@ -96,5 +97,8 @@ Параметр10); КонецФункции +// BSLLS:DuplicateStringLiteral-on +// BSLLS:NumberOfParams-on +// BSLLS:NumberOfOptionalParams-on #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index f06168a8a..1de44fced 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -36,19 +36,22 @@ // Параметры: // ЗначениеПоУмолчанию - Произвольный - Значение, подставляемое для пропущенных параметров // Значение1 - Произвольный -// Значение2 - Произвольный -// Значение3 - Произвольный -// Значение4 - Произвольный -// Значение5 - Произвольный -// Значение6 - Произвольный -// Значение7 - Произвольный -// Значение8 - Произвольный -// Значение9 - Произвольный +// Значение2 - Произвольный +// Значение3 - Произвольный +// Значение4 - Произвольный +// Значение5 - Произвольный +// Значение6 - Произвольный +// Значение7 - Произвольный +// Значение8 - Произвольный +// Значение9 - Произвольный // Значение10 - Произвольный // // Возвращаемое значение: -// Массив из Произвольный +// Массив из Произвольный - Массив переданных значений //@skip-check method-too-many-params +// BSLLS:NumberOfOptionalParams-off +// BSLLS:NumberOfParams-off +// BSLLS:DuplicateStringLiteral-off Функция ЗначениеВМассивеПоУмолчанию(ЗначениеПоУмолчанию, Значение1, Значение2 = "_!%*", @@ -64,30 +67,33 @@ ФлагПустогоЗначения = "_!%*"; Значения = Неопределено; - Для Инд = -10 По -1 Цикл + Для Инд = - 10 По - 1 Цикл //@skip-check server-execution-safe-mode - Значение = Вычислить("Значение" + (-Инд)); + Значение = Вычислить("Значение" + ( - Инд)); // BSLLS:ExecuteExternalCodeInCommonModule-off Если Значение = ФлагПустогоЗначения И Значения = Неопределено Тогда Продолжить; КонецЕсли; Если Значения = Неопределено Тогда - Значения = Новый Массив(-Инд); + Значения = Новый Массив(- Инд); КонецЕсли; Если Значение = ФлагПустогоЗначения Тогда Значение = ЗначениеПоУмолчанию; КонецЕсли; - Значения[-Инд - 1] = Значение; + Значения[ - Инд - 1] = Значение; КонецЦикла; Возврат Значения; КонецФункции +// BSLLS:DuplicateStringLiteral-on +// BSLLS:NumberOfParams-on +// BSLLS:NumberOfOptionalParams-on #КонецОбласти diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index 191e09daa..b92ddf7c5 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -2430,7 +2430,7 @@ Параметры = ЮТКоллекции.ЗначениеВМассиве(Параметр); ЮТест.ОжидаетЧто(ПроверяемоеЗначение); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурации("ЮТУтверждения", Утверждение, Параметры); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки("ЮТУтверждения", Утверждение, Параметры); Возврат Ошибка; From deab6c2fe20b34c72ac6915dcf9c60423b2e55bd Mon Sep 17 00:00:00 2001 From: alkoleft Date: Mon, 27 May 2024 21:18:16 +0300 Subject: [PATCH 40/54] =?UTF-8?q?#288=20=D0=9E=D0=BF=D0=B8=D1=81=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../features/assertions/assertions-base.md | 23 +++++++++++++++--- .../Module.bsl" | 2 +- .../Module.bsl" | 24 +++++++++++++++++-- .../Module.bsl" | 3 ++- 4 files changed, 45 insertions(+), 7 deletions(-) diff --git a/documentation/docs/features/assertions/assertions-base.md b/documentation/docs/features/assertions/assertions-base.md index 9e4cd80a2..294266883 100644 --- a/documentation/docs/features/assertions/assertions-base.md +++ b/documentation/docs/features/assertions/assertions-base.md @@ -532,20 +532,37 @@ API для проверки, выбрасываемых методом пров ```bsl ЮТУтверждения.Что(ОМ_ЮТУтверждения) - .Метод("МетодБезИсключение", ЮТКоллекции.ЗначениеВМассиве("Исключение")) + .Метод("МетодБезИсключение", ЮТМетоды.МассивПараметров("Исключение")) .НеВыбрасываетИсключение() .НеВыбрасываетИсключение("Ожидаемое исключение"); ЮТУтверждения.Что(ОМ_ЮТУтверждения) - .Метод("МетодИсключение", ЮТКоллекции.ЗначениеВМассиве("Исключение", 2)) + .Метод("МетодИсключение", ЮТМетоды.МассивПараметров("Исключение", 2)) .ВыбрасываетИсключение("Слишком много фактических параметров"); ЮТУтверждения.Что(ОМ_ЮТУтверждения) - .Метод("МетодИсключение", ЮТКоллекции.ЗначениеВМассиве("Исключение")) + .Метод("МетодИсключение", ЮТМетоды.МассивПараметров("Исключение")) .ВыбрасываетИсключение("Исключение"); ЮТУтверждения.Что(ОМ_ЮТУтверждения) .Метод("МетодБезИсключение") .ВыбрасываетИсключение("Недостаточно фактических параметров"); ``` +### Проверка вызова метода используя параметры по умолчанию + +Предположим, имеется метод + +```bsl +Функция МетодСоЗначениеПоУмолчанию(Значение = 999, ОбязательноеЗначение) Экспорт +``` + +Для проверки метода с использованием параметра по умолчанию, просто пропустите этот параметр при формировании массива параметров. + +```bsl +ЮТУтверждения.Что(ОМ_ЮТУтверждения) + .Метод("МетодСоЗначениеПоУмолчанию", ЮТМетоды.МассивПараметров(, "Исключение")) + .НеВыбрасываетИсключение() +; +``` + ### Проверка соответствия предикату ```bsl diff --git "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" index d02f324db..356c5103a 100644 --- "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276/Module.bsl" @@ -231,7 +231,7 @@ // Функция ПараметрПоУмолчанию() Экспорт - Возврат "<[ЗначениеВходногоПараметраПоУмолчанию]>"; + Возврат ЮТМетоды.ПараметрПоУмолчанию(); КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" index 0a5d72494..fa173c5cd 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\276\320\264\321\213/Module.bsl" @@ -25,6 +25,7 @@ // ИмяМетода - Строка - Имя метода // Параметры - Неопределено - Вызов метода без параметров // - Массив из Произвольный - Параметры вызова метода +// В качестве конструктора параметров можно использовать см. МассивПараметров Процедура ВызватьМетодМодуля(ИмяМодуля, ИмяМетода, Параметры = Неопределено) Экспорт #Если ВебКлиент Тогда @@ -42,6 +43,7 @@ // ИмяМетода - Строка - Имя метода // Параметры - Неопределено - Вызов метода без параметров // - Массив из Произвольный - Параметры вызова метода +// В качестве конструктора параметров можно использовать см. МассивПараметров Процедура ВызватьМетодОбъекта(Объект, ИмяМетода, Параметры = Неопределено) Экспорт #Если ВебКлиент Тогда @@ -53,7 +55,7 @@ КонецПроцедуры // Формирует массив параметров. Применяется при обучении (настройке) мокито. -// Если параметр пропущен, то будет использовать параметр по умолчанию +// Если параметр пропущен, то будет использовать параметр по умолчанию. // // Параметры: // Параметр1 - Произвольный @@ -84,7 +86,7 @@ Параметр9 = "_!%*", Параметр10 = "_!%*") Экспорт - Возврат ЮТОбщийСлужебный.ЗначениеВМассивеПоУмолчанию(Мокито.ПараметрПоУмолчанию(), + Возврат ЮТОбщийСлужебный.ЗначениеВМассивеПоУмолчанию(ПараметрПоУмолчанию(), Параметр1, Параметр2, Параметр3, @@ -101,4 +103,22 @@ // BSLLS:NumberOfParams-on // BSLLS:NumberOfOptionalParams-on +// Возвращает идентификатор значения входного параметра по умолчанию. +// +// Возвращаемое значение: +// Строка +// +// Примеры: +// +// ЮТТесты.ДобавитьТест("Тест1") +// .СПараметрами( +// Мокито.ПараметрПоУмолчанию(), +// 2); // Будет зарегистрирован один тест с параметрами <значение по умолчанию>, 2 +// +Функция ПараметрПоУмолчанию() Экспорт + + Возврат "<[ЗначениеВходногоПараметраПоУмолчанию]>"; + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index ce2e2723c..0012122af 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -53,7 +53,8 @@ // // Параметры: // ИмяМетода - Строка - Наименование метода -// ПараметрыМетода - Массив из Произвольный - Параметры вызываемого метода +// ПараметрыМетода - Массив из Произвольный - Параметры вызываемого метода. +// В качестве конструктора параметров можно использовать см. ЮТМетоды.МассивПараметров // // Возвращаемое значение: // ОбщийМодуль - Этот модуль для замыкания From 7232b02cc0ec81cf160490d3548175d733a21036 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Wed, 29 May 2024 00:59:16 +0300 Subject: [PATCH 41/54] =?UTF-8?q?#324=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA?= =?UTF-8?q?=D0=B0=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F=20?= =?UTF-8?q?=D1=81=D1=87=D0=B5=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 2 +- .../Module.bsl" | 18 ++-- .../Module.bsl" | 4 - .../Module.bsl" | 94 +++++++++++-------- .../Module.bsl" | 6 -- .../Module.bsl" | 22 +---- .../Module.bsl" | 62 ++++++++++++ ...0\266\320\265\320\275\320\270\320\265.mdo" | 11 +++ .../Module.bsl" | 6 -- .../Module.bsl" | 4 +- .../Module.bsl" | 14 +-- .../Module.bsl" | 26 +++++ .../Module.bsl" | 5 +- .../Template.txt" | 64 ++++++------- .../src/Configuration/Configuration.mdo | 1 + ...0\276\320\262\320\275\320\276\320\271.mdo" | 76 ++++++++++++++- .../Module.bsl" | 28 ++++++ 17 files changed, 309 insertions(+), 134 deletions(-) create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265.mdo" diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" index e83633770..a1274b11e 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\274\320\277\320\276\320\275\320\265\320\275\321\202\321\213/Module.bsl" @@ -110,7 +110,7 @@ Возврат ЮТСлужебныйПовторногоИспользования.ПодключитьКомпоненту(ИмяМакета, ИмяКомпоненты); КонецЕсли; - Если ЮТСтроки.ВерсияБольше(ЮТОкружениеСлужебныйКлиентСервер.ВерсияПлатформы(), "8.3.20") Тогда + Если ЮТСтроки.ВерсияБольше(ЮТОкружение.ВерсияПлатформы(), "8.3.20") Тогда ТипПодключения = ЮТМетодыСлужебный.ВычислитьБезопасно("ТипПодключенияВнешнейКомпоненты.НеИзолированно"); //@skip-check many-actual-parameters Возврат ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native, ТипПодключения); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" index bbb84fca8..1f1c92365 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -170,12 +170,10 @@ // * Ссылочный - Булево // * Регистр - Булево // * ОбработкаОтчет - Булево -// * СтандартныеРеквизиты - Булево -// * Реквизиты - Булево -// * Измерения - Булево -// * Ресурсы - Булево -// * РеквизитыАдресации - Булево +// * НаборыРеквизитов - Массив Из Строка // * ТабличныеЧасти - Булево +// * ВидыСубконто - Булево +// * УстановитьНовыйКод - Булево - Доступна автоустановка кода Функция ОписаниеТипаМетаданных() Экспорт Описание = Новый Структура(); @@ -184,14 +182,12 @@ Описание.Вставить("Конструктор", ""); Описание.Вставить("Группы", Ложь); Описание.Вставить("Ссылочный", Ложь); + Описание.Вставить("НаборыРеквизитов", Новый Массив); + Описание.Вставить("ТабличныеЧасти", Ложь); + Описание.Вставить("ВидыСубконто", Ложь); Описание.Вставить("Регистр", Ложь); Описание.Вставить("ОбработкаОтчет", Ложь); - Описание.Вставить("СтандартныеРеквизиты", Ложь); - Описание.Вставить("Реквизиты", Ложь); - Описание.Вставить("Измерения", Ложь); - Описание.Вставить("Ресурсы", Ложь); - Описание.Вставить("РеквизитыАдресации", Ложь); - Описание.Вставить("ТабличныеЧасти", Ложь); + Описание.Вставить("УстановитьНовыйКод", Ложь); Возврат Описание; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ec9ee5300..b93500beb 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -25,7 +25,3 @@ КонецФункции #КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 3f75db8e0..449ee2ae4 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -82,25 +82,17 @@ Возврат ОписаниеОбъект; КонецЕсли; - Если ОписаниеТипа.СтандартныеРеквизиты Тогда - ДобавитьОписанияРеквизитов(МетаданныеОбъекта.СтандартныеРеквизиты, ОписаниеОбъект.Реквизиты, "Ссылка, Период"); - КонецЕсли; - - Если ОписаниеТипа.Измерения Тогда - ДобавитьОписанияРеквизитов(МетаданныеОбъекта.Измерения, ОписаниеОбъект.Реквизиты, Истина); - КонецЕсли; - - Если ОписаниеТипа.Реквизиты Тогда - ДобавитьОписанияРеквизитов(МетаданныеОбъекта.Реквизиты, ОписаниеОбъект.Реквизиты, Ложь); - КонецЕсли; - - Если ОписаниеТипа.Ресурсы Тогда - ДобавитьОписанияРеквизитов(МетаданныеОбъекта.Ресурсы, ОписаниеОбъект.Реквизиты, Ложь); - КонецЕсли; - - Если ОписаниеТипа.РеквизитыАдресации Тогда - ДобавитьОписанияРеквизитов(МетаданныеОбъекта.РеквизитыАдресации, ОписаниеОбъект.Реквизиты, Ложь); - КонецЕсли; + Для Каждого НаборРеквизитов Из ОписаниеТипа.НаборыРеквизитов Цикл + Если СтрСравнить(НаборРеквизитов, "СтандартныеРеквизиты") Тогда + Ключ = "Ссылка, Период"; + ИначеЕсли СтрСравнить(НаборРеквизитов, "Измерения") Тогда + Ключ = Истина; + Иначе + Ключ = Ложь; + КонецЕсли; + + ДобавитьОписанияРеквизитов(МетаданныеОбъекта[НаборРеквизитов], ОписаниеОбъект.Реквизиты, Ключ); + КонецЦикла; ДобавитьОбщиеРеквизиты(МетаданныеОбъекта, ОписаниеОбъект.Реквизиты); @@ -115,6 +107,25 @@ КонецЕсли; + Если ОписаниеТипа.ВидыСубконто Тогда + + РеквизитыТабличнойЧасти = Новый Структура(); + + ОписаниеРеквизита = ОписаниеРеквизита("ВидСубконто", ЮТТипыДанныхСлужебный.НовыйТипСсылки(МетаданныеОбъекта.ВидыСубконто), Истина); + РеквизитыТабличнойЧасти.Вставить(ОписаниеРеквизита.Имя, ОписаниеРеквизита); + + ОписаниеРеквизита = ОписаниеРеквизита("Предопределенное", Новый ОписаниеТипов("Булево")); + РеквизитыТабличнойЧасти.Вставить(ОписаниеРеквизита.Имя, ОписаниеРеквизита); + + ОписаниеРеквизита = ОписаниеРеквизита("ТолькоОбороты", Новый ОписаниеТипов("Булево")); + РеквизитыТабличнойЧасти.Вставить(ОписаниеРеквизита.Имя, ОписаниеРеквизита); + + ДобавитьОписанияРеквизитов(МетаданныеОбъекта.ПризнакиУчетаСубконто, РеквизитыТабличнойЧасти, Ложь); + + ОписаниеОбъект.ТабличныеЧасти.Вставить("ВидыСубконто", РеквизитыТабличнойЧасти); + + КонецЕсли; + Возврат Новый ФиксированнаяСтруктура(ОписаниеОбъект); КонецФункции @@ -155,22 +166,22 @@ ТипыМетаданных = Новый Структура(); + //@skip-check structure-consructor-too-many-keys + ИменаОбработкаОтчет = Новый Структура("Обработка, Отчет, Report, DataProcessor"); + Для Каждого Запись Из КоллекцияОписаний Цикл - Описание = Новый Структура(); - Описание.Вставить("Имя", Запись.Имя); - Описание.Вставить("ИмяКоллекции", Запись.ИмяКоллекции); - Описание.Вставить("Конструктор", Запись.Конструктор); - Описание.Вставить("Группы", Запись.Группы = "+"); - Описание.Вставить("Ссылочный", Запись.Ссылочный = "+"); - Описание.Вставить("Реквизиты", Запись.Реквизиты = "+"); - Описание.Вставить("Измерения", Запись.Измерения = "+"); - Описание.Вставить("Ресурсы", Запись.Ресурсы = "+"); - Описание.Вставить("РеквизитыАдресации", Запись.РеквизитыАдресации = "+"); - Описание.Вставить("ТабличныеЧасти", Запись.ТабличныеЧасти = "+"); - Описание.Вставить("СтандартныеРеквизиты", Запись.СтандартныеРеквизиты = "+"); - Описание.Вставить("ОбработкаОтчет", Запись.Имя = "Обработка" ИЛИ Запись.Имя = "Отчет"); - Описание.Вставить("Регистр", СтрНачинаетсяС(Запись.Имя, "Регистр")); + Описание = ЮТМетаданные.ОписаниеТипаМетаданных(); + Описание.Имя = Запись.Имя; + Описание.ИмяКоллекции = Запись.ИмяКоллекции; + Описание.Конструктор = Запись.Конструктор; + Описание.НаборыРеквизитов = ЮТСтроки.РазделитьСтроку(Запись.Реквизиты, ","); + Описание.Группы = Запись.Группы = "+"; + Описание.Ссылочный = Запись.Ссылочный = "+"; + Описание.ТабличныеЧасти = Запись.ТабличныеЧасти = "+"; + Описание.ВидыСубконто = Запись.ВидыСубконто = "+"; + Описание.ОбработкаОтчет = ИменаОбработкаОтчет.Свойство(Запись.Имя); + Описание.Регистр = СтрНачинаетсяС(Запись.Имя, "Регистр") Или СтрЗаканчиваетсяНа(Запись.Имя, "Register"); ТипыМетаданных.Вставить(Описание.Имя, Описание); ТипыМетаданных.Вставить(Описание.ИмяКоллекции, Описание); @@ -208,12 +219,6 @@ КонецФункции -Функция ВариантВстроенногоЯзыка() Экспорт - - Возврат String(Metadata.ScriptVariant); - -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -354,4 +359,15 @@ КонецФункции +Функция ОписаниеРеквизита(Имя, Тип, Обязательное = Ложь) + + ОписаниеРеквизита = ЮТМетаданные.ОписаниеРеквизита(); + ОписаниеРеквизита.Имя = Имя; + ОписаниеРеквизита.Обязательный = Обязательное; + ОписаниеРеквизита.Тип = Тип; + + Возврат ОписаниеРеквизита; + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Module.bsl" index 23f46fc6a..634ecc234 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\237\320\276\320\262\321\202\320\230\321\201\320\277/Module.bsl" @@ -49,12 +49,6 @@ КонецФункции -Функция ВариантВстроенногоЯзыка() Экспорт - - Возврат ЮТМетаданныеСлужебныйВызовСервера.ВариантВстроенногоЯзыка(); - -КонецФункции - Функция ВерсияДвижка() Экспорт Возврат ЮТМетаданныеСлужебныйВызовСервера.ВерсияДвижка(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index cbf2e2068..5a7e2c1fc 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\261\321\211\320\270\320\271\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -45,14 +45,8 @@ ЮТИсключения.НеподдерживаемыйПараметрМетода("ЮТОбщийВызовСервера.Менеджер", Менеджер); КонецЕсли; - ИмяТипа = ""; - Если ЭтоАнглийскийВстроенныйЯзык() Тогда - ИмяТипа = СтрШаблон("%1Manager.%2", Описание.ОписаниеТипа.Имя, Описание.Имя); - Иначе - ИмяТипа = СтрШаблон("%1Менеджер.%2", Описание.ОписаниеТипа.Имя, Описание.Имя); - КонецЕсли; - - Возврат Новый(ИмяТипа); + Тип = ЮТТипыДанныхСлужебный.НовыйТипМенеджера(Описание); + Возврат Новый(Тип); КонецФункции @@ -104,18 +98,6 @@ Возврат ХранилищеЗначений.Получить(); КонецФункции -Функция ЭтоАнглийскийВстроенныйЯзык() Экспорт - - Возврат ЮТМетаданныеСлужебныйПовтИсп.ВариантВстроенногоЯзыка() = "English"; - -КонецФункции - -Функция ЭтоРусскийВстроенныйЯзык() Экспорт - - Возврат ЮТМетаданныеСлужебныйПовтИсп.ВариантВстроенногоЯзыка() = "Русский"; - -КонецФункции - Функция ХешMD5(Строка) Экспорт Хеш = Новый ХешированиеДанных(ХешФункция.MD5); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" new file mode 100644 index 000000000..95d2d12d1 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" @@ -0,0 +1,62 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область ПрограммныйИнтерфейс + +// Возвращает информацию об окружении +// +// Возвращаемое значение: +// см. ЮТФабрика.НовоеОписаниеОкружения +Функция ОписаниеОкружения() Экспорт + + //@skip-check constructor-function-return-section + Возврат ЮТКонтекстСлужебный.ЗначениеКонтекста("Окружение"); + +КонецФункции + +// Версия платформы. +// +// Возвращаемое значение: +// Строка - Версия платформы +Функция ВерсияПлатформы() Экспорт + + Возврат ЮТСлужебныйПовторногоИспользования.ВерсияПлатформы(); + +КонецФункции + +// Используется английский встроенный язык разработки. +// +// Возвращаемое значение: +// Булево - Используется английский встроенный язык +Функция ИспользуетсяАнглийскийВстроенныйЯзык() Экспорт + + Возврат СтрСравнить(ОписаниеОкружения().ВстроенныйЯзык, "en") = 0; + +КонецФункции + +// Используется русский встроенный язык разработки. +// +// Возвращаемое значение: +// Булево - Используется русский встроенный язык +Функция ИспользуетсяРусскийВстроенныйЯзык() Экспорт + + Возврат СтрСравнить(ОписаниеОкружения().ВстроенныйЯзык, "ru") = 0; + +КонецФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265.mdo" new file mode 100644 index 000000000..eee2565b4 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265.mdo" @@ -0,0 +1,11 @@ + + + ЮТОкружение + + ru + Окружение + + true + true + true + diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index dd280357a..ba3621ae2 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -68,12 +68,6 @@ КонецФункции -Функция ВерсияПлатформы() Экспорт - - Возврат ЮТСлужебныйПовторногоИспользования.ВерсияПлатформы(); - -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index dcdc965c0..9f67f07ee 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -37,7 +37,7 @@ КонецЕсли; Если ЗначениеЗаполнено(Наименование) Тогда - Если ЮТОбщийСлужебныйВызовСервера.ЭтоАнглийскийВстроенныйЯзык() Тогда + Если ЮТОкружение.ИспользуетсяАнглийскийВстроенныйЯзык() Тогда Данные.Вставить("Description", Наименование); Иначе Данные.Вставить("Наименование", Наименование); @@ -930,7 +930,7 @@ // ОбработкаОбъект.ЮТHTTPСервисЗапрос - Мок Функция HTTPСервисЗапрос() Экспорт - Если ЮТОбщийСлужебныйВызовСервера.ЭтоАнглийскийВстроенныйЯзык() Тогда + Если ЮТОкружение.ИспользуетсяАнглийскийВстроенныйЯзык() Тогда Возврат Обработки.ЮТHTTPServiceRequest.Создать(); Иначе Возврат Обработки.ЮТHTTPСервисЗапрос.Создать(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 2b7f8529e..5f820783a 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -22,7 +22,7 @@ ПараметрыЗаписи = ПараметрыЗаписи(ПараметрыЗаписи); - Объект = НовыйОбъект(Менеджер, Данные, + Объект = НовыйОбъект(Менеджер, Данные, ПараметрыЗаписи.ДополнительныеСвойства, ПараметрыЗаписи.УникальныйИдентификаторСсылки); КлючЗаписи = ЗаписатьОбъект(Объект, ПараметрыЗаписи); @@ -60,18 +60,17 @@ Если ДополнительныеСвойства <> Неопределено Тогда ЮТКоллекции.ДополнитьСтруктуру(Объект.ДополнительныеСвойства, ДополнительныеСвойства); КонецЕсли; - + Если УникальныйИдентификаторСсылки <> Неопределено И ОписаниеОбъектаМетаданных.ОписаниеТипа.Ссылочный Тогда Ссылка = Менеджер.ПолучитьСсылку(УникальныйИдентификаторСсылки); Объект.УстановитьСсылкуНового(Ссылка); КонецЕсли; Если ЭтоРегистр Тогда - ЗаполнитьНаборРегистра(Объект, Данные); Возврат Объект; - КонецЕсли; + ЗаполнитьЗначенияСвойств(Объект, Данные); Если ОписаниеОбъектаМетаданных.ОписаниеТипа.ТабличныеЧасти Тогда @@ -112,7 +111,7 @@ Если Ссылка = Неопределено ИЛИ ЮТТипыДанныхСлужебный.ЭтоТипПеречисления(ТипЗначения) Тогда Продолжить; КонецЕсли; - Если Привилегированно и НЕ ПривилегированныйРежим() Тогда + Если Привилегированно И НЕ ПривилегированныйРежим() Тогда УстановитьПривилегированныйРежим(Истина); КонецЕсли; Попытка @@ -335,7 +334,7 @@ Процедура ЗаполнитьБазовыеРеквизиты(Объект, ОписаниеОбъектаМетаданных) - АнглийскийЯзык = ЮТОбщийСлужебныйВызовСервера.ЭтоАнглийскийВстроенныйЯзык(); + АнглийскийЯзык = ЮТОкружение.ИспользуетсяАнглийскийВстроенныйЯзык(); ИмяТипаДокумент = ?(АнглийскийЯзык, "Document", "Документ"); ИмяРеквизитаКод = ?(АнглийскийЯзык, "Code", "Код"); ИмяРеквизитаНаименование = ?(АнглийскийЯзык, "Description", "Наименование"); @@ -350,7 +349,8 @@ КонецЕсли; КонецЕсли; - Если ОписаниеОбъектаМетаданных.Реквизиты.Свойство(ИмяРеквизитаКод) + Если ОписаниеОбъектаМетаданных.ОписаниеТипа.УстановитьНовыйКод + И ОписаниеОбъектаМетаданных.Реквизиты.Свойство(ИмяРеквизитаКод) И ОписаниеОбъектаМетаданных.Реквизиты[ИмяРеквизитаКод].Обязательный И НЕ ЗначениеЗаполнено(Объект.Код) Тогда Объект.УстановитьНовыйКод(); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\270\320\277\321\213\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\270\320\277\321\213\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index ed011211c..39759a40c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\270\320\277\321\213\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\270\320\277\321\213\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -228,4 +228,30 @@ КонецФункции +Функция НовыйТипСсылки(ОбъектМетаданных) Экспорт + + ВидТипа = ?(ЮТОкружение.ИспользуетсяРусскийВстроенныйЯзык(), "Ссылка", "Ref"); + Возврат НовыйТип(ОбъектМетаданных, ВидТипа); + +КонецФункции + +Функция НовыйТипМенеджера(ОбъектМетаданных) Экспорт + + ВидТипа = ?(ЮТОкружение.ИспользуетсяРусскийВстроенныйЯзык(), "Менеджер", "Manager"); + Возврат НовыйТип(ОбъектМетаданных, ВидТипа); + +КонецФункции + +Функция НовыйТип(ОбъектМетаданных, ВидТипа = "Ссылка") Экспорт + + Если ЮТМетаданныеСлужебный.ЭтоОписаниеОбъектаМетаданных(ОбъектМетаданных) Тогда + ИмяТипа = СтрШаблон("%1%2.%3", ОбъектМетаданных.ОписаниеТипа.Имя, ВидТипа, ОбъектМетаданных.Имя); + Иначе + ИмяТипа = СтрЗаменить(ОбъектМетаданных.ПолноеИмя(), ".", ВидТипа + "."); + КонецЕсли; + + Возврат Тип(ИмяТипа); + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" index 13b856bc1..6ef2156ed 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\265\321\201\321\202/Module.bsl" @@ -223,11 +223,10 @@ // Возвращает информацию об окружении. // // Возвращаемое значение: -// см. ЮТФабрика.НовоеОписаниеОкружения +// см. ЮТОкружение.ОписаниеОкружения Функция Окружение() Экспорт - //@skip-check constructor-function-return-section - Возврат ЮТКонтекстСлужебный.ЗначениеКонтекста("Окружение"); + Возврат ЮТОкружение.ОписаниеОкружения(); КонецФункции diff --git "a/exts/yaxunit/src/CommonTemplates/\320\256\320\242\320\236\320\277\320\270\321\201\320\260\320\275\320\270\320\265\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205/Template.txt" "b/exts/yaxunit/src/CommonTemplates/\320\256\320\242\320\236\320\277\320\270\321\201\320\260\320\275\320\270\320\265\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205/Template.txt" index 9ffce5ff6..2151a0ddc 100644 --- "a/exts/yaxunit/src/CommonTemplates/\320\256\320\242\320\236\320\277\320\270\321\201\320\260\320\275\320\270\320\265\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205/Template.txt" +++ "b/exts/yaxunit/src/CommonTemplates/\320\256\320\242\320\236\320\277\320\270\321\201\320\260\320\275\320\270\320\265\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205/Template.txt" @@ -1,34 +1,34 @@ # Описание свойств метаданных -| Имя | ИмяКоллекции | Конструктор | Группы | Ссылочный | Реквизиты | Измерения | Ресурсы | РеквизитыАдресации | ТабличныеЧасти | СтандартныеРеквизиты | -|----------------------------|-----------------------------|-----------------------|--------|-----------|-----------|-----------|---------|--------------------|----------------|----------------------| -| Справочник | Справочники | СоздатьЭлемент | + | + | + | | | | + | + | -| Документ | Документы | СоздатьДокумент | | + | + | | | | + | + | -| ПланВидовХарактеристик | ПланыВидовХарактеристик | СоздатьЭлемент | + | + | + | | | | + | + | -| ПланСчетов | ПланыСчетов | СоздатьСчет | | + | + | | | | + | + | -| ПланВидовРасчета | ПланыВидовРасчета | СоздатьВидРасчета | | + | + | | | | + | + | -| ПланОбмена | ПланыОбмена | СоздатьУзел | | + | + | | | | + | + | -| РегистрСведений | РегистрыСведений | СоздатьНаборЗаписей | | | + | + | + | | | + | -| РегистрНакопления | РегистрыНакопления | | | | + | + | + | | | + | -| РегистрБухгалтерии | РегистрыБухгалтерии | | | | + | + | + | | | + | -| РегистрРасчета | РегистрыРасчета | | | | + | + | + | | | + | -| БизнесПроцесс | БизнесПроцессы | СоздатьБизнесПроцесс | | + | + | | | | + | + | -| Задача | Задачи | СоздатьЗадачу | | + | + | | | + | + | + | -| Перечисление | Перечисления | | | + | | | | | | + | -| Отчет | Отчеты | | | | + | | | | + | | -| Обработка | Обработки | | | | + | | | | + | | -| Catalog | Catalogs | СоздатьЭлемент | + | + | + | | | | + | + | -| Document | Documents | СоздатьДокумент | | + | + | | | | + | + | -| ChartOfCharacteristicTypes | ChartsOfCharacteristicTypes | СоздатьЭлемент | + | + | + | | | | + | + | -| ChartOfAccounts | ChartsOfAccounts | СоздатьСчет | | + | + | | | | + | + | -| ChartOfCalculationTypes | ChartsOfCalculationTypes | СоздатьВидРасчета | | + | + | | | | + | + | -| ExchangePlan | ExchangePlans | СоздатьУзел | | + | + | | | | + | + | -| InformationRegister | InformationRegisters | СоздатьНаборЗаписей | | | + | + | + | | | + | -| AccumulationRegister | AccumulationRegisters | | | | + | + | + | | | + | -| AccountingRegister | AccountingRegisters | | | | + | + | + | | | + | -| CalculationRegister | CalculationRegisters | | | | + | + | + | | | + | -| BusinessProcess | BusinessProcesses | СоздатьБизнесПроцесс | | + | + | | | | + | + | -| Task | Tasks | СоздатьЗадачу | | + | + | | | + | + | + | -| Enum | Enums | | | + | | | | | | + | -| Report | Reports | | | | + | | | | + | | -| DataProcessor | DataProcessors | | | | + | | | | + | | +| Имя | ИмяКоллекции | Конструктор | Группы | Ссылочный | ТабличныеЧасти | ВидыСубконто | Реквизиты | УстановитьНовыйКод | +|----------------------------|-----------------------------|----------------------|--------|-----------|----------------|--------------|-----------------------------------------------------|--------------------| +| Справочник | Справочники | СоздатьЭлемент | + | + | + | | Реквизиты, СтандартныеРеквизиты | + | +| Документ | Документы | СоздатьДокумент | | + | + | | Реквизиты, СтандартныеРеквизиты | | +| ПланВидовХарактеристик | ПланыВидовХарактеристик | СоздатьЭлемент | + | + | + | | Реквизиты, СтандартныеРеквизиты | + | +| ПланСчетов | ПланыСчетов | СоздатьСчет | | + | + | + | Реквизиты, СтандартныеРеквизиты, ПризнакиУчета | | +| ПланВидовРасчета | ПланыВидовРасчета | СоздатьВидРасчета | | + | + | | Реквизиты, СтандартныеРеквизиты | | +| ПланОбмена | ПланыОбмена | СоздатьУзел | | + | + | | Реквизиты, СтандартныеРеквизиты | + | +| РегистрСведений | РегистрыСведений | СоздатьНаборЗаписей | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| РегистрНакопления | РегистрыНакопления | | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| РегистрБухгалтерии | РегистрыБухгалтерии | | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| РегистрРасчета | РегистрыРасчета | | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| БизнесПроцесс | БизнесПроцессы | СоздатьБизнесПроцесс | | + | + | | Реквизиты, СтандартныеРеквизиты | | +| Задача | Задачи | СоздатьЗадачу | | + | + | | Реквизиты, РеквизитыАдресации, СтандартныеРеквизиты | | +| Перечисление | Перечисления | | | + | | | СтандартныеРеквизиты | | +| Отчет | Отчеты | | | | + | | Реквизиты | | +| Обработка | Обработки | | | | + | | Реквизиты | | +| Catalog | Catalogs | СоздатьЭлемент | + | + | + | | Реквизиты, СтандартныеРеквизиты | + | +| Document | Documents | СоздатьДокумент | | + | + | | Реквизиты, СтандартныеРеквизиты | | +| ChartOfCharacteristicTypes | ChartsOfCharacteristicTypes | СоздатьЭлемент | + | + | + | | Реквизиты, СтандартныеРеквизиты | + | +| ChartOfAccounts | ChartsOfAccounts | СоздатьСчет | | + | + | + | Реквизиты, СтандартныеРеквизиты, ПризнакиУчета | | +| ChartOfCalculationTypes | ChartsOfCalculationTypes | СоздатьВидРасчета | | + | + | | Реквизиты, СтандартныеРеквизиты | | +| ExchangePlan | ExchangePlans | СоздатьУзел | | + | + | | Реквизиты, СтандартныеРеквизиты | + | +| InformationRegister | InformationRegisters | СоздатьНаборЗаписей | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| AccumulationRegister | AccumulationRegisters | | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| AccountingRegister | AccountingRegisters | | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| CalculationRegister | CalculationRegisters | | | | | | Реквизиты, Ресурсы, СтандартныеРеквизиты, Измерения | | +| BusinessProcess | BusinessProcesses | СоздатьБизнесПроцесс | | + | + | | Реквизиты, СтандартныеРеквизиты | | +| Task | Tasks | СоздатьЗадачу | | + | + | | Реквизиты, РеквизитыАдресации, СтандартныеРеквизиты | | +| Enum | Enums | | | + | | | СтандартныеРеквизиты | | +| Report | Reports | | | | + | | Реквизиты | | +| DataProcessor | DataProcessors | | | | + | | Реквизиты | | \ No newline at end of file diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index aa945105b..f2d7a456a 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -100,6 +100,7 @@ CommonModule.ЮТОбщий CommonModule.ЮТОбщийСлужебный CommonModule.ЮТОбщийСлужебныйВызовСервера + CommonModule.ЮТОкружение CommonModule.ЮТОкружениеСлужебныйКлиентСервер CommonModule.ЮТОтчетAllureСлужебный CommonModule.ЮТОтчетJSONСлужебный diff --git "a/fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" "b/fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" index 77ff20a5f..c783cf73a 100644 --- "a/fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" +++ "b/fixtures/demo-configuration/src/ChartsOfAccounts/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271/\320\236\321\201\320\275\320\276\320\262\320\275\320\276\320\271.mdo" @@ -20,7 +20,7 @@ DontUse DontUse Managed - Use + DontUse ChartOfCharacteristicTypes.ВидыСубконто 3 9 @@ -72,7 +72,7 @@ - Use + DontUse Use
@@ -100,7 +100,7 @@ Use - Use + DontUse
@@ -117,6 +117,34 @@ Use + + Валютный + + ru + Валютный + + + Boolean + + + + Use + + + + Количественный + + ru + Количественный + + + Boolean + + + + Use + + ПризнакУчетаСубконто @@ -131,4 +159,46 @@ Use + + Суммовой + + ru + Суммовой + + + Boolean + + + + Use + + + + Валютный + + ru + Валютный + + + Boolean + + + + Use + + + + Количественный + + ru + Количественный + + + Boolean + + + + Use + + diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" index 33d020e71..c8ea18121 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Module.bsl" @@ -24,6 +24,7 @@ .УдалениеТестовыхДанных() .ДобавитьТест("ЗаполнитьСправочник") .ДобавитьТест("ЗаполнитьДокумент") + .ДобавитьТест("ЗаполнитьСчет") .ДобавитьТест("СоздатьЗаписьРегистраСведений") .ДобавитьТест("СоздатьЗаписьРегистраСведений_ОбменДанными") .ДобавитьТест("Фикция") @@ -350,4 +351,31 @@ КонецПроцедуры +Процедура ЗаполнитьСчет() Экспорт + + Счет = ЮТест.Данные().КонструкторОбъекта("ПланыСчетов.Основной") + .Установить("Валютный", Истина) + .Установить("Количественный", Истина) + .ТабличнаяЧасть("ВидыСубконто") + .ДобавитьСтроку() + .Установить("ВидСубконто", ПредопределенноеЗначение("ПланВидовХарактеристик.ВидыСубконто.Валюта")) + .Фикция("Суммовой") + .Установить("Валютный", Истина) + .Установить("Количественный", Истина) + .ДобавитьСтроку() + .ФикцияОбязательныхПолей() + .ДобавитьСтроку() + .Установить("ВидСубконто", ПредопределенноеЗначение("ПланВидовХарактеристик.ВидыСубконто.РасчетныйСчетКонтрагента")) + .Установить("ТолькоОбороты", Истина) + .Установить("Предопределенное", Ложь) + .Записать(Ложь, Истина) + ; + + ЮТест.ОжидаетЧто(Счет) + .Заполнено() + .ИмеетТип("ПланСчетовСсылка.Основной") + ; + +КонецПроцедуры + #КонецОбласти From 91ac798bde845971351e0dbcdf79ec167c7fd98e Mon Sep 17 00:00:00 2001 From: alkoleft Date: Wed, 29 May 2024 01:12:12 +0300 Subject: [PATCH 42/54] =?UTF-8?q?#324=20=D0=9F=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B7=D0=B0=D0=BC=D0=B5=D1=87=D0=B0=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 78 +++++++++++-------- 1 file changed, 47 insertions(+), 31 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 5f820783a..fdb0efeee 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -105,33 +105,13 @@ Ошибки = Новый Массив; + Если Привилегированно И НЕ ПривилегированныйРежим() Тогда + УстановитьПривилегированныйРежим(Истина); + КонецЕсли; + Для Каждого Ссылка Из Ссылки Цикл - ТипЗначения = ТипЗнч(Ссылка); - Если Ссылка = Неопределено ИЛИ ЮТТипыДанныхСлужебный.ЭтоТипПеречисления(ТипЗначения) Тогда - Продолжить; - КонецЕсли; - Если Привилегированно И НЕ ПривилегированныйРежим() Тогда - УстановитьПривилегированныйРежим(Истина); - КонецЕсли; - Попытка - Если ЮТТипыДанныхСлужебный.ЭтоСсылочныйТип(ТипЗначения) Тогда - Объект = Ссылка.ПолучитьОбъект(); - Если Объект <> Неопределено Тогда - Объект.Удалить(); - КонецЕсли; - Иначе - Менеджер = ЮТОбщий.Менеджер(ТипЗначения); - Запись = Менеджер.СоздатьМенеджерЗаписи(); - ЗаполнитьЗначенияСвойств(Запись, Ссылка); - Запись.Прочитать(); - Запись.Удалить(); - КонецЕсли; - Исключение - - Ошибки.Добавить(ЮТРегистрацияОшибокСлужебный.ПредставлениеОшибки("Удаление " + Ссылка, ИнформацияОбОшибке())); - - КонецПопытки; + УдалитьСсылку(Ссылка, Ошибки); КонецЦикла; @@ -349,17 +329,22 @@ КонецЕсли; КонецЕсли; - Если ОписаниеОбъектаМетаданных.ОписаниеТипа.УстановитьНовыйКод + УстановитьНовыйКод = ОписаниеОбъектаМетаданных.ОписаниеТипа.УстановитьНовыйКод И ОписаниеОбъектаМетаданных.Реквизиты.Свойство(ИмяРеквизитаКод) И ОписаниеОбъектаМетаданных.Реквизиты[ИмяРеквизитаКод].Обязательный - И НЕ ЗначениеЗаполнено(Объект.Код) Тогда + И Не ЗначениеЗаполнено(Объект.Код); + + УстановитьНаименование = ОписаниеОбъектаМетаданных.Реквизиты.Свойство(ИмяРеквизитаНаименование) + И ОписаниеОбъектаМетаданных.Реквизиты[ИмяРеквизитаНаименование].Обязательный + И НЕ ЗначениеЗаполнено(Объект.Наименование); + + Если УстановитьНовыйКод Тогда Объект.УстановитьНовыйКод(); КонецЕсли; - Если ОписаниеОбъектаМетаданных.Реквизиты.Свойство(ИмяРеквизитаНаименование) - И ОписаниеОбъектаМетаданных.Реквизиты[ИмяРеквизитаНаименование].Обязательный - И НЕ ЗначениеЗаполнено(Объект.Наименование) Тогда - Объект.Наименование = ЮТТестовыеДанные.СлучайнаяСтрока(); + Если УстановитьНаименование Тогда + РеквизитНаименование = ОписаниеОбъектаМетаданных.Реквизиты[ИмяРеквизитаНаименование]; + Объект.Наименование = ЮТТестовыеДанные.Фикция(РеквизитНаименование.Тип); КонецЕсли; КонецПроцедуры @@ -429,4 +414,35 @@ КонецПроцедуры +Процедура УдалитьСсылку(Ссылка, ОшибкиОбработки) + + ТипЗначения = ТипЗнч(Ссылка); + + Если Ссылка = Неопределено ИЛИ ЮТТипыДанныхСлужебный.ЭтоТипПеречисления(ТипЗначения) Тогда + Возврат; + КонецЕсли; + + Попытка + + Если ЮТТипыДанныхСлужебный.ЭтоСсылочныйТип(ТипЗначения) Тогда + Объект = Ссылка.ПолучитьОбъект(); + Если Объект <> Неопределено Тогда + Объект.Удалить(); + КонецЕсли; + Иначе + Менеджер = ЮТОбщий.Менеджер(ТипЗначения); + Запись = Менеджер.СоздатьМенеджерЗаписи(); + ЗаполнитьЗначенияСвойств(Запись, Ссылка); + Запись.Прочитать(); + Запись.Удалить(); + КонецЕсли; + + Исключение + + ОшибкиОбработки.Добавить(ЮТРегистрацияОшибокСлужебный.ПредставлениеОшибки("Удаление " + Ссылка, ИнформацияОбОшибке())); + + КонецПопытки; + +КонецПроцедуры + #КонецОбласти From d83bf5bf3a9bc168fab491c0b20c44fa7394c660 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Wed, 29 May 2024 01:22:09 +0300 Subject: [PATCH 43/54] =?UTF-8?q?#324=20=D0=A0=D0=B0=D0=BF=D1=80=D0=B5?= =?UTF-8?q?=D0=B4=D0=B5=D0=BB=D0=B8=D0=BB=20=D0=BC=D0=BE=D0=B4=D1=83=D0=BB?= =?UTF-8?q?=D0=B8=20=D0=BF=D0=BE=20=D0=BF=D0=BE=D0=B4=D1=81=D0=B8=D1=81?= =?UTF-8?q?=D1=82=D0=B5=D0=BC=D0=B0=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 4 ---- ...75\320\270\321\202\320\265\320\273\321\214.mdo" | 3 +++ ...76\320\262\320\260\320\275\320\270\320\265.mdo" | 1 + ...41\320\265\321\200\320\262\320\270\321\201.mdo" | 14 ++++++++++++++ ...24\320\260\320\275\320\275\321\213\320\265.mdo" | 1 + ...73\320\270\321\207\320\275\321\213\320\271.mdo" | 2 ++ 6 files changed, 21 insertions(+), 4 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index e2591bd98..bab91f8e9 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\321\202\321\207\320\265\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -26,7 +26,3 @@ КонецФункции #КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -#КонецОбласти diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214.mdo" index fc20d748a..ac82efb27 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214.mdo" @@ -10,14 +10,17 @@ ru Функциональность запуска тестирования + CommonModule.ЮТест CommonModule.ЮТИсполнительСлужебныйВызовСервера CommonModule.ЮТИсполнительСлужебныйГлобальный CommonModule.ЮТИсполнительСлужебныйКлиент CommonModule.ЮТИсполнительСлужебныйКлиентСервер CommonModule.ЮТПараметрыЗапускаСлужебный + CommonModule.ЮТТесты CommonModule.ЮТТестыСлужебный CommonModule.ЮТФильтрацияСлужебный CommonModule.ЮТЧитательСлужебный CommonModule.ЮТЧитательСлужебныйВызовСервера + DataProcessor.ЮТЮнитТесты Subsystem.ЮТДвижок diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.mdo" index 3d16e0022..e65bdd9ec 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265/\320\256\320\242\320\234\320\276\320\272\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.mdo" @@ -10,6 +10,7 @@ ru Содержит функциональности мокирования данных + CommonModule.Мокито CommonModule.МокитоОбучение CommonModule.МокитоПерехват CommonModule.МокитоПроверки diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" index 49ce33575..fd6c914b6 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" @@ -13,23 +13,35 @@ CommonModule.ЮТАсинхроннаяОбработкаСлужебныйКлиент CommonModule.ЮТЗависимости CommonModule.ЮТЗависимостиСлужебный + CommonModule.ЮТЗависимостиСлужебныйВызовСервера + CommonModule.ЮТЗависимостиСлужебныйКлиент CommonModule.ЮТИсключения + CommonModule.ЮТИсполнительСлужебныйСервер + CommonModule.ЮТКоллекции CommonModule.ЮТКомпоненты CommonModule.ЮТКомпонентыСлужебныйВызовСервера CommonModule.ЮТКомпонентыСлужебныйКлиент CommonModule.ЮТКонтекстИсполненияСлужебныйКлиентСервер + CommonModule.ЮТЛогирование CommonModule.ЮТЛогированиеСлужебныйВызовСервера CommonModule.ЮТЛогИсполненияТестаСлужебный CommonModule.ЮТЛокальСлужебный + CommonModule.ЮТМетаданные CommonModule.ЮТМетаданныеСлужебный CommonModule.ЮТМетаданныеСлужебныйВызовСервера CommonModule.ЮТМетаданныеСлужебныйПовтИсп + CommonModule.ЮТМетоды CommonModule.ЮТМетодыСлужебный CommonModule.ЮТНастройкиВыполнения + CommonModule.ЮТОбщий + CommonModule.ЮТОбщийСлужебный CommonModule.ЮТОбщийСлужебныйВызовСервера + CommonModule.ЮТОкружение CommonModule.ЮТОкружениеСлужебныйКлиентСервер CommonModule.ЮТОтчетСлужебный + CommonModule.ЮТОтчетСлужебныйКлиентСервер CommonModule.ЮТПодключаемыеМодулиСлужебный + CommonModule.ЮТПодключаемыеМодулиСлужебныйВызовСервера CommonModule.ЮТПроверкиСлужебный CommonModule.ЮТРазрешениеЗависимостейСлужебныйВызовСервера CommonModule.ЮТРазрешениеЗависимостейСлужебныйКлиент @@ -38,7 +50,9 @@ CommonModule.ЮТСлужебныйПовторногоИспользования CommonModule.ЮТСобытияСлужебный CommonModule.ЮТСообщенияСлужебный + CommonModule.ЮТСтроки CommonModule.ЮТТипыДанныхСлужебный + CommonModule.ЮТФабрика CommonModule.ЮТФабрикаСлужебный CommonModule.ЮТФайлы CommonPicture.ЮТЗапустить diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265.mdo" index 4544f5ea1..9c4b69b2a 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265.mdo" @@ -10,6 +10,7 @@ ru Реализация генерации и работы с тестовыми данными + CommonModule.ЮТЗапросы CommonModule.ЮТКонструкторВариантов CommonModule.ЮТКонструкторТестовыхДанныхСлужебный CommonModule.ЮТПреобразованияСлужебный diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271.mdo" index fc26f7c5c..766d0179e 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271/\320\256\320\242\320\237\321\203\320\261\320\273\320\270\321\207\320\275\321\213\320\271.mdo" @@ -28,8 +28,10 @@ CommonModule.ЮТКонтекстТеста CommonModule.ЮТЛогирование CommonModule.ЮТМетаданные + CommonModule.ЮТМетоды CommonModule.ЮТНастройкиВыполнения CommonModule.ЮТОбщий + CommonModule.ЮТОкружение CommonModule.ЮТПодражатель CommonModule.ЮТПодражатель_Банки CommonModule.ЮТПодражатель_Компании From 69b0f4d71847d427a14e2c3bbc6c613292dea8de Mon Sep 17 00:00:00 2001 From: alkoleft Date: Thu, 30 May 2024 00:20:34 +0300 Subject: [PATCH 44/54] Fix build for PR --- .github/workflows/step-export-xml.yml | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/.github/workflows/step-export-xml.yml b/.github/workflows/step-export-xml.yml index 91b4055a5..def41e8ef 100644 --- a/.github/workflows/step-export-xml.yml +++ b/.github/workflows/step-export-xml.yml @@ -28,10 +28,19 @@ jobs: outputs: yaxunit_version: ${{ steps.extract_version.outputs.version }} steps: - - uses: actions/checkout@v4 - - - name: Extract version + - name: Checkout PR + if: github.event_name == 'pull_request_target' || github.event_name == 'pull_request' + uses: actions/checkout@v4 + with: + # Для поддержки pull_request и pull_request_target + # https://github.com/android-password-store/Android-Password-Store/pull/1247 + ref: refs/pull/${{ github.event.number }}/merge + + - name: Checkout ${{github.ref}} if: github.event_name == 'push' + uses: actions/checkout@v4 + + - name: Extract version shell: bash run: echo "version=$(cat ./exts/yaxunit/src/Configuration/Configuration.mdo | grep -oP '(?<=)[\d.]+')" >> $GITHUB_OUTPUT id: extract_version From a2904f53815c03591da81db23a091a3fe3d29770 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Sat, 13 Apr 2024 22:27:31 +0300 Subject: [PATCH 45/54] =?UTF-8?q?#316=20=D0=9E=D0=BF=D1=82=D0=B8=D0=BC?= =?UTF-8?q?=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BA=D0=BB=D0=B8=D0=B5?= =?UTF-8?q?=D0=BD=D1=82=20=D1=81=D0=B5=D1=80=D0=B2=D0=B5=D1=80=D0=BD=D0=BE?= =?UTF-8?q?=D0=B3=D0=BE=20=D0=B2=D0=B7=D0=B0=D0=B8=D0=BC=D0=BE=D0=B4=D0=B5?= =?UTF-8?q?=D0=B9=D1=81=D1=82=D0=B2=D0=B8=D1=8F=20=D0=BA=D0=BE=D0=BD=D1=82?= =?UTF-8?q?=D0=B5=D0=BA=D1=81=D1=82=D0=BE=D0=B2=20=D0=A0=D0=B5=D1=84=D0=B0?= =?UTF-8?q?=D0=BA=D1=82=D0=BE=D1=80=D0=B8=D0=BD=D0=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 88 +++++++++---------- .../Module.bsl" | 3 +- .../Module.bsl" | 4 + .../Module.bsl" | 34 ++++--- .../Module.bsl" | 14 ++- .../Module.bsl" | 41 +++++---- .../Module.bsl" | 4 +- .../Module.bsl" | 4 +- .../Module.bsl" | 14 ++- .../Module.bsl" | 50 ----------- ...0\265\320\261\320\275\321\213\320\271.mdo" | 11 --- .../Module.bsl" | 5 +- .../Module.bsl" | 44 ++++++++++ .../Module.bsl" | 18 ---- .../Module.bsl" | 14 ++- .../Module.bsl" | 46 ++++++---- .../Module.bsl" | 4 +- .../Module.bsl" | 2 +- .../Module.bsl" | 9 +- .../Module.bsl" | 9 +- .../Module.bsl" | 23 +++++ .../Module.bsl" | 2 - .../src/Configuration/Configuration.mdo | 1 - ...0\265\321\200\320\262\320\270\321\201.mdo" | 1 - ...0\267\320\260\321\206\320\270\321\217.mdo" | 4 + .../Module.bsl" | 2 +- .../Module.bsl" | 16 ++-- .../Module.bsl" | 2 - 28 files changed, 244 insertions(+), 225 deletions(-) delete mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" delete mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" diff --git "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 142426c91..4b30e7ced 100644 --- "a/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\234\320\276\320\272\320\270\321\202\320\276\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -51,6 +51,12 @@ КонецФункции +Процедура СброситьПараметры() Экспорт + + ИнициализироватьНастройки(); + +КонецПроцедуры + #Область СтруктурыДанных Функция РежимыРаботы() Экспорт @@ -227,6 +233,42 @@ КонецФункции +Функция УсловиеИзПараметров(Параметры) Экспорт + + Если Параметры = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + + Условия = Новый Массив; + + ТипыУсловий = ТипыУсловийПараметров(); + + Для Каждого Параметр Из Параметры Цикл + + Если ЭтоМаскаПарамера(Параметр) Тогда + + Условия.Добавить(Параметр); + + ИначеЕсли ЮТПредикатыСлужебныйКлиентСервер.ЭтоПредикат(Параметр) Тогда + + Маска = ОписаниеМаскиПараметра(ТипыУсловий.Предикат, 90); + Маска.Вставить("Предикат", ЮТПредикатыСлужебныйКлиентСервер.НаборПредикатов(Параметр)); + Условия.Добавить(Маска); + + Иначе + + Маска = ОписаниеМаскиПараметра(ТипыУсловий.Значение, 100); + Маска.Вставить("Значение", Параметр); + Условия.Добавить(Маска); + + КонецЕсли; + + КонецЦикла; + + Возврат Условия; + +КонецФункции + #КонецОбласти #Область Перехват @@ -529,7 +571,7 @@ #Область Настройки -Процедура ИнициализироватьНастройки() Экспорт +Процедура ИнициализироватьНастройки() ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(КлючНастроек(), НовыеНастройки(), Истина); @@ -566,18 +608,12 @@ КонецФункции -Процедура ОчиститьНастройки() Экспорт +Процедура ОчиститьНастройки() ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(КлючНастроек(), Неопределено); КонецПроцедуры -Процедура СброситьПараметры() Экспорт - - ИнициализироватьНастройки(); - -КонецПроцедуры - Функция КлючНастроек() Возврат "Mockito"; @@ -595,42 +631,6 @@ #КонецОбласти -Функция УсловиеИзПараметров(Параметры) Экспорт - - Если Параметры = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - - Условия = Новый Массив; - - ТипыУсловий = ТипыУсловийПараметров(); - - Для Каждого Параметр Из Параметры Цикл - - Если ЭтоМаскаПарамера(Параметр) Тогда - - Условия.Добавить(Параметр); - - ИначеЕсли ЮТПредикатыСлужебныйКлиентСервер.ЭтоПредикат(Параметр) Тогда - - Маска = ОписаниеМаскиПараметра(ТипыУсловий.Предикат, 90); - Маска.Вставить("Предикат", ЮТПредикатыСлужебныйКлиентСервер.НаборПредикатов(Параметр)); - Условия.Добавить(Маска); - - Иначе - - Маска = ОписаниеМаскиПараметра(ТипыУсловий.Значение, 100); - Маска.Вставить("Значение", Параметр); - Условия.Добавить(Маска); - - КонецЕсли; - - КонецЦикла; - - Возврат Условия; - -КонецФункции - #Область Статистика // Зарегистрировать вызов метода. diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\220\321\201\320\270\320\275\321\205\321\200\320\276\320\275\320\275\320\260\321\217\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\220\321\201\320\270\320\275\321\205\321\200\320\276\320\275\320\275\320\260\321\217\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 2bbf24e9d..77f682dbc 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\220\321\201\320\270\320\275\321\205\321\200\320\276\320\275\320\275\320\260\321\217\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\220\321\201\320\270\320\275\321\205\321\200\320\276\320\275\320\275\320\260\321\217\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -1,6 +1,6 @@ //©///////////////////////////////////////////////////////////////////////////©// // -// Copyright 2021-2023 BIA-Technologies Limited Liability Company +// Copyright 2021-2024 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. @@ -38,7 +38,6 @@ ПараметрыИсполнения.ИндексСледующегоОбработчика = ПараметрыИсполнения.ИндексСледующегоОбработчика + 1; Обработчик = ПараметрыИсполнения.Цепочка[ПараметрыИсполнения.ИндексСледующегоОбработчика]; - ЮТЛогирование.Отладка("Следующий обработчик исполнителя: " + Обработчик.ИмяПроцедуры); Возврат Обработчик; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 073c7e129..0549d2dfa 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\227\320\260\320\262\320\270\321\201\320\270\320\274\320\276\321\201\321\202\320\270\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -125,6 +125,10 @@ #Область Контексты +// Обработчик события "ИнициализацияКонтекста" +// +// Параметры: +// ДанныеКонтекста - Структура Процедура ИнициализацияКонтекста(ДанныеКонтекста) Экспорт ДанныеКонтекста.Вставить(ИмяКонтекстаДанныеЗависимостей(), Новый Соответствие()); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index dd4995c35..3a132dcc4 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -75,6 +75,9 @@ СерверныеНаборы = Новый Массив(); ПропущенныеНаборы = Новый Массив(); + ТестовыйМодульОблегченный = ЮТКоллекции.СкопироватьСтруктуру(ТестовыйМодуль); + ТестовыйМодульОблегченный.НаборыТестов = Новый Массив(); + Для Каждого Набор Из ТестовыйМодуль.НаборыТестов Цикл Если НЕ Набор.Выполнять Тогда @@ -95,9 +98,6 @@ КонецЦикла; - ТестовыйМодульОблегченный = ЮТКоллекции.СкопироватьСтруктуру(ТестовыйМодуль); - ТестовыйМодульОблегченный.НаборыТестов = Новый Массив(); - Если ЗначениеЗаполнено(КлиентскиеНаборы) Тогда Результаты = ЮТИсполнительСлужебныйКлиентСервер.ВыполнитьГруппуНаборовТестов(КлиентскиеНаборы, ТестовыйМодульОблегченный); КонецЕсли; @@ -123,12 +123,8 @@ Процедура ВыполнитьИнициализацию(ПараметрыЗапуска) Экспорт - ЮТКонтекстСлужебный.ИнициализироватьКонтекст(); - ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().Инициализация); - - ЮТКонтекстСлужебный.СохранитьПараметрыЗапуска(ПараметрыЗапуска); - ЮТКонтекстСлужебный.УстановитьГлобальныеНастройкиВыполнения(ПараметрыЗапуска.settings); - + ЮТЛогирование.Информация("Инициализация"); + ЮТКонтекстСлужебный.ИнициализироватьКонтекст(ПараметрыЗапуска); ЮТСобытияСлужебный.Инициализация(ПараметрыЗапуска); // Повторно сохраним для передачи на сервер @@ -150,6 +146,7 @@ Процедура ОбработчикЗагрузитьПараметры(_, ДополнительныеПараметры) Экспорт + ЮТЛогирование.Информация("Загрузка параметров запуска"); Обработчик = ЮТАсинхроннаяОбработкаСлужебныйКлиент.СледующийОбработчик(ДополнительныеПараметры); ЮТПараметрыЗапускаСлужебный.ПараметрыЗапуска(ДополнительныеПараметры.АргументыЗапуска, Обработчик); @@ -157,6 +154,7 @@ Процедура ОбработчикАнализПараметровЗапуска(ПараметрыЗапуска, ДополнительныеПараметры) Экспорт + ЮТЛогирование.Информация("Анализ параметров запуска"); ДополнительныеПараметры.ПараметрыЗапуска = ПараметрыЗапуска; Если НЕ ПараметрыЗапуска.ВыполнятьМодульноеТестирование Тогда @@ -169,6 +167,7 @@ Процедура ОбработчикИнициализация(_, ДополнительныеПараметры) Экспорт + ЮТЛогирование.Информация("Инициализация"); ВыполнитьИнициализацию(ДополнительныеПараметры.ПараметрыЗапуска); ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ДополнительныеПараметры); @@ -176,6 +175,7 @@ Процедура ОбработчикЗагрузитьТесты(_, ДополнительныеПараметры) Экспорт + ЮТЛогирование.Информация("Загрузка тестовых сценариев"); ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().ЗагрузкаТестов); ЮТСобытияСлужебный.ПередЧтениеСценариев(); @@ -198,6 +198,7 @@ Процедура ОбработчикРазрешитьЗависимости(_, ДополнительныеПараметры) Экспорт + ЮТЛогирование.Информация("Разрешение зависимостей"); ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().РазрешениеЗависимостей); Обработчик = ЮТАсинхроннаяОбработкаСлужебныйКлиент.СледующийОбработчик(ДополнительныеПараметры); @@ -207,6 +208,7 @@ Процедура ОбработчикВыполнитьТестирование(_, ДополнительныеПараметры) Экспорт + ЮТЛогирование.Информация("Выполнение тестовых сценариев"); ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().ПрогонТестов); ЮТИсполнительСлужебныйВызовСервера.СохранитьИнформациюОТестовыхСценариях(ДополнительныеПараметры.ИсполняемыеТестовыеМодули); @@ -232,6 +234,7 @@ ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().ФормированиеОтчета); Если ЗначениеЗаполнено(ДополнительныеПараметры.ПараметрыЗапуска.reportPath) Тогда + ЮТЛогирование.Информация("Формирование отчета о тестировании"); Обработчик = ЮТАсинхроннаяОбработкаСлужебныйКлиент.СледующийОбработчик(ДополнительныеПараметры); ЮТОтчетСлужебный.СформироватьОтчет(ДополнительныеПараметры.РезультатыТестирования, ДополнительныеПараметры.ПараметрыЗапуска, Обработчик); Иначе @@ -249,6 +252,7 @@ Процедура ОбработчикЗавершить(_, ДополнительныеПараметры) Экспорт + ЮТЛогирование.Информация("Завершение работы YAxUnit"); Параметры = ДополнительныеПараметры.ПараметрыЗапуска; ЮТКонтекстСлужебный.УдалитьКонтекст(); @@ -263,6 +267,7 @@ Процедура ОбработчикПодключитьКомпоненты(_, ДополнительныеПараметры) Экспорт Если ДополнительныеПараметры.ПараметрыЗапуска.ПодключатьВнешниеКомпоненты Тогда + ЮТЛогирование.Информация("Подключение внешних компонент"); Обработчик = ЮТАсинхроннаяОбработкаСлужебныйКлиент.СледующийОбработчик(ДополнительныеПараметры); ЮТКомпонентыСлужебныйКлиент.ТихаяУстановкаКомпонент(Обработчик); Иначе @@ -273,16 +278,6 @@ #КонецОбласти -#Область ОбработчикиСобытий - -Процедура ПередВыполнениемТестов(ИсполняемыеМодули) Экспорт - - ЮТКонтекстСлужебный.УстановитьКонтекстИсполнения(ЮТФабрикаСлужебный.НовыйКонтекстИсполнения()); - -КонецПроцедуры - -#КонецОбласти - Процедура ДобавитьОбработчикЦепочки(ПараметрыИсполнения, ИмяМетода) Обработчик = Новый ОписаниеОповещения(ИмяМетода, ЭтотОбъект, ПараметрыИсполнения, "ОбработчикОшибки", ЭтотОбъект); @@ -422,6 +417,7 @@ Возврат; КонецЕсли; + ЮТЛогирование.Информация("Сохранение кода возврата в файл"); Для Каждого Модуль Из РезультатыТестирования Цикл Для Каждого Набор Из Модуль.НаборыТестов Цикл diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 3e17618d3..68ff2fc46 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\230\321\201\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -39,6 +39,16 @@ КонецПроцедуры +// Обработчик события "ИнициализацияКонтекста" +// +// Параметры: +// ДанныеКонтекста - Структура +Процедура ИнициализацияКонтекста(ДанныеКонтекста) Экспорт + + ДанныеКонтекста.Вставить(ЮТКонтекстСлужебный.ИмяКонтекстаИсполнения(), ЮТФабрикаСлужебный.НовыйКонтекстИсполнения()); + +КонецПроцедуры + Процедура ПередВсемиТестами(ОписаниеСобытия) Экспорт УстановитьКонтекстИсполнения(ОписаниеСобытия.Модуль); @@ -83,7 +93,3 @@ КонецПроцедуры #КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index df13a7565..26f4edad3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -18,20 +18,33 @@ #Область СлужебныйПрограммныйИнтерфейс -// ИнициализироватьКонтекст -// Выполняет начальную настройку для работы с хранимым контекстом -Процедура ИнициализироватьКонтекст() Экспорт +// Выполняет начальную настройку для работы с хранимым контекстом +// +// Параметры: +// ПараметрыЗапуска - см. ЮТФабрика.ПараметрыЗапуска +Процедура ИнициализироватьКонтекст(ПараметрыЗапуска) Экспорт #Если НЕ Клиент Тогда ВызватьИсключение "Метод `ИнициализироватьКонтекст` должен вызываться только с клиента"; #Иначе - ЮТКонтекстСлужебныйКлиент.ИнициализироватьКонтекст(); - ЮТКонтекстСлужебныйВызовСервера.ИнициализироватьКонтекст(); + ЮТКонтекстСлужебныйКлиент.ИнициализироватьКонтекст(ПараметрыЗапуска); + ЮТКонтекстСлужебныйВызовСервера.ИнициализироватьКонтекст(ПараметрыЗапуска); ОбновитьПовторноИспользуемыеЗначения(); #КонецЕсли КонецПроцедуры +// Обработчик события "ИнициализацияКонтекста" +// +// Параметры: +// ДанныеКонтекста - Структура +Процедура ИнициализацияКонтекста(ДанныеКонтекста) Экспорт + + ДанныеКонтекста.Вставить(ИмяКонтекстаЭтапПрогона(), ЮТФабрика.ЭтапыПрогона().Инициализация); + ДанныеКонтекста.Вставить(ИмяГлобальныеНастройкиВыполнения(), ДанныеКонтекста[ИмяКонтекстаПараметрыЗапуска()].settings); + +КонецПроцедуры + // ДанныеКонтекста // Возвращает хранимые данные контекста. // Существует отдельно контекст сервера, отдельно клиента, эти контексты никак не связаны и никак не синхронизируются @@ -268,9 +281,11 @@ КонецФункции -Функция ОписаниеКонтекста() Экспорт +Функция ОписаниеКонтекста(ПараметрыЗапуска) Экспорт Описание = Новый Структура; + Описание.Вставить(ИмяКонтекстаПараметрыЗапуска(), ПараметрыЗапуска); + Описание.Вставить(ИмяКонтекстаЭтапПрогона(), ЮТФабрика.ЭтапыПрогона().Инициализация); ЮТСобытияСлужебный.ИнициализацияКонтекста(Описание); @@ -308,24 +323,12 @@ КонецПроцедуры -Процедура УстановитьКонтекстИсполнения(Знач ДанныеКонтекста) Экспорт - - УстановитьЗначениеКонтекста(ИмяКонтекстаИсполнения(), ДанныеКонтекста, Истина); - -КонецПроцедуры - Процедура УстановитьГлобальныеНастройкиВыполнения(Знач Настройки) Экспорт УстановитьЗначениеКонтекста(ИмяГлобальныеНастройкиВыполнения(), Настройки, Истина); КонецПроцедуры -Процедура СохранитьПараметрыЗапуска(Знач ПараметрыЗапуска) Экспорт - - УстановитьЗначениеКонтекста(ИмяКонтекстаПараметрыЗапуска(), ПараметрыЗапуска, Истина); - -КонецПроцедуры - Процедура УстановитьТекущийЭтапПрогона(Этап) Экспорт Если НЕ ЮТФабрика.ЭтапыПрогона().Свойство(Этап) Тогда @@ -385,7 +388,7 @@ КонецФункции -Функция ИмяКонтекстаИсполнения() +Функция ИмяКонтекстаИсполнения() Экспорт Возврат "КонтекстИсполнения"; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index a69650916..df2abb17f 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -18,9 +18,9 @@ #Область СлужебныйПрограммныйИнтерфейс -Процедура ИнициализироватьКонтекст() Экспорт +Процедура ИнициализироватьКонтекст(Знач ПараметрыЗапуска) Экспорт - Контекст = ЮТКонтекстСлужебный.ОписаниеКонтекста(); + Контекст = ЮТКонтекстСлужебный.ОписаниеКонтекста(ПараметрыЗапуска); АдресХранилища = ПоместитьВоВременноеХранилище(Контекст, Новый УникальныйИдентификатор()); ХранилищеОбщихНастроек.Сохранить(КлючНастроекКонтекста(), "АдресХранилища", АдресХранилища); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 3ca7c41df..28509c51b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\202\320\265\320\272\321\201\321\202\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -18,9 +18,9 @@ #Область СлужебныйПрограммныйИнтерфейс -Процедура ИнициализироватьКонтекст() Экспорт +Процедура ИнициализироватьКонтекст(ПараметрыЗапуска) Экспорт - ЮТДанныеКонтекста = ЮТКонтекстСлужебный.ОписаниеКонтекста(); // BSLLS:UnusedLocalVariable-off + ЮТДанныеКонтекста = ЮТКонтекстСлужебный.ОписаниеКонтекста(ПараметрыЗапуска); // BSLLS:UnusedLocalVariable-off КонецПроцедуры diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 8a029781a..58d151e8c 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\263\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -112,21 +112,17 @@ ЗначениеПроверки = Строка(Новый УникальныйИдентификатор()); ЗаписатьСообщения(ДанныеКонтекста, ЮТКоллекции.ЗначениеВМассиве(ЗначениеПроверки), Ложь); - ДанныеКонтекста.ФайлЛогаДоступенНаСервере = ЮТЛогированиеСлужебныйВызовСервера.ФайлЛогаДоступенНаСервере(ДанныеКонтекста.ФайлЛога, ЗначениеПроверки); + Если ЗначениеЗаполнено(ДанныеКонтекста.ФайлЛога) Тогда + ДанныеКонтекста.ФайлЛогаДоступенНаСервере = ЮТЛогированиеСлужебныйВызовСервера.ФайлЛогаДоступенНаСервере(ДанныеКонтекста.ФайлЛога, + ЗначениеПроверки); + КонецЕсли; ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(ИмяКонтекстаЛогирования(), ДанныеКонтекста, Истина); Разделитель = "------------------------------------------------------"; ЗаписатьСообщения(ДанныеКонтекста, ЮТКоллекции.ЗначениеВМассиве(Разделитель), Ложь); - ЮТЛогирование.Информация("Старт"); - -КонецПроцедуры - -// Обработка события "ПередЧтениеСценариев" -Процедура ПередЧтениеСценариев() Экспорт - - ЮТЛогирование.Информация("Загрузка сценариев"); + ЮТЛогирование.Информация("Инициализация"); КонецПроцедуры diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" deleted file mode 100644 index fe30562ee..000000000 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ /dev/null @@ -1,50 +0,0 @@ -//©///////////////////////////////////////////////////////////////////////////©// -// -// 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. -// -//©///////////////////////////////////////////////////////////////////////////©// - -#Область СлужебныйПрограммныйИнтерфейс - -Функция ЛокальПлатформы() Экспорт - - Возврат ТекущийЯзыкСистемы(); - -КонецФункции - -Функция ЭтоАнглийскаяЛокальПлатформы() Экспорт - - Возврат ЛокальПлатформы() = "en"; - -КонецФункции - -Функция ЭтоРусскаяЛокальПлатформы() Экспорт - - Возврат ЛокальПлатформы() = "ru"; - -КонецФункции - -Функция ЛокальИнтерфейса() Экспорт - -#Если Клиент Тогда - Возврат ТекущийЯзык(); -#Иначе - Возврат ТекущийЯзык().КодЯзыка; -#КонецЕсли - -КонецФункции - -#КонецОбласти - diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" deleted file mode 100644 index 86c5fbaff..000000000 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/\320\256\320\242\320\233\320\276\320\272\320\260\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.mdo" +++ /dev/null @@ -1,11 +0,0 @@ - - - ЮТЛокальСлужебный - - ru - Локаль служебный - - true - true - true - diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 449ee2ae4..90a621526 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -180,6 +180,7 @@ Описание.Ссылочный = Запись.Ссылочный = "+"; Описание.ТабличныеЧасти = Запись.ТабличныеЧасти = "+"; Описание.ВидыСубконто = Запись.ВидыСубконто = "+"; + Описание.УстановитьНовыйКод = Запись.УстановитьНовыйКод = "+"; Описание.ОбработкаОтчет = ИменаОбработкаОтчет.Свойство(Запись.Имя); Описание.Регистр = СтрНачинаетсяС(Запись.Имя, "Регистр") Или СтрЗаканчиваетсяНа(Запись.Имя, "Register"); @@ -194,8 +195,8 @@ Функция РазрешеныСинхронныеВызовы() Экспорт - Возврат Метаданные.РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент - = Метаданные.СвойстваОбъектов.РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент.Использовать; + Режим = Метаданные.СвойстваОбъектов.РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент; + Возврат Метаданные.РежимИспользованияСинхронныхВызововРасширенийПлатформыИВнешнихКомпонент = Режим.Использовать; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" index 95d2d12d1..8c0fe34fe 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265/Module.bsl" @@ -59,4 +59,48 @@ КонецФункции +// Возвращает код языка интерфейса. +// +// Возвращаемое значение: +// Строка - Локаль интерфейса +Функция ЛокальИнтерфейса() Экспорт + +#Если Клиент Тогда + Возврат ТекущийЯзык(); +#Иначе + Возврат ТекущийЯзык().КодЯзыка; +#КонецЕсли + +КонецФункции + +// Возвращает код языка платформы. +// +// Возвращаемое значение: +// Строка - Локаль платформы +Функция ЛокальПлатформы() Экспорт + + Возврат ТекущийЯзыкСистемы(); + +КонецФункции + +// Используется английская локаль платформы. +// +// Возвращаемое значение: +// Булево - Используется английская локаль платформы +Функция ИспользуетсяАнглийскаяЛокальПлатформы() Экспорт + + Возврат ЛокальПлатформы() = "en"; + +КонецФункции + +// Используется русская локаль платформы. +// +// Возвращаемое значение: +// Булево - Используется русская локаль платформы +Функция ИспользуетсяРусскаяЛокальПлатформы() Экспорт + + Возврат ЛокальПлатформы() = "ru"; + +КонецФункции + #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index ba3621ae2..6cd501937 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\236\320\272\321\200\321\203\320\266\320\265\320\275\320\270\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -39,8 +39,6 @@ Окружение.ТестовыйДвижок = ОписаниеСерверногоОкружения.ТестовыйДвижок; Окружение.ВерсияТестовогоДвижка = ОписаниеСерверногоОкружения.ВерсияТестовогоДвижка; - Окружение.ЛокальПлатформы = ЛокальПлатформы(); - Окружение.ЛокальИнтерфейса = ЛокальИнтерфейса(); Окружение.ВстроенныйЯзык = ОписаниеСерверногоОкружения.ВстроенныйЯзык; Окружение.ОперационнаяСистемаКлиент = Платформа.ОперационнаяСистема; @@ -151,20 +149,4 @@ КонецФункции #КонецЕсли -Функция ЛокальИнтерфейса() - -#Если Клиент Тогда - Возврат ТекущийЯзык(); -#Иначе - Возврат ТекущийЯзык().КодЯзыка; -#КонецЕсли - -КонецФункции - -Функция ЛокальПлатформы() - - Возврат ТекущийЯзыкСистемы(); - -КонецФункции - #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214/Module.bsl" index 3f0358a23..f80371f8d 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214/Module.bsl" @@ -1,6 +1,6 @@ //©///////////////////////////////////////////////////////////////////////////©// // -// Copyright 2021-2023 BIA-Technologies Limited Liability Company +// Copyright 2021-2024 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. @@ -23,7 +23,9 @@ // Возвращаемое значение: // Строка - Возвращает текущую установленную локализацию Функция Локализация() Экспорт - Возврат ЮТПодражательСлужебный.Контекст().Локализация; + + Возврат ЮТПодражательСлужебный.Локализация(); + КонецФункции // Устанавливает локализацию подражателя @@ -31,7 +33,9 @@ // Параметры: // КодЯзыка - Строка - Код языка Процедура УстановитьЛокализацию(КодЯзыка) Экспорт + ЮТПодражательСлужебный.Контекст().Локализация = КодЯзыка; + КонецПроцедуры #Область Реализации @@ -41,7 +45,9 @@ // Возвращаемое значение: // CommonModule.ЮТПодражатель_Люди - Люди Функция Люди() Экспорт + Возврат ЮТПодражатель_Люди; + КонецФункции // Подражатель для компаний @@ -49,7 +55,9 @@ // Возвращаемое значение: // CommonModule.ЮТПодражатель_Компании - Компании Функция Компании() Экспорт + Возврат ЮТПодражатель_Компании; + КонецФункции // Подражатель для банков @@ -57,7 +65,9 @@ // Возвращаемое значение: // CommonModule.ЮТПодражатель_Банки - Банки Функция Банки() Экспорт + Возврат ЮТПодражатель_Банки; + КонецФункции #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index c4fac2939..3a3f53be4 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -18,6 +18,14 @@ #Область СлужебныйПрограммныйИнтерфейс +Функция Локализация() Экспорт + + Контекст = Контекст(); + + Возврат ?(ЗначениеЗаполнено(Контекст.Локализация), Контекст.Локализация, ЮТОкружение.ЛокальИнтерфейса()); + +КонецФункции + // Получает список из словаря с учетом установленной локализации // // Параметры: @@ -28,8 +36,10 @@ // Возвращаемое значение: // ФиксированныйМассив из Строка Функция Словарь(ИмяРеализации, ИмяСловаря, Знач КодЛокализации = Неопределено) Экспорт + КодЛокализации = ?(КодЛокализации = Неопределено, ЮТПодражатель.Локализация(), КодЛокализации); Возврат ЮТПодражательСлужебныйПовтИсп.Словарь(ИмяРеализации, ИмяСловаря, КодЛокализации); + КонецФункции // Случайное значение из словаря. @@ -40,27 +50,30 @@ // Возвращаемое значение: // - Строка Функция СлучайноеЗначениеИзСловаря(Словарь) Экспорт + Возврат Словарь.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, Словарь.ВГраница())); + КонецФункции +// Обработчик события "ИнициализацияКонтекста" +// +// Параметры: +// ДанныеКонтекста - Структура +Процедура ИнициализацияКонтекста(ДанныеКонтекста) Экспорт + + ДанныеКонтекста.Вставить(КлючКонтекста(), НовыйКонтекст()); + +КонецПроцедуры + // Контекст. // // Возвращаемое значение: // см. НовыйКонтекст Функция Контекст() Экспорт + //@skip-check constructor-function-return-section Возврат ЮТКонтекстСлужебный.ЗначениеКонтекста(КлючКонтекста()); -КонецФункции - -// Инициализирует подражатель -// -// Возвращаемое значение: -// ОбщийМодуль - Этот модуль для замыкания -Функция Инициализировать() Экспорт - Если Контекст() = Неопределено Тогда - ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста(КлючКонтекста(), НовыйКонтекст()); - КонецЕсли; - Возврат ЮТПодражатель; + КонецФункции #КонецОбласти @@ -68,20 +81,23 @@ #Область СлужебныеПроцедурыИФункции Функция КлючКонтекста() + Возврат "Подражатель"; + КонецФункции // Новый контекст. // // Возвращаемое значение: // Структура - Новый контекст: -// * Локализация - см. ЮТЛокальСлужебный.ЛокальИнтерфейса +// * Локализация - см. ЮТОкружение.ЛокальИнтерфейса Функция НовыйКонтекст() - + Описание = Новый Структура; - Описание.Вставить("Локализация", ЮТЛокальСлужебный.ЛокальИнтерфейса()); + Описание.Вставить("Локализация", ""); + Возврат Описание; - + КонецФункции #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index fae40b312..d8291d0d2 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\237\320\276\320\264\321\200\320\260\320\266\320\260\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -29,10 +29,10 @@ Если Метаданные.ОбщиеМакеты.Найти(Кодификатор) = Неопределено Тогда ВызватьИсключение СтрШаблон("Словарь с именем (%1) не найден", Кодификатор); КонецЕсли; - + Макет = ПолучитьОбщийМакет(Кодификатор); Возврат СтрРазделить(Макет.ПолучитьТекст(), Символы.ПС, Ложь); - + КонецФункции #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index b3b019cc3..db58b8ae2 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\263\320\270\321\201\321\202\321\200\320\260\321\206\320\270\321\217\320\236\321\210\320\270\320\261\320\276\320\272\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -683,7 +683,7 @@ Тексты = Новый Структура("МетодНеОбнаружен, МногоПараметров, МалоПараметров"); - Если ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы() Тогда + Если ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы() Тогда Тексты.МетодНеОбнаружен = СтрШаблон("Object method not found (%1)", ИмяМетода); Тексты.МногоПараметров = "Too many actual parameters"; Тексты.МалоПараметров = "Not enough actual parameters"; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index f212da66a..e6716cb2b 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -332,7 +332,7 @@ КонецФункции #КонецЕсли -Функция ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, Подсистема, ПараметрыСобытия) +Функция ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, Подсистема, ПараметрыСобытия, ВызватьСерверныйОбработчик = Ложь) Экспорт ОбработчикиСобытий = ЮТПодключаемыеМодулиСлужебный.ОбработчикиСобытий(Подсистема); @@ -360,6 +360,13 @@ КонецЦикла; +#Если Клиент Тогда + Если ВызватьСерверныйОбработчик Тогда + Параметры = ЮТКоллекции.ЗначениеВМассиве(ИмяСобытия, Подсистема, ПараметрыСобытия); + ЮТМетодыСлужебный.ВыполнитьНаСервере("ЮТСобытияСлужебный.ВызватьПодключаемыйОбработчикСобытия", Параметры); + КонецЕсли; +#КонецЕсли + Возврат Ошибки; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index 9f67f07ee..72fdc2768 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -129,12 +129,7 @@ #Если ВебКлиент Тогда ВызватьИсключение ЮТИсключения.МетодНеДоступен("ЮТТестовыеДанные.СлучайноеЧисло"); #Иначе - Генератор = ЮТКонтекстСлужебный.ЗначениеКонтекста("ГенераторСлучайныхЧисел"); - - Если Генератор = Неопределено Тогда - Генератор = Новый ГенераторСлучайныхЧисел(); - ЮТКонтекстСлужебный.УстановитьЗначениеКонтекста("ГенераторСлучайныхЧисел", Генератор); - КонецЕсли; + Генератор = ЮТТестовыеДанныеСлужебный.ГенераторСлучайныхЧисел(); Если Максимум = Неопределено Тогда Результат = Генератор.СлучайноеЧисло(Минимум); @@ -877,7 +872,7 @@ // ОбщийМодуль - Подражатель Функция Подражатель() Экспорт - Возврат ЮТПодражательСлужебный.Инициализировать(); + Возврат ЮТПодражатель; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 130fb743c..94066f5a0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -148,6 +148,18 @@ КонецПроцедуры +// Обработчик события "ИнициализацияКонтекста" +// +// Параметры: +// ДанныеКонтекста - Структура +Процедура ИнициализацияКонтекста(ДанныеКонтекста) Экспорт + +#Если НЕ ВебКлиент Тогда + ДанныеКонтекста.Вставить(ИмяКонтекстаГенераторСлучайныхЧисел(), Новый ГенераторСлучайныхЧисел()); +#КонецЕсли + +КонецПроцедуры + #КонецОбласти Функция ЗагрузитьИзМакета(Макет, ОписанияТипов, КэшЗначений, ЗаменяемыеЗначения, ПараметрыСозданияОбъектов, ТаблицаЗначений) Экспорт @@ -163,6 +175,12 @@ КонецФункции +Функция ГенераторСлучайныхЧисел() Экспорт + + Возврат ЮТКонтекстСлужебный.ЗначениеКонтекста(ИмяКонтекстаГенераторСлучайныхЧисел()); + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -251,4 +269,9 @@ КонецФункции +Функция ИмяКонтекстаГенераторСлучайныхЧисел() + + Возврат "ГенераторСлучайныхЧисел"; + +КонецФункции #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" index 5e7901cb3..75e7bce85 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\260\320\261\321\200\320\270\320\272\320\260/Module.bsl" @@ -300,8 +300,6 @@ Окружение.Вставить("ТестовыйДвижок", "YAxUnit"); Окружение.Вставить("ВерсияТестовогоДвижка", ""); - Окружение.Вставить("ЛокальПлатформы", ""); - Окружение.Вставить("ЛокальИнтерфейса", ""); Окружение.Вставить("ВстроенныйЯзык", ""); Окружение.Вставить("ОперационнаяСистемаКлиент", ""); diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index f2d7a456a..33f6d0425 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -89,7 +89,6 @@ CommonModule.ЮТЛогированиеСлужебный CommonModule.ЮТЛогированиеСлужебныйВызовСервера CommonModule.ЮТЛогИсполненияТестаСлужебный - CommonModule.ЮТЛокальСлужебный CommonModule.ЮТМетаданные CommonModule.ЮТМетаданныеСлужебный CommonModule.ЮТМетаданныеСлужебныйВызовСервера diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" index fd6c914b6..d494eb644 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\224\320\262\320\270\320\266\320\276\320\272/Subsystems/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201/\320\256\320\242\320\241\320\265\321\200\320\262\320\270\321\201.mdo" @@ -25,7 +25,6 @@ CommonModule.ЮТЛогирование CommonModule.ЮТЛогированиеСлужебныйВызовСервера CommonModule.ЮТЛогИсполненияТестаСлужебный - CommonModule.ЮТЛокальСлужебный CommonModule.ЮТМетаданные CommonModule.ЮТМетаданныеСлужебный CommonModule.ЮТМетаданныеСлужебныйВызовСервера diff --git "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" index 4f5813280..4d9e3c527 100644 --- "a/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" +++ "b/exts/yaxunit/src/Subsystems/\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217.mdo" @@ -7,6 +7,10 @@ true CommonModule.ЮТЗависимостиСлужебный + CommonModule.ЮТКонтекстИсполненияСлужебныйКлиентСервер + CommonModule.ЮТКонтекстСлужебный CommonModule.ЮТОкружениеСлужебныйКлиентСервер + CommonModule.ЮТПодражательСлужебный + CommonModule.ЮТТестовыеДанныеСлужебный Subsystem.ЮТПодключаемыеМодули.Subsystem.ОбработчикиСобытий diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index ef1678f94..a9b254da4 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -378,7 +378,7 @@ .Параметр(Новый Структура("Товар", Новый ОписаниеТипов("СправочникСсылка.Товары"))) .ВыбрасываетИсключение("не найдена в макете основная колонка с именем `Товар`"); - ОжидаемоеСообщение = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), "Section not found", "Область не найдена"); + ОжидаемоеСообщение = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Section not found", "Область не найдена"); ЮТест.ОжидаетЧто(ЮТест.Данные()) .Метод("ЗагрузитьИзМакета") .Параметр("ОбщийМакет.ЮТ_МакетТестовыхДанных.ОсновнаяТаблица") diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index b92ddf7c5..6a6d4f020 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -904,7 +904,7 @@ Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ОжидаемоеСообщение = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), + ОжидаемоеСообщение = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Mutable values filling check is unavailable", "Проверка мутабельных значений на заполненность"); ПроверитьОшибкуИсполнения(Ошибка, ОжидаемоеСообщение); @@ -960,7 +960,7 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ОжидаемоеСообщение = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), + ОжидаемоеСообщение = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Mutable values filling check is unavailable", "Проверка мутабельных значений на заполненность"); ПроверитьОшибкуИсполнения(Ошибка, ОжидаемоеСообщение); @@ -1196,7 +1196,7 @@ Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ОжидаемоеСообщение = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), "Type is not defined", "Тип не определен"); + ОжидаемоеСообщение = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Type is not defined", "Тип не определен"); ПроверитьОшибкуИсполнения(Ошибка, ОжидаемоеСообщение); КонецПроцедуры @@ -1244,7 +1244,7 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ОжидаемоеСообщение = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), "Type is not defined", "Тип не определен"); + ОжидаемоеСообщение = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Type is not defined", "Тип не определен"); ПроверитьОшибкуИсполнения(Ошибка, ОжидаемоеСообщение); КонецПроцедуры @@ -1586,9 +1586,9 @@ Процедура ВыбрасываетИсключение() Экспорт - МетодНеОбнаружен = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), "Object method not found (НесуществующийМетод)", "Метод объекта не обнаружен (НесуществующийМетод)"); - МногоПараметров = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), "Too many actual parameters", "Слишком много фактических параметров"); - МалоПараметров = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), "Not enough actual parameters", "Недостаточно фактических параметров"); + МетодНеОбнаружен = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Object method not found (НесуществующийМетод)", "Метод объекта не обнаружен (НесуществующийМетод)"); + МногоПараметров = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Too many actual parameters", "Слишком много фактических параметров"); + МалоПараметров = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Not enough actual parameters", "Недостаточно фактических параметров"); ЮТУтверждения.Что(ОМ_ЮТУтверждения) .Метод("МетодИсключение", ЮТКоллекции.ЗначениеВМассиве("Исключение", 2)) @@ -2488,7 +2488,7 @@ Процедура ПроверитьЭтоОшибкуСравненияБольшеМеньше(ИнформацияОбОшибке) - ОжидаемоеСообщение = ?(ЮТЛокальСлужебный.ЭтоАнглийскаяЛокальПлатформы(), "Greater than/Less than compare operations", "Операции сравнения на больше-меньше"); + ОжидаемоеСообщение = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), "Greater than/Less than compare operations", "Операции сравнения на больше-меньше"); ПроверитьОшибкуИсполнения(ИнформацияОбОшибке, ОжидаемоеСообщение); КонецПроцедуры diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" index 562c7175d..10199749a 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" @@ -165,8 +165,6 @@ .Свойство("ТолстыйКлиент").Равно(Ложь) .Свойство("ВерсияПлатформы") .Свойство("ФайловаяБаза") - .Свойство("ЛокальПлатформы") - .Свойство("ЛокальИнтерфейса") .Свойство("ОперационнаяСистемаКлиент") .Свойство("АрхитектураКлиент") .Свойство("ОперационнаяСистемаСервер") From b8281c1a63874969f2133dc9ca98bb391e50e772 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Thu, 30 May 2024 00:11:41 +0300 Subject: [PATCH 46/54] =?UTF-8?q?#352=20=D0=92=D0=BE=D0=B7=D0=BC=D0=BE?= =?UTF-8?q?=D0=B6=D0=BD=D0=BE=D1=81=D1=82=D1=8C=20=D0=BE=D1=82=D0=BA=D0=B0?= =?UTF-8?q?=D0=B7=D0=B0=20=D0=BE=D1=82=20=D0=B7=D0=B0=D0=B3=D1=80=D1=83?= =?UTF-8?q?=D0=B7=D0=BA=D0=B8=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 31 ++++++----- .../Module.bsl" | 52 ++++++++++++------- .../Module.bsl" | 18 +++++-- .../Module.bsl" | 17 ++++++ .../Module.bsl" | 29 +++++++++++ ...0\265\321\201\321\202\320\276\320\262.mdo" | 11 ++++ tests/src/Configuration/Configuration.mdo | 1 + .../CommandInterface.cmi" | 2 + ...0\265\321\201\321\202\320\276\320\262.mdo" | 12 +++++ ...0\261\321\213\321\202\320\270\320\271.mdo" | 1 + 10 files changed, 139 insertions(+), 35 deletions(-) create mode 100644 "tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" create mode 100644 "tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" create mode 100644 "tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/CommandInterface.cmi" create mode 100644 "tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 3a132dcc4..ab4b0355f 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -177,20 +177,27 @@ ЮТЛогирование.Информация("Загрузка тестовых сценариев"); ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().ЗагрузкаТестов); - ЮТСобытияСлужебный.ПередЧтениеСценариев(); - ТестовыеМодули = ЮТЧитательСлужебный.ЗагрузитьТесты(ДополнительныеПараметры.ПараметрыЗапуска); - ЮТСобытияСлужебный.ПослеЧтенияСценариев(ТестовыеМодули); + Отказ = Ложь; + ЮТСобытияСлужебный.ПередЧтениеСценариев(Отказ); - ИсполняемыеТестовыеМодули = Новый Массив(); - - Для Каждого ТестовыйМодуль Из ТестовыеМодули Цикл - ИсполняемыйТестовыйМодуль = ИсполняемыйТестовыйМодуль(ТестовыйМодуль); - ИсполняемыеТестовыеМодули.Добавить(ИсполняемыйТестовыйМодуль); - КонецЦикла; - - ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(ИсполняемыеТестовыеМодули); - ДополнительныеПараметры.ИсполняемыеТестовыеМодули = ИсполняемыеТестовыеМодули; + Если Отказ Тогда + ЮТЛогирование.Информация("Загрузка тестовых сценариев отменена"); + ДополнительныеПараметры.ИсполняемыеТестовыеМодули = Новый Массив; + Иначе + ТестовыеМодули = ЮТЧитательСлужебный.ЗагрузитьТесты(ДополнительныеПараметры.ПараметрыЗапуска); + ЮТСобытияСлужебный.ПослеЧтенияСценариев(ТестовыеМодули); + + ИсполняемыеТестовыеМодули = Новый Массив(); + + Для Каждого ТестовыйМодуль Из ТестовыеМодули Цикл + ИсполняемыйТестовыйМодуль = ИсполняемыйТестовыйМодуль(ТестовыйМодуль); + ИсполняемыеТестовыеМодули.Добавить(ИсполняемыйТестовыйМодуль); + КонецЦикла; + + ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(ИсполняемыеТестовыеМодули); + ДополнительныеПараметры.ИсполняемыеТестовыеМодули = ИсполняемыеТестовыеМодули; + КонецЕсли; ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ДополнительныеПараметры, ИсполняемыеТестовыеМодули); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index e6716cb2b..0e2e04ca8 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -79,7 +79,7 @@ #Область СобытияИсполненияТестов -// Обработчик события "ПередВсемиТестамиМодуля" +// Вызов события "ПередВсемиТестамиМодуля" // // Параметры: // ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля @@ -90,7 +90,7 @@ КонецПроцедуры -// Обработчик события "ПередТестовымНабором" +// Вызов события "ПередТестовымНабором" // // Параметры: // ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля @@ -102,7 +102,7 @@ КонецПроцедуры -// Обработчик события "ПередКаждымТестом" +// Вызов события "ПередКаждымТестом" // // Параметры: // ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля @@ -115,7 +115,7 @@ КонецПроцедуры -// Обработчик события "ПослеКаждогоТеста" +// Вызов события "ПослеКаждогоТеста" // // Параметры: // ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля @@ -128,7 +128,7 @@ КонецПроцедуры -// Обработчик события "ПослеТестовогоНабора" +// Вызов события "ПослеТестовогоНабора" // // Параметры: // ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля @@ -140,7 +140,7 @@ КонецПроцедуры -// Обработчик события "ПослеВсехТестовМодуля" +// Вызов события "ПослеВсехТестовМодуля" // // Параметры: // ТестовыйМодуль - см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля @@ -177,16 +177,19 @@ #Область СобытияЗагрузкиТестов -// Обработка события "ПередЧтениеСценариев" +// Вызов события "ПередЧтениеСценариев" // Вызывается перед загрузкой тестов. -Процедура ПередЧтениеСценариев() Экспорт +// +// Параметры: +// Отказ - Булево - Отказ от загрузки тестов из модуля +Процедура ПередЧтениеСценариев(Отказ) Экспорт Параметры = Новый Массив(); ВызватьПодключаемыйОбработчикСобытия("ПередЧтениеСценариев", "ЗагрузкаТестов", Параметры); КонецПроцедуры -// Обработчик события "ПередЧтениемСценариевМодуля" +// Вызов события "ПередЧтениемСценариевМодуля" // Вызывается перед чтением сценариев конкретного модуля (вызовом метода `ИсполняемыеСценарии`). // Позволяет настроить базовые параметры перед чтением настроек тестов модуля. // @@ -210,7 +213,7 @@ КонецПроцедуры -// Обработка события "ПослеЧтенияСценариев" +// Вызов события "ПослеЧтенияСценариев" // Параметры: // Сценарии - Массив из см. ЮТФабрикаСлужебный.ОписаниеТестовогоМодуля - Набор описаний тестовых модулей, которые содержат информацию о запускаемых тестах Процедура ПослеЧтенияСценариев(Сценарии) Экспорт @@ -220,7 +223,7 @@ КонецПроцедуры -// Обработка события "ПослеФормированияИсполняемыхНаборовТестов" +// Вызов события "ПослеФормированияИсполняемыхНаборовТестов" // Параметры: // ИсполняемыеТестовыеМодули - Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля - Набор исполняемых наборов Процедура ПослеФормированияИсполняемыхНаборовТестов(ИсполняемыеТестовыеМодули) Экспорт @@ -230,6 +233,24 @@ КонецПроцедуры +// Вызов события "ФильтрацияТестов_ПроверкаМодуля" +// Вызывается при поиске тестовых модулей. +// Позволяет отфильтровать "лишние" тестовые модули +// +// Параметры: +// МетаданныеМодуля - см. ЮТФабрикаСлужебный.ОписаниеМетаданныеМодуля +// Отказ - Булево - Отказ от загрузки тестов из модуля +Процедура ФильтрацияТестов_ПроверкаМодуля(МетаданныеМодуля, Отказ) Экспорт + + Параметры = ЮТКоллекции.ЗначениеВМассиве(МетаданныеМодуля, Отказ); + ВызватьПодключаемыйОбработчикСобытия("ПроверкаМодуля", "ЗагрузкаТестов", Параметры); + + Если Параметры[1] Тогда + Отказ = Истина; + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #КонецОбласти @@ -332,7 +353,7 @@ КонецФункции #КонецЕсли -Функция ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, Подсистема, ПараметрыСобытия, ВызватьСерверныйОбработчик = Ложь) Экспорт +Функция ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, Подсистема, ПараметрыСобытия) Экспорт ОбработчикиСобытий = ЮТПодключаемыеМодулиСлужебный.ОбработчикиСобытий(Подсистема); @@ -360,13 +381,6 @@ КонецЦикла; -#Если Клиент Тогда - Если ВызватьСерверныйОбработчик Тогда - Параметры = ЮТКоллекции.ЗначениеВМассиве(ИмяСобытия, Подсистема, ПараметрыСобытия); - ЮТМетодыСлужебный.ВыполнитьНаСервере("ЮТСобытияСлужебный.ВызватьПодключаемыйОбработчикСобытия", Параметры); - КонецЕсли; -#КонецЕсли - Возврат Ошибки; КонецФункции diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 2a57092d9..72ea0e045 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -28,13 +28,23 @@ КонецФункции -Функция ЭтоПодходящийМодуль(ОписаниеМодуля) Экспорт +Функция ЭтоПодходящийМодуль(МетаданныеМодуля) Экспорт Контекст = ЮТКонтекстСлужебный.КонтекстЧитателя(); - Возврат ЗначениеЗаполнено(ОписаниеМодуля.Расширение) - И (НЕ Контекст.Фильтр.ЕстьФильтрМодулей ИЛИ Контекст.Фильтр.Модули.Свойство(ОписаниеМодуля.Имя)) - И ЭтоПодходящееРасширение(ОписаниеМодуля.Расширение); + Успешно = ЗначениеЗаполнено(МетаданныеМодуля.Расширение) + И (НЕ Контекст.Фильтр.ЕстьФильтрМодулей ИЛИ Контекст.Фильтр.Модули.Свойство(МетаданныеМодуля.Имя)) + И ЭтоПодходящееРасширение(МетаданныеМодуля.Расширение); + + Если Успешно Тогда + Отказ = Ложь; + ЮТСобытияСлужебный.ФильтрацияТестов_ПроверкаМодуля(МетаданныеМодуля, Отказ); + Если Отказ Тогда + Успешно = Ложь; + КонецЕсли; + КонецЕсли; + + Возврат Успешно; КонецФункции diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 85c7680f0..029bf59db 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -30,6 +30,7 @@ .Добавитьтест("Фильтр_ТегиНабора") .Добавитьтест("Фильтр_ТегиТеста") .Добавитьтест("Фильтр_Наборы") + .Добавитьтест("Фильтр_СобытиеФильтрацииМодуля") ; КонецПроцедуры @@ -309,6 +310,22 @@ КонецПроцедуры +Процедура Фильтр_СобытиеФильтрацииМодуля() Экспорт + + ИмяМодуля = "ОМ_ЮТФильтрацияСлужебный"; + ОписаниеМодуля = МетаданныеМодуля(ИмяМодуля, "test"); + + УстановитьНовыйФильтр(ИмяМодуля); + + Результат = ЮТФильтрацияСлужебный.ЭтоПодходящийМодуль(ОписаниеМодуля); + ЮТест.ОжидаетЧто(Результат, "Без фильтрации").Равно(Истина); + + ЮТест.Контекст().УстановитьЗначение(ИмяМодуля, Истина); + Результат = ЮТФильтрацияСлужебный.ЭтоПодходящийМодуль(ОписаниеМодуля); + ЮТест.ОжидаетЧто(Результат, "С фильтрацией").Равно(Ложь); + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" "b/tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" new file mode 100644 index 000000000..2a2beee60 --- /dev/null +++ "b/tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/Module.bsl" @@ -0,0 +1,29 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +#Область СлужебныйПрограммныйИнтерфейс + +Процедура ФильтрацияТестов_ПроверкаМодуля(МетаданныеМодуля, Отказ) Экспорт + + Если ЮТест.КонтекстТеста() <> Неопределено И ЮТест.КонтекстТеста().Свойство(МетаданныеМодуля.Имя) Тогда + Отказ = Истина; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти diff --git "a/tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" new file mode 100644 index 000000000..4c6f31da8 --- /dev/null +++ "b/tests/src/CommonModules/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262/\320\244\320\270\320\273\321\214\321\202\321\200\320\260\321\206\320\270\321\217\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270\320\242\320\265\321\201\321\202\320\276\320\262.mdo" @@ -0,0 +1,11 @@ + + + ФильтрацияЗагрузкиТестов + + ru + Фильтрация загрузки тестов + + true + true + true + diff --git a/tests/src/Configuration/Configuration.mdo b/tests/src/Configuration/Configuration.mdo index 8d8449f85..cabfbdade 100644 --- a/tests/src/Configuration/Configuration.mdo +++ b/tests/src/Configuration/Configuration.mdo @@ -67,6 +67,7 @@ CommonModule.ПомощникТестированияВызовСервера CommonModule.ТегиТестов CommonModule.ТестовыеДанные + CommonModule.ФильтрацияЗагрузкиТестов Catalog.Встречи Catalog.Товары Document.ПриходТовара diff --git "a/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/CommandInterface.cmi" "b/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/CommandInterface.cmi" new file mode 100644 index 000000000..0cf6de8a4 --- /dev/null +++ "b/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/CommandInterface.cmi" @@ -0,0 +1,2 @@ + + diff --git "a/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" new file mode 100644 index 000000000..4ef01163c --- /dev/null +++ "b/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/Subsystems/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\260\320\242\320\265\321\201\321\202\320\276\320\262.mdo" @@ -0,0 +1,12 @@ + + + ЗагрузкаТестов + + ru + Загрузка тестов + + true + true + CommonModule.ФильтрацияЗагрузкиТестов + Subsystem.Тесты_ЮТПодключаемыеМодули.Subsystem.ОбработчикиСобытий + diff --git "a/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271.mdo" "b/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271.mdo" index 487d28eae..8b82dbe22 100644 --- "a/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271.mdo" +++ "b/tests/src/Subsystems/\320\242\320\265\321\201\321\202\321\213_\320\256\320\242\320\237\320\276\320\264\320\272\320\273\321\216\321\207\320\260\320\265\320\274\321\213\320\265\320\234\320\276\320\264\321\203\320\273\320\270/Subsystems/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271/\320\236\320\261\321\200\320\260\320\261\320\276\321\202\321\207\320\270\320\272\320\270\320\241\320\276\320\261\321\213\321\202\320\270\320\271.mdo" @@ -6,6 +6,7 @@ Обработчики событий true + ЗагрузкаТестов Инициализация Subsystem.Тесты_ЮТПодключаемыеМодули From 395c77d600765e25f2736001bcf696e0817491b6 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Thu, 30 May 2024 01:57:23 +0300 Subject: [PATCH 47/54] =?UTF-8?q?#352=20=D0=92=D0=BE=D0=B7=D0=BC=D0=BE?= =?UTF-8?q?=D0=B6=D0=BD=D0=BE=D1=81=D1=82=D1=8C=20=D0=BE=D1=82=D0=BA=D0=B0?= =?UTF-8?q?=D0=B7=D0=B0=20=D0=BE=D1=82=20=D0=B2=D1=8B=D0=BF=D0=BE=D0=BB?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=82=D0=B5=D1=81=D1=82=D0=BE?= =?UTF-8?q?=D0=B2=20=D0=9E=D1=82=D0=BB=D0=B0=D0=B4=D0=BA=D0=B0=20=D0=B8=20?= =?UTF-8?q?=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BE=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 84 ++++++++++++++----- .../Module.bsl" | 25 ++++-- .../Module.bsl" | 45 +++++----- .../Module.bsl" | 9 +- 4 files changed, 106 insertions(+), 57 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index ab4b0355f..95045f3dd 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -27,7 +27,8 @@ ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикАнализПараметровЗапуска"); ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикПодключитьКомпоненты"); ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикИнициализация"); - ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикЗагрузитьТесты"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикЗагрузитьЗарегистрированныеТесты"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикСформироватьИсполняемыеТесты"); ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикРазрешитьЗависимости"); ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикВыполнитьТестирование"); ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикСохранитьОтчет"); @@ -44,7 +45,8 @@ ПараметрыИсполнения.ПараметрыЗапуска = ПараметрыЗапуска; ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикИнициализация"); - ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикЗагрузитьТесты"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикЗагрузитьЗарегистрированныеТесты"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикСформироватьИсполняемыеТесты"); ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикРазрешитьЗависимости"); ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикВыполнитьТестирование"); ПараметрыИсполнения.Цепочка.Добавить(ОбработчикЗавершения); @@ -53,6 +55,33 @@ КонецПроцедуры +Процедура ЗагрузитьЗарегистрированныеТесты(ПараметрыЗапуска, ОбработчикЗавершения) Экспорт + + ПараметрыИсполнения = ПараметрыИсполнения(); + ПараметрыИсполнения.ПараметрыЗапуска = ПараметрыЗапуска; + + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикИнициализация"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикЗагрузитьЗарегистрированныеТесты"); + ПараметрыИсполнения.Цепочка.Добавить(ОбработчикЗавершения); + + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ПараметрыИсполнения); + +КонецПроцедуры + +Процедура ЗагрузитьИсполняемыеТесты(ПараметрыЗапуска, ОбработчикЗавершения) Экспорт + + ПараметрыИсполнения = ПараметрыИсполнения(); + ПараметрыИсполнения.ПараметрыЗапуска = ПараметрыЗапуска; + + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикИнициализация"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикЗагрузитьЗарегистрированныеТесты"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикСформироватьИсполняемыеТесты"); + ПараметрыИсполнения.Цепочка.Добавить(ОбработчикЗавершения); + + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ПараметрыИсполнения); + +КонецПроцедуры + Функция ПараметрыИсполнения() Экспорт Параметры = ЮТАсинхроннаяОбработкаСлужебныйКлиент.ЦепочкаАсинхроннойОбработки(); @@ -173,7 +202,7 @@ КонецПроцедуры -Процедура ОбработчикЗагрузитьТесты(_, ДополнительныеПараметры) Экспорт +Процедура ОбработчикЗагрузитьЗарегистрированныеТесты(_, ДополнительныеПараметры) Экспорт ЮТЛогирование.Информация("Загрузка тестовых сценариев"); ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().ЗагрузкаТестов); @@ -182,23 +211,28 @@ ЮТСобытияСлужебный.ПередЧтениеСценариев(Отказ); Если Отказ Тогда - ЮТЛогирование.Информация("Загрузка тестовых сценариев отменена"); - ДополнительныеПараметры.ИсполняемыеТестовыеМодули = Новый Массив; + ТестовыеМодули = Новый Массив; Иначе ТестовыеМодули = ЮТЧитательСлужебный.ЗагрузитьТесты(ДополнительныеПараметры.ПараметрыЗапуска); ЮТСобытияСлужебный.ПослеЧтенияСценариев(ТестовыеМодули); - - ИсполняемыеТестовыеМодули = Новый Массив(); - - Для Каждого ТестовыйМодуль Из ТестовыеМодули Цикл - ИсполняемыйТестовыйМодуль = ИсполняемыйТестовыйМодуль(ТестовыйМодуль); - ИсполняемыеТестовыеМодули.Добавить(ИсполняемыйТестовыйМодуль); - КонецЦикла; - - ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(ИсполняемыеТестовыеМодули); - ДополнительныеПараметры.ИсполняемыеТестовыеМодули = ИсполняемыеТестовыеМодули; КонецЕсли; + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ДополнительныеПараметры, ТестовыеМодули); + +КонецПроцедуры + +Процедура ОбработчикСформироватьИсполняемыеТесты(ТестовыеМодули, ДополнительныеПараметры) Экспорт + + ИсполняемыеТестовыеМодули = Новый Массив; + + Для Каждого ТестовыйМодуль Из ТестовыеМодули Цикл + ИсполняемыйТестовыйМодуль = ИсполняемыйТестовыйМодуль(ТестовыйМодуль); + ИсполняемыеТестовыеМодули.Добавить(ИсполняемыйТестовыйМодуль); + КонецЦикла; + + ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(ИсполняемыеТестовыеМодули); + + ДополнительныеПараметры.ИсполняемыеТестовыеМодули = ИсполняемыеТестовыеМодули; ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ДополнительныеПараметры, ИсполняемыеТестовыеМодули); КонецПроцедуры @@ -219,18 +253,22 @@ ЮТКонтекстСлужебный.УстановитьТекущийЭтапПрогона(ЮТФабрика.ЭтапыПрогона().ПрогонТестов); ЮТИсполнительСлужебныйВызовСервера.СохранитьИнформациюОТестовыхСценариях(ДополнительныеПараметры.ИсполняемыеТестовыеМодули); - ЮТСобытияСлужебный.ПередВыполнениемТестов(ДополнительныеПараметры.ИсполняемыеТестовыеМодули); - РезультатыТестирования = Новый Массив(); + Отказ = Ложь; + ЮТСобытияСлужебный.ПередВыполнениемТестов(ДополнительныеПараметры.ИсполняемыеТестовыеМодули, Отказ); - Для Каждого ТестовыйМодуль Из ДополнительныеПараметры.ИсполняемыеТестовыеМодули Цикл + Если НЕ Отказ Тогда + + Для Каждого ТестовыйМодуль Из ДополнительныеПараметры.ИсполняемыеТестовыеМодули Цикл + + РезультатыПрогонаМодуля = ВыполнитьТестыМодуля(ТестовыйМодуль); + РезультатыТестирования.Добавить(РезультатыПрогонаМодуля); + + КонецЦикла; - РезультатыПрогонаМодуля = ВыполнитьТестыМодуля(ТестовыйМодуль); - РезультатыТестирования.Добавить(РезультатыПрогонаМодуля); + ЮТСобытияСлужебный.ПослеВыполненияТестов(РезультатыТестирования); - КонецЦикла; - - ЮТСобытияСлужебный.ПослеВыполненияТестов(РезультатыТестирования); + КонецЕсли; ДополнительныеПараметры.РезультатыТестирования = РезультатыТестирования; ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ДополнительныеПараметры, РезультатыТестирования); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 0e2e04ca8..4404ab2f3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -155,11 +155,17 @@ // // Параметры: // ИсполняемыеМодули - Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоТестовогоМодуля -Процедура ПередВыполнениемТестов(ИсполняемыеМодули) Экспорт +// Отказ - Булево - Отказ от загрузки тестов из модуля +Процедура ПередВыполнениемТестов(ИсполняемыеМодули, Отказ) Экспорт - Параметры = ЮТКоллекции.ЗначениеВМассиве(ИсполняемыеМодули); + Параметры = ЮТКоллекции.ЗначениеВМассиве(ИсполняемыеМодули, Отказ); ВызватьПодключаемыйОбработчикСобытия("ПередВыполнениемТестов", "ИсполнениеТестов", Параметры); + Отказ = Параметры[1]; + Если Отказ Тогда + ЮТЛогирование.Предостережение("Выполнение тестовых сценариев отменено"); + КонецЕсли; + КонецПроцедуры // После выполнения тестов. @@ -184,9 +190,14 @@ // Отказ - Булево - Отказ от загрузки тестов из модуля Процедура ПередЧтениеСценариев(Отказ) Экспорт - Параметры = Новый Массив(); + Параметры = ЮТКоллекции.ЗначениеВМассиве(Отказ); ВызватьПодключаемыйОбработчикСобытия("ПередЧтениеСценариев", "ЗагрузкаТестов", Параметры); + Отказ = Параметры[0]; + Если Отказ Тогда + ЮТЛогирование.Предостережение("Загрузка тестовых сценариев отменена"); + КонецЕсли; + КонецПроцедуры // Вызов события "ПередЧтениемСценариевМодуля" @@ -243,10 +254,12 @@ Процедура ФильтрацияТестов_ПроверкаМодуля(МетаданныеМодуля, Отказ) Экспорт Параметры = ЮТКоллекции.ЗначениеВМассиве(МетаданныеМодуля, Отказ); - ВызватьПодключаемыйОбработчикСобытия("ПроверкаМодуля", "ЗагрузкаТестов", Параметры); + ВызватьПодключаемыйОбработчикСобытия("ФильтрацияТестов_ПроверкаМодуля", "ЗагрузкаТестов", Параметры); + + Отказ = Параметры[1]; - Если Параметры[1] Тогда - Отказ = Истина; + Если Отказ Тогда + ЮТЛогирование.Отладка(СтрШаблон("Загрузка модуля `%1`отклонена при обработке события", МетаданныеМодуля.Имя)); КонецЕсли; КонецПроцедуры diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" index f1de9a9db..6e0c3705d 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" @@ -464,14 +464,9 @@ &НаКлиенте Процедура ЗагрузитьТесты() - ПараметрыЗапуска = ПараметрыЗапуска(); - - ПараметрыЗагрузки = ЮТИсполнительСлужебныйКлиент.ПараметрыИсполнения(); - ПараметрыЗагрузки.Цепочка.Добавить(Новый ОписаниеОповещения("ПослеЗагрузкиТестов", ЭтотОбъект, ПараметрыЗапуска)); - ПараметрыЗагрузки.ПараметрыЗапуска = ПараметрыЗапуска; - - ЮТИсполнительСлужебныйКлиент.ВыполнитьИнициализацию(ПараметрыЗагрузки.ПараметрыЗапуска); - ЮТИсполнительСлужебныйКлиент.ОбработчикЗагрузитьТесты(Неопределено, ПараметрыЗагрузки); + ПараметрыЗапуска = ЮТФабрика.ПараметрыЗапуска(); + Обработчик = Новый ОписаниеОповещения("ПослеЗагрузкиТестов", ЭтотОбъект, ПараметрыЗапуска); + ЮТИсполнительСлужебныйКлиент.ЗагрузитьИсполняемыеТесты(ПараметрыЗапуска, Обработчик); КонецПроцедуры @@ -535,29 +530,35 @@ ЮТИсполнительСлужебныйКлиент.ВыполнитьИнициализацию(ПараметрыЗапускаТестирования); ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(Модули); - ЮТСобытияСлужебный.ПередВыполнениемТестов(Модули); - Для Каждого Модуль Из Модули Цикл - - СброситьСостояниеТестирования(Модуль); - - Результат = ЮТИсполнительСлужебныйКлиент.ВыполнитьТестыМодуля(Модуль); + Отказ = Ложь; + ЮТСобытияСлужебный.ПередВыполнениемТестов(Модули, Отказ); + + Если НЕ Отказ Тогда - Для Каждого Набор Из Результат.НаборыТестов Цикл + Для Каждого Модуль Из Модули Цикл - Для Каждого Тест Из Набор.Тесты Цикл + СброситьСостояниеТестирования(Модуль); + + Результат = ЮТИсполнительСлужебныйКлиент.ВыполнитьТестыМодуля(Модуль); + + Для Каждого Набор Из Результат.НаборыТестов Цикл + + Для Каждого Тест Из Набор.Тесты Цикл + + Строка = ДеревоТестов.НайтиПоИдентификатору(Тест.Идентификатор); + ОтобразитьРезультатТеста(Строка, Тест, Набор); + + КонецЦикла; - Строка = ДеревоТестов.НайтиПоИдентификатору(Тест.Идентификатор); - ОтобразитьРезультатТеста(Строка, Тест, Набор); + Строка = ДеревоТестов.НайтиПоИдентификатору(Набор.Идентификатор); + ОбновитьСтатистикуНабора(Строка); КонецЦикла; - Строка = ДеревоТестов.НайтиПоИдентификатору(Набор.Идентификатор); - ОбновитьСтатистикуНабора(Строка); - КонецЦикла; - КонецЦикла; + КонецЕсли; ОбновитьОбщуюСтатистику(Ложь); diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" index 597dd79d8..9587b6851 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" @@ -43,7 +43,8 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - ЗаполнитьДеревоТестов(); + Обработчик = Новый ОписаниеОповещения("ОтобразитьДеревоТестов", ЭтотОбъект); + ЮТИсполнительСлужебныйКлиент.ЗагрузитьЗарегистрированныеТесты(ЮТФабрика.ПараметрыЗапуска(), Обработчик); ПоддерживаемыеФорматыОтчетов = ЮТОтчетСлужебный.ПоддерживаемыеФорматыОтчетов(); Для Каждого Формат Из ПоддерживаемыеФорматыОтчетов Цикл @@ -177,11 +178,7 @@ #Область СлужебныеПроцедурыИФункции &НаКлиенте -Процедура ЗаполнитьДеревоТестов() - - ЮТКонтекстСлужебный.ИнициализироватьКонтекст(); - ТестовыеМодули = ЮТЧитательСлужебный.ЗагрузитьТесты(Новый Структура("filter", Новый Структура)); - ЮТКонтекстСлужебный.УдалитьКонтекст(); +Процедура ОтобразитьДеревоТестов(ТестовыеМодули, ДополнительныеПараметры) Экспорт СтрокиРасширений = Новый Соответствие(); From 5ba698b3374401948120571cc35fb5876828f12a Mon Sep 17 00:00:00 2001 From: alkoleft Date: Thu, 30 May 2024 02:01:46 +0300 Subject: [PATCH 48/54] =?UTF-8?q?#352=20=D0=9E=D0=BF=D0=B8=D1=81=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=BD=D1=8B=D1=85=20=D1=81=D0=BE=D0=B1=D1=8B=D1=82=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- documentation/docs/features/events.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/documentation/docs/features/events.md b/documentation/docs/features/events.md index 5845eda2c..e81c8b366 100644 --- a/documentation/docs/features/events.md +++ b/documentation/docs/features/events.md @@ -155,12 +155,14 @@ YAxUnit также использует события для работы вн ### ЗагрузкаТестов -#### ПередЧтениеСценариев() +#### ПередЧтениеСценариев(Отказ) `&НаКлиенте` Вызывается перед загрузкой тестов. +В событии можно отменить загрузку тестов установив параметр `Отказ = Истина`. + #### ПередЧтениемСценариевМодуля(МетаданныеМодуля) `&НаКлиенте`/`&НаСервере` в зависимости от доступности модуля. @@ -196,14 +198,24 @@ YAxUnit также использует события для работы вн Например, из одного клиент-серверного теста формируется 2 исполняемых теста (для сервера и для клиента) +#### ФильтрацияТестов_ПроверкаМодуля(МетаданныеМодуля, Отказ) + +`&НаКлиенте` + +Вызывается при поиске тестовых модулей. + +Позволяет отфильтровать "лишние" тестовые модули по своим правилам, если модуль не нужно грузить, просто установите параметр `Отказ = Истина` + ### ИсполнениеТестов -#### ПередВыполнениемТестов(ИсполняемыеМодули) +#### ПередВыполнениемТестов(ИсполняемыеМодули, Отказ) `&НаКлиенте` Перед запуском всех тестов. +В событии можно отменить запуск всех тестов установив параметр `Отказ = Истина`. + #### ПередВсемиТестамиМодуля(ОписаниеСобытия) `&НаКлиенте`/`&НаСервере` в зависимости от доступности модуля. From ee67318898136f84100376a5b224c7ad559a75cc Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Thu, 30 May 2024 13:29:53 +0300 Subject: [PATCH 49/54] =?UTF-8?q?#352=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B7=D0=B0=D0=BC=D0=B5?= =?UTF-8?q?=D1=87=D0=B0=D0=BD=D0=B8=D0=B9=20=D1=81=D0=BE=D0=BD=D0=B0=D1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 13 +++--- .../Module.bsl" | 40 +++++++++---------- 2 files changed, 26 insertions(+), 27 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 4404ab2f3..25a5e6ca3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -161,8 +161,8 @@ Параметры = ЮТКоллекции.ЗначениеВМассиве(ИсполняемыеМодули, Отказ); ВызватьПодключаемыйОбработчикСобытия("ПередВыполнениемТестов", "ИсполнениеТестов", Параметры); - Отказ = Параметры[1]; - Если Отказ Тогда + Если Параметры[1] Тогда + Отказ = Истина; ЮТЛогирование.Предостережение("Выполнение тестовых сценариев отменено"); КонецЕсли; @@ -193,8 +193,8 @@ Параметры = ЮТКоллекции.ЗначениеВМассиве(Отказ); ВызватьПодключаемыйОбработчикСобытия("ПередЧтениеСценариев", "ЗагрузкаТестов", Параметры); - Отказ = Параметры[0]; - Если Отказ Тогда + Если Параметры[0] Тогда + Отказ = Истина; ЮТЛогирование.Предостережение("Загрузка тестовых сценариев отменена"); КонецЕсли; @@ -256,9 +256,8 @@ Параметры = ЮТКоллекции.ЗначениеВМассиве(МетаданныеМодуля, Отказ); ВызватьПодключаемыйОбработчикСобытия("ФильтрацияТестов_ПроверкаМодуля", "ЗагрузкаТестов", Параметры); - Отказ = Параметры[1]; - - Если Отказ Тогда + Если Параметры[1] Тогда + Отказ = Истина; ЮТЛогирование.Отладка(СтрШаблон("Загрузка модуля `%1`отклонена при обработке события", МетаданныеМодуля.Имя)); КонецЕсли; diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" index 9587b6851..81510f37d 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\241\320\276\320\267\320\264\320\260\320\275\320\270\320\265\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270/Module.bsl" @@ -186,12 +186,7 @@ ИмяРасширения = ОписаниеМодуля.Метаданные.Расширение; - СтрокаРасширения = СтрокиРасширений[ИмяРасширения]; - Если СтрокаРасширения = Неопределено Тогда - СтрокаРасширения = ДобавитьСтрокуРасширения(ДеревоТестов, ИмяРасширения); - СтрокиРасширений.Вставить(ИмяРасширения, СтрокаРасширения); - КонецЕсли; - + СтрокаРасширения = СтрокаРасширения(ДеревоТестов, СтрокиРасширений, ИмяРасширения); СтрокаМодуля = ДобавитьСтрокуМодуля(СтрокаРасширения, ОписаниеМодуля.Метаданные); Если ОписаниеМодуля.НаборыТестов.Количество() = 1 Тогда @@ -222,19 +217,24 @@ КонецПроцедуры -&НаКлиентеНаСервереБезКонтекста -Функция ДобавитьСтрокуРасширения(Владелец, ИмяРасширения) - - Строка = Владелец.ПолучитьЭлементы().Добавить(); - Строка.Идентификатор = ИмяРасширения; - Строка.Представление = ИмяРасширения; - Строка.ТипОбъекта = 0; - - Возврат Строка; +&НаКлиенте +Функция СтрокаРасширения(ДеревоТестов, СтрокиРасширений, ИмяРасширения) + + СтрокаРасширения = СтрокиРасширений[ИмяРасширения]; + Если СтрокаРасширения = Неопределено Тогда + СтрокаРасширения = ДеревоТестов.ПолучитьЭлементы().Добавить(); + СтрокаРасширения.Идентификатор = ИмяРасширения; + СтрокаРасширения.Представление = ИмяРасширения; + СтрокаРасширения.ТипОбъекта = 0; + + СтрокиРасширений.Вставить(ИмяРасширения, СтрокаРасширения); + КонецЕсли; + Возврат СтрокаРасширения; + КонецФункции -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Функция ДобавитьСтрокуМодуля(Владелец, МетаданныеМодуля) Строка = Владелец.ПолучитьЭлементы().Добавить(); @@ -246,7 +246,7 @@ КонецФункции -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Функция ДобавитьСтрокуНабора(Владелец, Набор) Строка = Владелец.ПолучитьЭлементы().Добавить(); @@ -258,7 +258,7 @@ КонецФункции -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Функция ДобавитьСтрокуТеста(Владелец, Тест) Представление = ЮТФабрикаСлужебный.ПредставлениеТеста(Тест); @@ -278,7 +278,7 @@ КонецФункции -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Процедура УстановитьРекурсивноЗначение(Элементы, Значение, Колонка = "Отметка") Для Каждого Элемент Из Элементы Цикл @@ -293,7 +293,7 @@ КонецПроцедуры -&НаКлиентеНаСервереБезКонтекста +&НаКлиенте Процедура ОбновитьОтметкиРодителей(Элемент) Родитель = Элемент.ПолучитьРодителя(); From 3c7eb14a8b79e7002b46b5da4fd7e1901d93ac00 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Thu, 30 May 2024 15:04:59 +0300 Subject: [PATCH 50/54] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=B0=D0=BD=D0=B3=D0=BB=20=D0=BB=D0=BE?= =?UTF-8?q?=D0=BA=D0=B0=D0=BB=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 15 ++++++ .../Module.bsl" | 3 +- .../Module.bsl" | 49 ++++++++++++++----- 3 files changed, 53 insertions(+), 14 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" index 4008aab9e..d92bb0e09 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\321\202\321\200\320\276\320\272\320\270/Module.bsl" @@ -309,6 +309,21 @@ КонецФункции +// Получает строку на языке платформы из набора строк на разных языках платформы. +// +// Параметры: +// СтрокаНаРазныхЯзыках - Строка - Строки на разных языках, разделенные символом ";" (точка с запятой). +// Строка на одном языке состоит из кода языка, указанного в метаданных, символа "=" (равно) и собственно строки текста на данном языке +// в одинарных кавычках, двойных кавычках или без кавычек (когда указывается только один язык). +// +// Возвращаемое значение: +// Строка - Локализованное сообщение платформы +Функция ЛокализованноеСообщениеПлатформы(СтрокаНаРазныхЯзыках) Экспорт + + Возврат НСтр(СтрокаНаРазныхЯзыках, ЮТОкружение.ЛокальПлатформы()); + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" index a9b254da4..144d1d2b5 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265/Module.bsl" @@ -436,9 +436,10 @@ .Метод("ЗагрузитьИзМакета", Параметры) .НеВыбрасываетИсключение(); + ТекстСообщения = ЮТСтроки.ЛокализованноеСообщениеПлатформы("ru = 'не заполнено или заполнено неверно'; en = 'is blank or has an invalid value'"); ЮТест.ОжидаетЧто(ЮТест.Данные()) .Метод("ЗагрузитьИзМакета").Параметр("ОбщийМакет.ЮТ_МакетТестовыхДанных.R14C1:R16C3").Параметр(ОписанияТипов) - .ВыбрасываетИсключение("не заполнено или заполнено неверно"); + .ВыбрасываетИсключение(ТекстСообщения); КонецПроцедуры diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" index 6a6d4f020..42f67e3b0 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\243\321\202\320\262\320\265\321\200\320\266\320\264\320\265\320\275\320\270\321\217/Module.bsl" @@ -509,7 +509,8 @@ Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `1` равно `<Пустое значение, Тип: Не определено>`, но это не так"); + ОжидаемоеСообщение = СтрШаблон("Ожидали, что проверяемое значение `1` равно `<Пустое значение, Тип: %1>`, но это не так", Тип("Неопределено")); + ПроверитьОшибкуУтверждения(Ошибка, ОжидаемоеСообщение); КонецПроцедуры @@ -541,7 +542,10 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, СтрШаблон("Ожидали, что проверяемое значение `%1` не равно `%1`, но это не так", "<Пустое значение, Тип: Не определено>")); + + + ПредставлениеЗначения = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Неопределено")); + ПроверитьОшибкуУтверждения(Ошибка, СтрШаблон("Ожидали, что проверяемое значение `%1` не равно `%1`, но это не так", ПредставлениеЗначения)); КонецПроцедуры @@ -874,7 +878,9 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `<Пустое значение, Тип: Не определено>` является заполненным, но это не так"); + + ПредставлениеПустогоЗначения = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Неопределено")); + ПроверитьОшибкуУтверждения(Ошибка, СтрШаблон("Ожидали, что проверяемое значение `%1` является заполненным, но это не так", ПредставлениеПустогоЗначения)); ПроверитьДанныеОшибкиСравнения(Неопределено, Неопределено); Попытка @@ -894,6 +900,7 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; + ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `Массив` является заполненным, но это не так"); Попытка @@ -904,9 +911,8 @@ Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ОжидаемоеСообщение = ?(ЮТОкружение.ИспользуетсяАнглийскаяЛокальПлатформы(), - "Mutable values filling check is unavailable", - "Проверка мутабельных значений на заполненность"); + ОжидаемоеСообщение = ЮТСтроки.ЛокализованноеСообщениеПлатформы( + "ru ='Проверка мутабельных значений на заполненность'; en='Mutable values filling check is unavailable'"); ПроверитьОшибкуИсполнения(Ошибка, ОжидаемоеСообщение); КонецПроцедуры @@ -985,7 +991,9 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `<Пустое значение, Тип: Не определено>` существует, но это не так"); + + ПредставлениеЗначение = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Неопределено")); + ПроверитьОшибкуУтверждения(Ошибка, СтрШаблон("Ожидали, что проверяемое значение `%1` существует, но это не так", ПредставлениеЗначение)); ПроверитьДанныеОшибкиСравнения(Неопределено, Неопределено); Попытка @@ -1016,7 +1024,10 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, "Пустая строка: ожидали, что проверяемое значение `<Пустое значение, Тип: Строка>` не существует, но это не так"); + + ПредставлениеЗначение = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Строка")); + ПроверитьОшибкуУтверждения(Ошибка, + СтрШаблон("Пустая строка: ожидали, что проверяемое значение `%1` не существует, но это не так", ПредставлениеЗначение)); ПроверитьДанныеОшибкиСравнения("", Неопределено); Попытка @@ -1063,7 +1074,10 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, "Пустая строка: ожидали, что проверяемое значение `<Пустое значение, Тип: Строка>` является неопределено, но это не так"); + + ПредставлениеЗначение = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Строка")); + ПроверитьОшибкуУтверждения(Ошибка, + СтрШаблон("Пустая строка: ожидали, что проверяемое значение `%1` является неопределено, но это не так", ПредставлениеЗначение)); Попытка Ошибка = Неопределено; @@ -1103,7 +1117,10 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `<Пустое значение, Тип: Не определено>` не является неопределено, но это не так"); + + ПредставлениеЗначение = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Неопределено")); + ПроверитьОшибкуУтверждения(Ошибка, + СтрШаблон("Ожидали, что проверяемое значение `%1` не является неопределено, но это не так", ПредставлениеЗначение)); ПроверитьДанныеОшибкиСравнения(Неопределено, Неопределено); КонецПроцедуры @@ -1122,7 +1139,9 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; - ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `<Пустое значение, Тип: Не определено>` является null, но это не так"); + + ПредставлениеЗначение = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Неопределено")); + ПроверитьОшибкуУтверждения(Ошибка, СтрШаблон("Ожидали, что проверяемое значение `%1` является null, но это не так", ПредставлениеЗначение)); ПроверитьДанныеОшибкиСравнения(Неопределено, Null); КонецПроцедуры @@ -1904,8 +1923,10 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; + + ПредставлениеЗначение = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Строка")); ПроверитьОшибкуУтверждения(Ошибка, - "Ожидали, что проверяемое значение `<Пустое значение, Тип: Строка>` начинается с `ризоватовский`, но это не так"); + СтрШаблон("Ожидали, что проверяемое значение `%1` начинается с `ризоватовский`, но это не так", ПредставлениеЗначение)); Варианты = ЮТест.Варианты("ПроверяемоеЗначение, СтрокаПоиска, ОжидаемаяОшибка") .Добавить("Ризоватовский сельсовет", "", "Ожидали, что ожидаемое значение заполнено, но это не так") @@ -1944,8 +1965,10 @@ Исключение Ошибка = ИнформацияОбОшибке(); КонецПопытки; + + ПредставлениеЗначение = СтрШаблон("<Пустое значение, Тип: %1>", Тип("Строка")); ПроверитьОшибкуУтверждения(Ошибка, - "Ожидали, что проверяемое значение `<Пустое значение, Тип: Строка>` заканчивается на `сельсовет`, но это не так"); + СтрШаблон("Ожидали, что проверяемое значение `%1` заканчивается на `сельсовет`, но это не так", ПредставлениеЗначение)); Варианты = ЮТест.Варианты("ПроверяемоеЗначение, СтрокаПоиска, ОжидаемаяОшибка") .Добавить("Ризоватовский сельсовет", "", "Ожидали, что ожидаемое значение заполнено, но это не так") From e2dadb1d820d7f9931329e022f94b19111549d64 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Thu, 30 May 2024 19:09:24 +0300 Subject: [PATCH 51/54] =?UTF-8?q?#332=20=D0=9E=D1=82=D0=BE=D0=B1=D1=80?= =?UTF-8?q?=D0=B0=D0=B6=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D1=88=D0=B8=D0=B1?= =?UTF-8?q?=D0=BE=D0=BA=20=D0=BD=D0=B0=D0=B1=D0=BE=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 40 +++++++++++++------ .../Module.bsl" | 2 +- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" index 6e0c3705d..a182735a5 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\256\320\275\320\270\321\202\320\242\320\265\321\201\321\202\321\213/Forms/\320\236\321\201\320\275\320\276\320\262\320\275\320\260\321\217/Module.bsl" @@ -75,18 +75,7 @@ &НаКлиенте Процедура ДеревоТестовПриАктивизацииСтроки(Элемент) - Данные = Элементы.ДеревоТестов.ТекущиеДанные; - - Если Данные = Неопределено Тогда - Возврат; - КонецЕсли; - - Если Данные.Ошибки.Количество() Тогда - Элементы.ДеревоТестовОшибки.ТекущаяСтрока = Данные.Ошибки[0].ПолучитьИдентификатор(); - КонецЕсли; - - ОтобразитьДанныеОшибки(); - ОбновитьДоступностьСравнения(); + ПриИзмененииТекущегоЭлементаДереваТестов(); КонецПроцедуры @@ -201,8 +190,12 @@ СтрокаНабора.Состояние = Статусы.Успешно; КонецЕсли; + Если СтрокаНабора.Состояние = Статусы.Ожидание И ЗначениеЗаполнено(СтрокаНабора.Ошибки) Тогда + СтрокаНабора.Прогресс = КартинкаСтатуса(Статусы.Сломан); + Возврат СтатистикаНабора; + КонецЕсли; + СтрокаНабора.Прогресс = ГрафическоеПредставлениеСтатистики(СтатистикаНабора); - СтрокаНабора.Иконка = КартинкаСтатуса(СтрокаНабора.Состояние); СтрокаНабора.ПредставлениеВремяВыполнения = ЮТОбщий.ПредставлениеПродолжительности(СтатистикаНабора.Продолжительность); СтрокаНабора.ВремяВыполнения = СтатистикаНабора.Продолжительность; @@ -457,6 +450,24 @@ КонецФункции +&НаКлиенте +Процедура ПриИзмененииТекущегоЭлементаДереваТестов() + + Данные = Элементы.ДеревоТестов.ТекущиеДанные; + + Если Данные = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Данные.Ошибки.Количество() Тогда + Элементы.ДеревоТестовОшибки.ТекущаяСтрока = Данные.Ошибки[0].ПолучитьИдентификатор(); + КонецЕсли; + + ОтобразитьДанныеОшибки(); + ОбновитьДоступностьСравнения(); + +КонецПроцедуры + #КонецОбласти #Область ЗагрузкаТестов @@ -530,6 +541,7 @@ ЮТИсполнительСлужебныйКлиент.ВыполнитьИнициализацию(ПараметрыЗапускаТестирования); ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(Модули); + ЮТИсполнительСлужебныйВызовСервера.СохранитьИнформациюОТестовыхСценариях(Модули); Отказ = Ложь; ЮТСобытияСлужебный.ПередВыполнениемТестов(Модули, Отказ); @@ -552,6 +564,7 @@ КонецЦикла; Строка = ДеревоТестов.НайтиПоИдентификатору(Набор.Идентификатор); + ЗаполнитьОшибки(Строка, Набор); ОбновитьСтатистикуНабора(Строка); КонецЦикла; @@ -564,6 +577,7 @@ ЮТКонтекстСлужебный.УдалитьКонтекст(); + ПриИзмененииТекущегоЭлементаДереваТестов(); ОповещениеПользователю("Прогон тестов завершен", "Завершено выполнение тестов"); КонецПроцедуры diff --git "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" index 10199749a..f52122978 100644 --- "a/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\234_\320\256\320\242\320\265\321\201\321\202/Module.bsl" @@ -29,7 +29,7 @@ .ДобавитьТест("ПроверкаПереопределенногоКонтекста").Перед("Перед_ПроверкаПереопределенногоКонтекста") .ДобавитьТестовыйНабор("ПовторнаяПроверкаКонтекста") .ДобавитьТест("ПроверкаКонтекста") - .ДобавитьТест("Окружение") + .ДобавитьТест("Окружение") ; КонецПроцедуры From 1186af2ee5a6047b66c30d2aba1a40622a933617 Mon Sep 17 00:00:00 2001 From: Aleksey Ko Date: Thu, 30 May 2024 20:19:13 +0300 Subject: [PATCH 52/54] =?UTF-8?q?#333=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=BF=D1=80=D0=B8=20=D0=BF=D0=BE=D0=BB=D0=BE=D0=BC?= =?UTF-8?q?=D0=BA=D0=B5=20=D0=BA=D0=BE=D0=BD=D1=82=D0=B5=D0=BA=D1=81=D1=82?= =?UTF-8?q?=D0=B0=20=D0=B2=20=D0=BE=D0=B1=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D1=87=D0=B8=D0=BA=D0=B5=20"=D0=9F=D0=BE=D1=81=D0=BB=D0=B5?= =?UTF-8?q?=D0=9A=D0=B0=D0=B6=D0=B4=D0=BE=D0=B3=D0=BE=D0=A2=D0=B5=D1=81?= =?UTF-8?q?=D1=82=D0=B0"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 22 +++++- .../Module.bsl" | 74 +++++++------------ 2 files changed, 46 insertions(+), 50 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 0385786b0..831630478 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -157,17 +157,31 @@ Процедура ПослеКаждогоТеста(ТестовыйМодуль, Набор, Тест, ВТранзакции) - Если ЮТКонтекстСлужебный.ДанныеКонтекста() = Неопределено Тогда // Сломан контекст - ОбновитьПовторноИспользуемыеЗначения(); - ОтменитьТранзакциюТеста(Тест, ВТранзакции); + Если КонтекстСломан(Тест, ВТранзакции) Тогда ЮТСобытияСлужебный.ПослеКаждогоТеста(ТестовыйМодуль, Набор, Тест); Иначе ЮТСобытияСлужебный.ПослеКаждогоТеста(ТестовыйМодуль, Набор, Тест); - ОтменитьТранзакциюТеста(Тест, ВТранзакции); + Если НЕ КонтекстСломан(Тест, ВТранзакции) Тогда + ОтменитьТранзакциюТеста(Тест, ВТранзакции); + КонецЕсли; КонецЕсли; КонецПроцедуры +Функция КонтекстСломан(Объект, ВТранзакции) + + КонтекстСломан = ЮТКонтекстСлужебный.ДанныеКонтекста() = Неопределено; + + Если КонтекстСломан Тогда + ОбновитьПовторноИспользуемыеЗначения(); + ОтменитьТранзакциюТеста(Объект, ВТранзакции); + ЮТЛогирование.Предостережение("Обнуружена поломка глобального контекста движка. Выполнена отмена транзакции и восстановление контекста"); + КонецЕсли; + + Возврат КонтекстСломан; + +КонецФункции + Процедура ОтменитьТранзакциюТеста(Тест, ВТранзакции) #Если Сервер ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 25a5e6ca3..151e965b4 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\241\320\276\320\261\321\213\321\202\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -111,7 +111,7 @@ Процедура ПередКаждымТестом(ТестовыйМодуль, Набор, Тест) Экспорт ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль, Набор, Тест); - ВызватьОбработкуСобытийИсполненияТестов(ЮТКоллекции.ЗначениеВМассиве("ПередКаждымТестом", "ПередТестом"), ОписаниеСобытия); + ВызватьОбработкуСобытияИсполненияТестов("ПередКаждымТестом", ОписаниеСобытия, "ПередКаждымТестом, ПередТестом"); КонецПроцедуры @@ -124,7 +124,7 @@ Процедура ПослеКаждогоТеста(ТестовыйМодуль, Набор, Тест) Экспорт ОписаниеСобытия = ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов(ТестовыйМодуль, Набор, Тест); - ВызватьОбработкуСобытийИсполненияТестов(ЮТКоллекции.ЗначениеВМассиве("ПослеКаждогоТеста", "ПослеТеста"), ОписаниеСобытия); + ВызватьОбработкуСобытияИсполненияТестов("ПослеКаждогоТеста", ОписаниеСобытия, "ПослеКаждогоТеста, ПослеТеста"); КонецПроцедуры @@ -269,26 +269,7 @@ #Область СлужебныеПроцедурыИФункции -Процедура ВызватьОбработкуСобытийИсполненияТестов(События, ОписаниеСобытия) - - Для ы = 0 По События.ВГраница() Цикл - - ИмяСобытия = События[ы]; - ПропуститьОбработчикТестовогоМодуля = (ы > 0 И ОбработчикСобытияПереопределен(ИмяСобытия)); - - Если ПропуститьОбработчикТестовогоМодуля Тогда - Параметры = ЮТКоллекции.ЗначениеВМассиве(ОписаниеСобытия); - Ошибки = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); - ЗарегистрироватьОшибкиСобытияИсполнения(ИмяСобытия, ОписаниеСобытия, Ошибки); - Иначе - ВызватьОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); - КонецЕсли; - - КонецЦикла; - -КонецПроцедуры - -Процедура ВызватьОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия) +Процедура ВызватьОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия, ОбработчикиТестовогоМодуля = Неопределено) Параметры = ЮТКоллекции.ЗначениеВМассиве(ОписаниеСобытия); @@ -299,11 +280,11 @@ СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); ЮТКоллекции.ДополнитьМассив(Ошибки, СерверныеОшибки); #КонецЕсли - ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия); + ВызватьОбработчикиТестовогоМодуля(ИмяСобытия, ОписаниеСобытия, ОбработчикиТестовогоМодуля); Иначе - ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия); + ВызватьОбработчикиТестовогоМодуля(ИмяСобытия, ОписаниеСобытия, ОбработчикиТестовогоМодуля); Ошибки = ВызватьПодключаемыйОбработчикСобытия(ИмяСобытия, "ИсполнениеТестов", Параметры); #Если Клиент Тогда СерверныеОшибки = ВызватьСервернуюОбработкуСобытияИсполненияТестов(ИмяСобытия, ОписаниеСобытия); @@ -397,32 +378,39 @@ КонецФункции -// Вызвать обработчик модуля. -// -// Параметры: -// ИмяСобытия - Строка - Имя вызываемого метода обработки события -// ОписаниеСобытия - см. ЮТФабрикаСлужебный.ОписаниеСобытияИсполненияТестов -// -Процедура ВызватьОбработчикТестовогоМодуля(Знач ИмяСобытия, ОписаниеСобытия) +Процедура ВызватьОбработчикиТестовогоМодуля(ИмяСобытия, ОписаниеСобытия, ОбработчикиСобытия) + + ОбработчикСобытия = ПереопределенноеИмяСобытия(ИмяСобытия); - ОбработчикСобытияПереопределен = ОбработчикСобытияПереопределен(ИмяСобытия); - Если ОбработчикСобытияПереопределен Тогда - ИмяСобытия = ПереопределенноеИмяСобытия(ИмяСобытия); + Если ЗначениеЗаполнено(ОбработчикСобытия) Тогда + ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия, ОбработчикСобытия, Истина); + ИначеЕсли НЕ ЗначениеЗаполнено(ОбработчикиСобытия) Тогда + ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия, ИмяСобытия, Ложь); + Иначе + Для Каждого ОбработчикСобытия Из ЮТСтроки.РазделитьСтроку(ОбработчикиСобытия, ",") Цикл + ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия, ОбработчикСобытия, Ложь); + КонецЦикла; КонецЕсли; +КонецПроцедуры + +Процедура ВызватьОбработчикТестовогоМодуля(ИмяСобытия, ОписаниеСобытия, ОбработчикСобытия, ОбработчикСобытияПереопределен) + ИмяМодуля = ОписаниеСобытия.Модуль.Метаданные.Имя; - ЧастиКоманды = СтрРазделить(ИмяСобытия, "."); + ЧастиКоманды = СтрРазделить(ОбработчикСобытия, "."); Если ЧастиКоманды.Количество() = 2 Тогда ИмяМодуля = ЧастиКоманды[0]; - ИмяСобытия = ЧастиКоманды[1]; + ИмяМетода = ЧастиКоманды[1]; + Иначе + ИмяМетода = ОбработчикСобытия; КонецЕсли; Ошибки = Новый Массив(); - Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяСобытия) Тогда + Если ЮТМетодыСлужебный.МетодМодуляСуществует(ИмяМодуля, ИмяМетода) Тогда - ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2.%3`", ИмяСобытия, ИмяМодуля, ИмяСобытия)); - Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ИмяМодуля, ИмяСобытия); + ЮТЛогирование.Отладка(СтрШаблон("Обработка события `%1` - `%2.%3`", ИмяСобытия, ИмяМодуля, ИмяМетода)); + Ошибка = ЮТМетодыСлужебный.ВыполнитьМетодКонфигурацииСПерехватомОшибки(ИмяМодуля, ИмяМетода); Если Ошибка <> Неопределено Тогда ЮТЛогирование.Ошибка(ЮТРегистрацияОшибок.ПредставлениеОшибки("Ошибка обработки события", Ошибка)); @@ -431,7 +419,7 @@ ИначеЕсли ОбработчикСобытияПереопределен Тогда - ТекстИсключения = СтрШаблон("Не найден обработчик тестового модуля %1.%2", ИмяМодуля, ИмяСобытия); + ТекстИсключения = СтрШаблон("Не найден обработчик тестового модуля %1.%2", ИмяМодуля, ИмяМетода); ВызватьИсключение ТекстИсключения; КонецЕсли; @@ -448,12 +436,6 @@ КонецПроцедуры -Функция ОбработчикСобытияПереопределен(ИмяСобытия) - - Возврат ЗначениеЗаполнено(ПереопределенноеИмяСобытия(ИмяСобытия)); - -КонецФункции - Функция ПереопределенноеИмяСобытия(ИмяСобытия) Если ЭтоСобытиеПеред(ИмяСобытия) Тогда From 149b75b0ce21261472c316f7803bf54f559a8162 Mon Sep 17 00:00:00 2001 From: alkoleft Date: Fri, 31 May 2024 11:42:36 +0300 Subject: [PATCH 53/54] =?UTF-8?q?#333=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BE=D0=BF=D0=B5=D1=87=D0=B0?= =?UTF-8?q?=D1=82=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Module.bsl" | 2 +- .../Module.bsl" | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" index 95045f3dd..f6ca10c5f 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202/Module.bsl" @@ -229,7 +229,7 @@ ИсполняемыйТестовыйМодуль = ИсполняемыйТестовыйМодуль(ТестовыйМодуль); ИсполняемыеТестовыеМодули.Добавить(ИсполняемыйТестовыйМодуль); КонецЦикла; - + ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(ИсполняемыеТестовыеМодули); ДополнительныеПараметры.ИсполняемыеТестовыеМодули = ИсполняемыеТестовыеМодули; diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 831630478..6baee4f3d 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\230\321\201\320\277\320\276\320\273\320\275\320\270\321\202\320\265\320\273\321\214\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\232\320\273\320\270\320\265\320\275\321\202\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -175,7 +175,7 @@ Если КонтекстСломан Тогда ОбновитьПовторноИспользуемыеЗначения(); ОтменитьТранзакциюТеста(Объект, ВТранзакции); - ЮТЛогирование.Предостережение("Обнуружена поломка глобального контекста движка. Выполнена отмена транзакции и восстановление контекста"); + ЮТЛогирование.Предостережение("Обнаружена поломка глобального контекста движка. Выполнена отмена транзакции и восстановление контекста"); КонецЕсли; Возврат КонтекстСломан; From 5ec3a408196bc092760eaedd6a7dc977b869793d Mon Sep 17 00:00:00 2001 From: alkoleft Date: Fri, 31 May 2024 11:46:44 +0300 Subject: [PATCH 54/54] bump version --- exts/yaxunit/src/Configuration/Configuration.mdo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exts/yaxunit/src/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index 33f6d0425..4a6015a05 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -20,7 +20,7 @@ 8.3.10 AddOn Russian - 24.04 + 24.05 Русский Adopted