From ce8fa2703732cad4faa2f1c1f1287a4ea2c368ed Mon Sep 17 00:00:00 2001 From: alkoleft Date: Wed, 25 Dec 2024 03:44:24 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20=D1=84=D0=BE=D1=80=D0=BC=D0=B8=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=B5=D0=B4=D0=B8=D0=BD?= =?UTF-8?q?=D0=BE=D0=B9=20=D1=82=D0=BE=D1=87=D0=BA=D0=B8=20=D0=B7=D0=B0?= =?UTF-8?q?=D0=BF=D1=83=D1=81=D0=BA=D0=B0=20=D1=82=D0=B5=D1=81=D1=82=D0=BE?= =?UTF-8?q?=D0=B2=20=D0=BF=D0=BE=20=D1=82=D0=B5=D0=BA=D1=81=D1=82=D1=83=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" | 7 +- .../Module.bsl" | 25 ++ .../Module.bsl" | 55 ++- .../Module.bsl" | 52 +++ ...0\265\321\200\320\262\320\265\321\200.mdo" | 9 + .../src/Configuration/Configuration.mdo | 1 + .../CommandModule.bsl" | 33 ++ .../Form.form" | 323 ++++++++++++++++-- .../Module.bsl" | 78 ++--- ...0\265\321\201\321\202\320\276\320\262.mdo" | 9 + 10 files changed, 502 insertions(+), 90 deletions(-) create mode 100644 "exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\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\240\320\265\320\260\320\272\321\202\320\270\320\262\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\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/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Commands/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/CommandModule.bsl" diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\222\320\275\320\265\321\210\320\275\320\270\320\265\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270\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\222\320\275\320\265\321\210\320\275\320\270\320\265\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270\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" index d484f4e4f..5922df6a0 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\222\320\275\320\265\321\210\320\275\320\270\320\265\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270\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\222\320\275\320\265\321\210\320\275\320\270\320\265\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270\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" @@ -18,7 +18,7 @@ #Область СлужебныйПрограммныйИнтерфейс -Функция СкомпилироватьВнешнююОбработку(ТекстМодуляОбъект = "", Знач ТекстМодуляФормы = "") Экспорт +Функция СкомпилироватьВнешнююОбработку(ТекстМодуляОбъект = "", Знач ТекстМодуляОбычнойФормы = "", Знач ТекстМодуляУправляемойФормы = "") Экспорт // Для сборки используется утилита v8unpack - https://github.com/e8tools/v8unpack @@ -45,8 +45,9 @@ // Модуль формы ИмяФайлаФормы = ЮТФайлы.ОбъединитьПути(КаталогФайловОбработки, ИдентификаторФормы); ДанныеФормы = ЮТФайлы.ДанныеТекстовогоФайла(ИмяФайлаФормы); - ТекстМодуляФормы = СтрЗаменить(ТекстМодуляФормы, """", """"""); - ДанныеФормы = СтрЗаменить(ДанныеФормы, "MODULE_PLACEHOLDER", ТекстМодуляФормы); + ТекстМодуляОбычнойФормы = СтрЗаменить(ТекстМодуляОбычнойФормы, """", """"""); + ДанныеФормы = СтрЗаменить(ДанныеФормы, "MODULE_PLACEHOLDER", ТекстМодуляОбычнойФормы); + ЮТФайлы.ЗаписатьТекстВФайла(ИмяФайлаФормы, ДанныеФормы); ИмяФайла = СобратьОбработку(РабочийКаталог); 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 06f9151ae..5ee7177e3 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" @@ -52,4 +52,29 @@ КонецПроцедуры +Функция СоздатьВнешнююОбработку(Знач ОписаниеМодуля) Экспорт + + ТекстМодуляОбъект = ?(ОписаниеМодуля.Сервер, ОписаниеМодуля.Текст, ""); + ТекстМодуляОбычнойФормы = ?(ОписаниеМодуля.КлиентОбычное, ОписаниеМодуля.Текст, ""); + ТекстМодуляУправляемойФормы = ?(ОписаниеМодуля.КлиентУправляемое, ОписаниеМодуля.Текст, ""); + + ИмяФайлаОбработки = ЮТВнешниеОбработкиСлужебныйСервер.СкомпилироватьВнешнююОбработку(ТекстМодуляОбъект, + ТекстМодуляОбычнойФормы, + ТекстМодуляУправляемойФормы); + Данные = Новый ДвоичныеДанные(ИмяФайлаОбработки); + УдалитьФайлы(ИмяФайлаОбработки); + + Возврат ВнешниеОбработки.Подключить(ПоместитьВоВременноеХранилище(Данные)); + +КонецФункции + +Функция СценарииВнешнейОбработки(Знач ИмяОбработки) Экспорт + + Обработка = ВнешниеОбработки.Создать(ИмяОбработки); + МетаданныеОбработки = ЮТМетаданныеСлужебныйВызовСервера.МетаданныеОбработки(Обработка, Истина); + + Возврат ЮТЧитательСлужебный.ИсполняемыеСценарииОбъекта(Обработка, МетаданныеОбработки); + +КонецФункции + #КонецОбласти 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 a8403bbdc..b0a530bee 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" @@ -104,10 +104,42 @@ КонецПроцедуры +Процедура ВыполнитьТестыВременногоМодуля(ПараметрыЗапуска, ОписаниеМодуля, ИменаМетодов, ОбработчикЗавершения) Экспорт + + ПараметрыИсполнения = ПараметрыИсполнения(); + ПараметрыИсполнения.ПараметрыЗапуска = ПараметрыЗапуска; + ПараметрыИсполнения.Вставить("ОписаниеМодуля", ОписаниеМодуля); + ПараметрыИсполнения.Вставить("ИмяВнешнейОбработки", ""); + + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикИнициализация"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикСоздатьВнешнююОбработку"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикЗагрузитьТестыВнешнейОбработки"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикСформироватьИсполняемыеТесты"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикПослеФормированияИсполняемыхНаборовТестов"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикРазрешитьЗависимости"); + ДобавитьОбработчикЦепочки(ПараметрыИсполнения, "ОбработчикВыполнитьТестирование"); + ПараметрыИсполнения.Цепочка.Добавить(ОбработчикЗавершения); + + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ПараметрыИсполнения); + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции +Функция ОписаниеВременногоМодуля() Экспорт + + Описание = Новый Структура; + Описание.Вставить("Текст", ""); + Описание.Вставить("КлиентУправляемое", Ложь); + Описание.Вставить("КлиентОбычное", Ложь); + Описание.Вставить("Сервер", Ложь); + + Возврат Описание; + +КонецФункции + Функция ПараметрыИсполнения() Экспорт Параметры = ЮТАсинхроннаяОбработкаСлужебныйКлиент.ЦепочкаАсинхроннойОбработки(); @@ -190,7 +222,7 @@ КонецПроцедуры -Процедура ОбработчикПослеФормированияИсполняемыхНаборовТестов(_, ДополнительныеПараметры) Экспорт +Процедура ОбработчикПослеФормированияИсполняемыхНаборовТестов(_, ДополнительныеПараметры) Экспорт ЮТСобытияСлужебный.ПослеФормированияИсполняемыхНаборовТестов(ДополнительныеПараметры.ИсполняемыеТестовыеМодули); ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ДополнительныеПараметры); @@ -285,6 +317,27 @@ ВызватьИсключение ТекстОшибки; КонецПроцедуры +Процедура ОбработчикСоздатьВнешнююОбработку(_, ПараметрыИсполнения) Экспорт + + ЮТЛогирование.Информация("Создание внешней обработки"); + ПараметрыИсполнения.ИмяВнешнейОбработки = ЮТИсполнительСлужебныйВызовСервера.СоздатьВнешнююОбработку(ПараметрыИсполнения.ОписаниеМодуля); + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ПараметрыИсполнения); + +КонецПроцедуры + +Процедура ОбработчикЗагрузитьТестыВнешнейОбработки(_, ПараметрыИсполнения) Экспорт + + ЮТФильтрацияСлужебный.УстановитьКонтекст(Новый Структура("filter", Новый Структура));//("tests", ЮТКоллекции.ЗначениеВМассиве(Метод)))); + + СценарцииСервер = ЮТИсполнительСлужебныйВызовСервера.СценарииВнешнейОбработки(ПараметрыИсполнения.ИмяВнешнейОбработки); + СценарцииКлиента = ЮТИсполнительСлужебныйВызовСервера.СценарииВнешнейОбработки(ПараметрыИсполнения.ИмяВнешнейОбработки); + + ТестовыеМодули = ЮТКоллекции.ЗначениеВМассиве(СценарцииСервер, СценарцииКлиента); + + ЮТАсинхроннаяОбработкаСлужебныйКлиент.ВызватьСледующийОбработчик(ПараметрыИсполнения, ТестовыеМодули); + +КонецПроцедуры + #КонецОбласти Процедура ДобавитьОбработчикЦепочки(ПараметрыИсполнения, ИмяМетода) diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\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\240\320\265\320\260\320\272\321\202\320\270\320\262\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..f18568687 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -0,0 +1,52 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +// Это разработка @zeegin(https://github.com/zeegin) aka Ingvar + +#Область СлужебныйПрограммныйИнтерфейс + +// Загружает реактивное приложение как в веб клиенте так и в тонком +// +// Параметры: +// ДвоичныеДанные - ДвоичныеДанные - Реактивное приложение, например полученное из макета +// УникальныйИдентификатор - УникальныйИдентификатор - Для управления временем жизни временного хранилища +// +// Возвращаемое значение: +// Строка - Адрес или данные для html документа +Функция ЗагрузитьПриложение(ДвоичныеДанные, УникальныйИдентификатор) Экспорт + + Если ЮТОкружение.ОписаниеОкружения().ВебКлиент Тогда + Возврат ПолучитьСтрокуИзДвоичныхДанных(ДвоичныеДанные); + Иначе + Возврат ПолучитьНавигационнуюСсылкуИнформационнойБазы() + "/" + ПоместитьВоВременноеХранилище(ДвоичныеДанные, УникальныйИдентификатор); + КонецЕсли; + +КонецФункции + +Функция ЗагрузитьПриложениеИзМакета(ИмяМакета, УникальныйИдентификатор) Экспорт + + Данные = ПолучитьОбщийМакет(ИмяМакета); + Возврат ЗагрузитьПриложение(Данные, УникальныйИдентификатор); + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +#КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\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\240\320\265\320\260\320\272\321\202\320\270\320\262\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\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..113af0bb0 --- /dev/null +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/\320\256\320\242\320\240\320\265\320\260\320\272\321\202\320\270\320\262\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/Configuration/Configuration.mdo b/exts/yaxunit/src/Configuration/Configuration.mdo index 3ec7448e0..2e1252c0b 100644 --- a/exts/yaxunit/src/Configuration/Configuration.mdo +++ b/exts/yaxunit/src/Configuration/Configuration.mdo @@ -136,6 +136,7 @@ CommonModule.ЮТРазрешениеЗависимостейСлужебныйВызовСервера CommonModule.ЮТРазрешениеЗависимостейСлужебныйКлиент CommonModule.ЮТРеактивныйКлиент + CommonModule.ЮТРеактивныйСервер CommonModule.ЮТРегистрацияОшибок CommonModule.ЮТРегистрацияОшибокСлужебный CommonModule.ЮТСлужебныйПовторногоИспользования diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Commands/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/CommandModule.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Commands/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/CommandModule.bsl" new file mode 100644 index 000000000..a75ab8e17 --- /dev/null +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Commands/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/CommandModule.bsl" @@ -0,0 +1,33 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// 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/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" index 270d3b798..bead1db11 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Form.form" @@ -4,21 +4,79 @@ ru Редактор тестов - - EditorURL - 4 + + ГруппаМодуль + 5 + + EditorURL + 20 + true + true + + true + + + EditorURL + + None + + EditorURLРасширеннаяПодсказка + 19 + true + true + + true + + Label + true + true + + Left + + + + EditorURLКонтекстноеМеню + 18 + true + true + + true + + true + + HTMLDocumentField + Enter + true + Left + true + + + OnClick + EditorURLПриНажатии + + 50 + true + 10 + true + true + true + + Style.FormBackColor + + + true true true - - EditorURL - - None + + <key>ru</key> + <value>Модуль</value> + - EditorURLРасширеннаяПодсказка - 3 + ГруппаМодульРасширеннаяПодсказка + 6 true true @@ -31,35 +89,182 @@ Left - - EditorURLКонтекстноеМеню - 2 + UsualGroup + + HorizontalIfPossible + WeakSeparation + true + true + true + Auto + DontUse + + + + ГруппаСвойстваМодуля + 7 + + Клиент + 9 + true + true + + true + + + КлиентУправляемоеПриложение + + + КлиентРасширеннаяПодсказка + 11 + true + true + + true + + Label + true + true + + Left + + + + КлиентКонтекстноеМеню + 10 + true + true + + true + + true + + CheckBoxField + Enter + true + Left + true + + + + Сервер + 12 + true + true + + true + + + Сервер + + + СерверРасширеннаяПодсказка + 14 + true + true + + true + + Label + true + true + + Left + + + + СерверКонтекстноеМеню + 13 + true + true + + true + + true + + CheckBoxField + Enter + true + Left + true + + + + ОбычноеПриложение + 15 true true true - true - - HTMLDocumentField - Enter - true - Left - true - - - OnClick - EditorURLПриНажатии - - 50 + + КлиентОбычноеПриложение + + + ОбычноеПриложениеРасширеннаяПодсказка + 17 + true + true + + true + + Label + true + true + + Left + + + + ОбычноеПриложениеКонтекстноеМеню + 16 + true + true + + true + + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Свойства модуля</value> + + + ГруппаСвойстваМодуляРасширеннаяПодсказка + 8 + true + true + + true + + Label true - 10 true - true - true - - Style.FormBackColor - + + Left + + + UsualGroup + + Vertical + WeakSeparation + true + true + true + Auto + DontUse @@ -77,8 +282,11 @@ OnCreateAtServer ПриСозданииНаСервере + + OnOpen + ПриОткрытии + true - Vertical true true true @@ -101,6 +309,57 @@ true + + КлиентУправляемоеПриложение + + <key>ru</key> + <value>Клиент (управляемое приложение)</value> + + 2 + + Boolean + + + true + + + true + + + + Сервер + + <key>ru</key> + <value>Сервер</value> + + 3 + + Boolean + + + true + + + true + + + + КлиентОбычноеПриложение + + <key>ru</key> + <value>Клиент (обычное приложение)</value> + + 4 + + Boolean + + + true + + + true + + diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" index fe3be8fa7..45b02b414 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260/Module.bsl" @@ -18,6 +18,9 @@ #Область ОписаниеПеременных +&НаКлиенте +Перем ПараметрыЗапускаТестирования; + #КонецОбласти #Область ОбработчикиСобытийФормы @@ -34,6 +37,16 @@ // // EditorURL = ПолучитьНавигационнуюСсылкуИнформационнойБазы() + "/" + ПоместитьВоВременноеХранилище(Данные, УникальныйИдентификатор); EditorURL = "http://localhost:5173/"; + Сервер = Истина; + +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + Если ПараметрыЗапускаТестирования = Неопределено Тогда + ПараметрыЗапускаТестирования = ЮТПараметрыЗапускаСлужебный.ПараметрыТестированияПоУмолчанию(); + КонецЕсли; КонецПроцедуры @@ -44,20 +57,13 @@ &НаКлиенте Процедура EditorURLПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка) - ЮТРеактивныйКлиент.ОбработатьСообщение(ЭтотОбъект, Элементы.EditorURL, ДанныеСобытия, СтандартнаяОбработка, - Новый ОписаниеОповещения("ОбработатьСообщение", ЭтотОбъект) - ); + Обработчик = Новый ОписаниеОповещения("ОбработатьСообщение", ЭтотОбъект); + ЮТРеактивныйКлиент.ОбработатьСообщение(ЭтотОбъект, Элементы.EditorURL, ДанныеСобытия, СтандартнаяОбработка, Обработчик); КонецПроцедуры #КонецОбласти -#Область ОбработчикиКомандФормы - -// Код процедур и функций - -#КонецОбласти - #Область СлужебныеПроцедурыИФункции &НаКлиенте @@ -72,21 +78,22 @@ &НаКлиенте Процедура ЗапуститьТесты(Сообщение) - ПараметрыИсполнения = ЮТИсполнительСлужебныйКлиент.ПараметрыИсполнения(); - ПараметрыИсполнения.АргументыЗапуска = ЮТПараметрыЗапускаСлужебный.ПараметрыТестированияПоУмолчанию(); - ЮТИсполнительСлужебныйКлиент.ОбработчикИнициализация(, ПараметрыИсполнения); - Сценарии = ЮТКоллекции.ЗначениеВМассиве(Сценарии(Сообщение.Значение.method, Сообщение.Значение.module)); - - ЮТИсполнительСлужебныйКлиент.ОбработчикСформироватьИсполняемыеТесты(Сценарии, ПараметрыИсполнения); + ПоказатьОповещениеПользователя("Прогон тестов", , "Запушено выполнение тестов", БиблиотекаКартинок.ЮТПодсистема); + ОписаниеМодуля = ЮТИсполнительСлужебныйКлиент.ОписаниеВременногоМодуля(); + ОписаниеМодуля.Текст = Сообщение.Значение.module; + ОписаниеМодуля.КлиентУправляемое = КлиентУправляемоеПриложение; + ОписаниеМодуля.КлиентОбычное = КлиентОбычноеПриложение; + ОписаниеМодуля.Сервер = Сервер; Обработчик = Новый ОписаниеОповещения("ПослеВыполненияТестирования", ЭтотОбъект, Сообщение); - ЮТИсполнительСлужебныйКлиент.ВыполнитьТестовыеМодули(ПараметрыИсполнения.АргументыЗапуска, ПараметрыИсполнения.ИсполняемыеТестовыеМодули, Обработчик); - + ЮТИсполнительСлужебныйКлиент.ВыполнитьТестыВременногоМодуля(ПараметрыЗапускаТестирования, ОписаниеМодуля, Неопределено, Обработчик); + КонецПроцедуры &НаКлиенте Процедура ПослеВыполненияТестирования(Результат, Сообщение) Экспорт + ПоказатьОповещениеПользователя("Прогон тестов", , "Завершено выполнение тестов", БиблиотекаКартинок.ЮТПодсистема); Ответ = Новый Структура("tests, errors", Новый Массив, Новый Массив); Для Каждого Набор Из Результат[0].НаборыТестов Цикл @@ -128,41 +135,4 @@ КонецПроцедуры -&НаКлиенте -Функция ТекстРедактора() - - Возврат ЮТРеактивныйКлиент.ГлобальноеСвойство(Элементы.EditorURL, "bslEditor").getText(); - -КонецФункции - -&НаСервереБезКонтекста -Функция Сценарии(Знач Метод, Знач ТекстМодуля) - - ИмяОбработки = ИмяВременнойОбработки(ТекстМодуля); - Обработка = ВнешниеОбработки.Создать(ИмяОбработки); - - Возврат СценарииОбработки(Обработка, Метод); - -КонецФункции - -&НаСервереБезКонтекста -Функция СценарииОбработки(Обработка, Метод) - - МетаданныеОбработки = ЮТМетаданныеСлужебныйВызовСервера.МетаданныеОбработки(Обработка, Истина); - ЮТФильтрацияСлужебный.УстановитьКонтекст(Новый Структура("filter", Новый Структура));//("tests", ЮТКоллекции.ЗначениеВМассиве(Метод)))); - - Возврат ЮТЧитательСлужебный.ИсполняемыеСценарииОбъекта(Обработка, МетаданныеОбработки); - -КонецФункции - -&НаСервереБезКонтекста -Функция ИмяВременнойОбработки(ТекстМодуля) - - ИмяФайлаОбработки = ЮТВнешниеОбработкиСлужебныйСервер.СкомпилироватьВнешнююОбработку(ТекстМодуля); - Данные = Новый ДвоичныеДанные(ИмяФайлаОбработки); - УдалитьФайлы(ИмяФайлаОбработки); - - Возврат ВнешниеОбработки.Подключить(ПоместитьВоВременноеХранилище(Данные)); - -КонецФункции #КонецОбласти diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262.mdo" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262.mdo" index de69a83ea..c720a7aad 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262.mdo" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262/\320\256\320\242\320\240\320\265\320\264\320\260\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262.mdo" @@ -20,4 +20,13 @@ PersonalComputer MobileDevice + + ЮТРедакторТестов + + ru + Редактор тестов + + NavigationPanelOrdinary + Auto +