Skip to content

Commit

Permalink
Merge pull request #15 from sfaqer/bugfix/various
Browse files Browse the repository at this point in the history
Исправлены выявленные ошибки
  • Loading branch information
Nivanchenko authored Oct 18, 2024
2 parents c3cb9ec + 9b86e99 commit 7b8bc83
Show file tree
Hide file tree
Showing 12 changed files with 124 additions and 46 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@ tests/features/ib/1Cv8Log
tests/features/ib/1Cv8JobScheduler
*.cfl
*.ospx
oscript_modules/*
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

Возврат Команда.ДобавитьПараметр("designer")
.ДобавитьПараметр("--no-wait")
.ВыключитьИБКМД()
.Исполнить();

КонецФункции
15 changes: 12 additions & 3 deletions src/Классы/core/Классы/КомандаВраннер.os
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
Перем ПередВыполнением;
Перем ПослеВыполнения;

Перем ВыключитьИБКМД;

&Желудь
&Характер("Компанейский")
Процедура ПриСозданииОбъекта(&Пластилин НастройкиРабочейОбласти)
Expand All @@ -18,6 +20,8 @@
ПередВыполнением = Новый Массив;
ПослеВыполнения = Новый Массив;

ВыключитьИБКМД = Ложь;

КонецПроцедуры

Функция ДобавитьПередВыполнением(Действие, Параметры = Неопределено) Экспорт
Expand All @@ -41,6 +45,11 @@
Возврат ЭтотОбъект;
КонецФункции

Функция ВыключитьИБКМД() Экспорт
ВыключитьИБКМД = Истина;
Возврат ЭтотОбъект;
КонецФункции

Процедура ПередИсполнением()
ОбработатьПодписки(ПередВыполнением);
КонецПроцедуры
Expand Down Expand Up @@ -70,7 +79,7 @@
Если НЕ ЗначениеЗаполнено(Настройки.СтрокаПодключения) Тогда
ВызватьИсключение "Не указана строка подключения";
КонецЕсли;

Команда.ДобавитьПараметр("--ibconnection " + Настройки.СтрокаПодключения);

Если ЗначениеЗаполнено(Настройки.ВерсияПлатформы) Тогда
Expand All @@ -85,7 +94,7 @@
Команда.ДобавитьПараметр("--db-pwd " + Настройки.Пароль);
КонецЕсли;

Если Настройки.ИБКМД = Истина Тогда
Если Не ВыключитьИБКМД И Настройки.ИБКМД = Истина Тогда
Команда.ДобавитьПараметр("--ibcmd");
КонецЕсли;

Expand All @@ -99,4 +108,4 @@

Возврат Команда.ПолучитьВывод();

КонецФункции
КонецФункции
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
#Использовать fs

&Пластилин
Перем НастройкиПроекта;

&Табакерка
&Пластилин
Перем КомандаВраннер;

Перем Настройки;

&Желудь
Процедура ПриСозданииОбъекта()

Процедура ПриСозданииОбъекта(&Пластилин НастройкиРабочейОбласти)
Настройки = НастройкиРабочейОбласти;
КонецПроцедуры

Функция РазобратьКонфигурацию() Экспорт
Expand All @@ -16,6 +20,11 @@
ВызватьИсключение "Не указан каталог конфигурации";
КонецЕсли;

// Для ИБКМД нужно предварительно очистить каталог выгрузки
Если Настройки.ИБКМД = Истина Тогда
ФС.ОбеспечитьПустойКаталог(КаталогКонфигурации);
КонецЕсли;

Команда = КомандаВраннер.Достать();

Команда.ДобавитьПараметр("decompile")
Expand Down Expand Up @@ -48,6 +57,11 @@
ВызватьИсключение "Не указан каталог расширения " + ИмяРасширения;
КонецЕсли;

// Для ИБКМД нужно предварительно очистить каталог выгрузки
Если Настройки.ИБКМД = Истина Тогда
ФС.ОбеспечитьПустойКаталог(Каталог);
КонецЕсли;

Команда = КомандаВраннер.Достать();

Команда.ДобавитьПараметр("decompileext")
Expand Down Expand Up @@ -83,7 +97,8 @@

Команда.ДобавитьПараметр("compileepf")
.ДобавитьПараметр(КаталогИсходников)
.ДобавитьПараметр(КаталогБинарников);
.ДобавитьПараметр(КаталогБинарников)
.ВыключитьИБКМД();

Возврат Команда.Исполнить();

Expand All @@ -95,7 +110,8 @@

Команда.ДобавитьПараметр("decompileepf")
.ДобавитьПараметр(КаталогБинарников)
.ДобавитьПараметр(КаталогИсходников);
.ДобавитьПараметр(КаталогИсходников)
.ВыключитьИБКМД();

Возврат Команда.Исполнить();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,14 @@
ВызватьИсключение СтрШаблон("Для %1 нет исходников", ИмяОбработки);
КонецЕсли;

Возврат КомпиляторИсходников.СобратьОбработку(Обработка.ПутьИсходников, КаталогБинарников);
Возврат КомпиляторИсходников.СобратьОбработку(
Обработка.ПутьИсходников,
ОбъединитьПути(
КаталогБинарников,
ФС.ОтносительныйПуть(КаталогИсходников, Новый Файл(Обработка.ПутьИсходников).Путь)
)
);

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

Функция Разобрать(ИмяОбработки) Экспорт
Expand All @@ -52,8 +59,15 @@
Если Обработка.ПутьБинарника = Неопределено Тогда
ВызватьИсключение СтрШаблон("Для %1 нет бинарника", ИмяОбработки);
КонецЕсли;

Возврат КомпиляторИсходников.РазобратьОбработку(
Обработка.ПутьБинарника,
ОбъединитьПути(
КаталогИсходников,
ФС.ОтносительныйПуть(КаталогБинарников, Новый Файл(Обработка.ПутьБинарника).Путь)
)
);

Возврат КомпиляторИсходников.РазобратьОбработку(Обработка.ПутьБинарника, КаталогИсходников);
КонецФункции

Функция СтрокаПоИмени(ИмяОбработки) Экспорт
Expand Down Expand Up @@ -83,26 +97,34 @@

КонецПроцедуры

Процедура ПрочитатьИсходники()
Процедура ПрочитатьИсходники(Каталог = Неопределено)

КаталогиИсходниковОбработок = НайтиФайлы(КаталогИсходников, "*");
Если ПустаяСтрока(Каталог) Тогда
Каталог = КаталогИсходников;
КонецЕсли;

КаталогиИсходниковОбработок = НайтиФайлы(Каталог, "*");

Для Каждого КаталогИсходниковОбработки Из КаталогиИсходниковОбработок Цикл

Если Не КаталогИсходниковОбработки.ЭтоКаталог() Тогда
Продолжить;
КонецЕсли;

Строка = СтрокаПоИмени(КаталогИсходниковОбработки.Имя);
Строка.ПутьИсходников = КаталогИсходниковОбработки.ПолноеИмя;
Если НайтиФайлы(КаталогИсходниковОбработки.ПолноеИмя, "*.xml").Количество() = 0 Тогда
ПрочитатьИсходники(КаталогИсходниковОбработки.ПолноеИмя);
Иначе
Строка = СтрокаПоИмени(КаталогИсходниковОбработки.Имя);
Строка.ПутьИсходников = КаталогИсходниковОбработки.ПолноеИмя;
КонецЕсли;

КонецЦикла;

КонецПроцедуры

Процедура ПрочитатьБинарники()

БинарныеОбработки = НайтиФайлы(КаталогБинарников, "*.epf");
БинарныеОбработки = НайтиФайлы(КаталогБинарников, "*.epf", Истина);

Для Каждого БинарнаяОбработка Из БинарныеОбработки Цикл
Строка = СтрокаПоИмени(БинарнаяОбработка.ИмяБезРасширения);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
&Деталька(Значение = "bootstrapper.v8version", ЗначениеПоУмолчанию = "")
Перем ВерсияПлатформы Экспорт;

&Деталька(Значение = "bootstrapper.ibmcd", ЗначениеПоУмолчанию = Ложь)
&Деталька(Значение = "bootstrapper.ibcmd", ЗначениеПоУмолчанию = Ложь)
Перем ИБКМД Экспорт;

&Деталька(Значение = "bootstrapper.bslls", ЗначениеПоУмолчанию = "")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,10 @@
ЖурналСобытий.Ошибка(ТекстОшибки);
КонецПопытки;
ОчередьЗаданий.Удалить(Задание);
Приостановить(1000);


КонецЕсли;

Приостановить(1000);

ОчередьОбрабатывается = Ложь;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,12 @@

КонецПроцедуры

Функция ОформитьТекстЛога(Текст)
Функция ОформитьТекстЛога(Знач Текст)

Текст = СтрЗаменить(Текст, Символы.ПС, "<br>");
Текст = СтрЗаменить(Текст, Символы.ВК, "<br>");

Шаблон = ("<span style=""text-wrap: wrap;"" >%1</span><br>");
Возврат СтрШаблон(Шаблон, СтрЗаменить(Текст, Символы.ПС, "<br>"));
КонецФункции
Возврат СтрШаблон(Шаблон, Текст);

КонецФункции
15 changes: 11 additions & 4 deletions src/Классы/interface/view/VanessaADD.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,14 @@ <h6 class="c-grey-900">Vanessa ADD</h6>
<button hx-post="/vanessaadd/cmd/compileall" hx-swap="none" type="button" class="btn cur-p btn-outline-primary" >Собрать все</button>
<button hx-post="/vanessaadd/cmd/decompileall" hx-swap="none" type="button" class="btn cur-p btn-outline-primary">Разобрать все</button>
<br><br>
<table class="table table-hover">
<table class="table table-hover" style="table-layout: fixed;">
<colgroup>
<col span="1" style="width: 50px;">
<col span="1" style="width: 30%;">
<col span="1" style="width: 150px;">
<col span="2" style="width: 35%;">
</colgroup>

<thead>
<tr>
<th scope="col">#</th>
Expand All @@ -22,7 +29,7 @@ <h6 class="c-grey-900">Vanessa ADD</h6>
Для Каждого Обработка из Модель.ТаблицаОбработок Цикл %}
<tr>
<th scope="row">{{ Счетчик }}</th>
<td>{{ Обработка.Имя }}</td>
<td style="word-wrap: break-word;">{{ Обработка.Имя }}</td>
<td>
<div class="btn-group mT-20">
<button hx-post="/vanessaadd/cmd/runTest/{{ Обработка.Имя }}" hx-swap="none" type="button" class="btn cur-p btn-outline-primary">Запустить</button>
Expand All @@ -37,8 +44,8 @@ <h6 class="c-grey-900">Vanessa ADD</h6>
</div>
</div>
</td>
<td>{{ Обработка.ПутьБинарника }}</td>
<td>{{ Обработка.ПутьИсходников }}</td>
<td style="word-wrap: break-word;">{{ Обработка.ПутьБинарника }}</td>
<td style="word-wrap: break-word;">{{ Обработка.ПутьИсходников }}</td>
</tr>
{% Счетчик = Счетчик + 1;
КонецЦикла; %}
Expand Down
2 changes: 1 addition & 1 deletion src/Классы/interface/view/testResultDetail.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ <h4 class="c-grey-900 mB-20">
<h6 class="c-grey-900">
<span class="icon-holder"></span>
<i class="{{?(ДеталиТеста.Успешно, "c-green-500 ti-check", ?(ДеталиТеста.Пропущен = 1, "c-blue-500 ti-more-alt", "c-red-500 ti-close" ))}}"></i>
</span>{{ ДеталиТеста.Набор }}/{{ ДеталиТеста.Тест }}</h6>
</span>{{ ОбъединитьПути(ДеталиТеста.Набор, ДеталиТеста.Тест) }}</h6>
<div class="mT-30">
<form>
<div class="row">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,21 +103,19 @@

ФС.ОбеспечитьКаталог(КаталогОтчета);

Команда = ФабрикаКоманд.Достать();

Команда.ДобавитьПараметр("xunit");
Команда.ДобавитьПараметр(Каталог);
Команда.ДобавитьПараметр("--xdddebug");
Команда.ДобавитьПараметр(СтрШаблон("--reportsxunit ""ГенераторОтчетаJUnitXML{%1/junit.xml}""", КаталогОтчета));
Команда.ДобавитьПараметр(СтрШаблон("--xddExitCodePath ""%1/ExitCode.txt""", КаталогОтчета));
Команда.ДобавитьПараметр("--testclient-additional ""/iTaxi""");

ИмяФайлаМетаданных = ОбъединитьПути(КаталогОтчета, ИмяФайлаМетаданных());

Команда.ДобавитьПередВыполнением(Новый Действие(ЭтотОбъект, "ЗаписатьДополнительныеДанные"),
Новый Структура("ИмяФайла, Данные", ИмяФайлаМетаданных, МетаданныеОтчета.Данные));

Возврат Команда;
Возврат ФабрикаКоманд.Достать()
.ДобавитьПараметр("xunit")
.ДобавитьПараметр(Каталог)
.ДобавитьПараметр("--xdddebug")
.ДобавитьПараметр(СтрШаблон("--reportsxunit ""ГенераторОтчетаJUnitXML{%1/junit.xml}""", КаталогОтчета))
.ДобавитьПараметр(СтрШаблон("--xddExitCodePath ""%1/ExitCode.txt""", КаталогОтчета))
.ДобавитьПараметр("--testclient-additional ""/iTaxi""")
.ДобавитьПередВыполнением(
Новый Действие(ЭтотОбъект, "ЗаписатьДополнительныеДанные"),
Новый Структура("ИмяФайла, Данные", ИмяФайлаМетаданных, МетаданныеОтчета.Данные))
.ВыключитьИБКМД();

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

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@
ФайлыРезультатов = НайтиФайлы(Каталог, "*.xml");

Для каждого ФайлРезультата Из ФайлыРезультатов Цикл
ЗаполнитьРезультатТетстаИзФайла(Детали.Добавить(), ФайлРезультата);
ЗаполнитьРезультатТестаИзФайла(Детали, ФайлРезультата);
КонецЦикла;

Результат.Детали = Детали;
Expand All @@ -90,18 +90,36 @@
Возврат Результат;
КонецФункции

Процедура ЗаполнитьРезультатТетстаИзФайла(Результат, Файл)
Процедура ЗаполнитьРезультатТестаИзФайла(Данные, Файл)

СодержаниеФайла = ПроцессорХМЛ.ПрочитатьИзФайла(Файл.ПолноеИмя);

Для каждого ТестовыйНабор Из СодержаниеФайла["testsuites"]._Элементы Цикл
ЗаполнитьРезультатТестаИзТестовогоНабора(ТестовыйНабор, Данные);
КонецЦикла;

КонецПроцедуры

Процедура ЗаполнитьРезультатТестаИзТестовогоНабора(ТестовыйНабор, Данные, Знач ИмяНабора = "")

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

ИмяНабора = ТестовыйНабор.Значение._Атрибуты["name"];
Для каждого ЭлементНабора Из ТестовыйНабор.Значение._Элементы Цикл
Для каждого ТестКейс Из ЭлементНабора.Значение._Элементы Цикл
ЗаполнитьРезультатПоТестКейсу(Результат, ТестКейс.Значение, ИмяНабора);
ИмяНабора = ОбъединитьПути(ИмяНабора, ТестовыйНабор.Значение._Атрибуты["name"]);

Для каждого ЭлементНабора Из ТестовыйНабор.Значение._Элементы Цикл

Если ТипЗнч(ЭлементНабора) = Тип("Соответствие") Тогда

Для каждого ВложенныйЭлементНабора Из ЭлементНабора Цикл
ЗаполнитьРезультатТестаИзТестовогоНабора(ВложенныйЭлементНабора, Данные, ИмяНабора);
КонецЦикла;
КонецЦикла;

Иначе
ЗаполнитьРезультатТестаИзТестовогоНабора(ЭлементНабора, Данные, ИмяНабора);
КонецЕсли;

КонецЦикла;

Expand All @@ -110,7 +128,7 @@
Процедура ЗаполнитьРезультатПоТестКейсу(Результат, ТестКейс, ИмяНабора)
Атрибуты = ТестКейс._Атрибуты;
Результат.Набор = ИмяНабора;
Результат.Тест = Атрибуты["classname"] + "/" + Атрибуты["name"];
Результат.Тест = ОбъединитьПути(Атрибуты["classname"], Атрибуты["name"]);
Результат.Статус = Атрибуты["status"];
Результат.Ошибка = СтатусЭтоОшибка(Атрибуты["status"]);
Результат.Пропущен = СтатусЭтоПропущен(Атрибуты["status"]);
Expand Down

0 comments on commit 7b8bc83

Please sign in to comment.