Skip to content

Commit

Permalink
Merge pull request #408 from bia-technologies/feature/local-testing
Browse files Browse the repository at this point in the history
Скрипты локального запуска тестов и правки выявленных ошибок.
  • Loading branch information
alkoleft authored Sep 8, 2024
2 parents 1cb9e19 + ac517f5 commit a7cf3b9
Show file tree
Hide file tree
Showing 53 changed files with 1,966 additions and 777 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,5 @@ tests/.settings/*
documentation/api/
*.jar
/tools/**/distr/
workpath/
.env
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@

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

Функция ШаблонУсловия(ВыражениеПредиката, ВыраженияПредикатов, ТипРеквизита)
Функция ШаблонУсловия(ВыражениеПредиката, ВыраженияПредикатов, ТипРеквизита) // BSLLS:CognitiveComplexity-off
Выражение = ВыражениеПредиката.ВидСравнения;

Отрицание = ЮТПредикатыСлужебныйКлиентСервер.ЭтоВыраженияОтрицания(Выражение);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,14 @@

Хранилище = Новый Соответствие();

Для Каждого Модуль Из ТестовыеМодули Цикл
Для Каждого ОсновнойМодуль Из ТестовыеМодули Цикл

Модуль = ЮТКоллекции.СкопироватьСтруктуру(ОсновнойМодуль, Ложь);
Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоМодуля(Модуль);

Хранилище.Вставить(Идентификатор, Модуль);

Для Каждого Набор Из Модуль.НаборыТестов Цикл
Для Каждого Набор Из ОсновнойМодуль.НаборыТестов Цикл

Идентификатор = ЮТИсполнительСлужебныйКлиентСервер.ИдентификаторТестовогоНабора(Модуль, Набор);
Хранилище.Вставить(Идентификатор, Набор);
Expand All @@ -54,9 +56,7 @@

КонецЦикла;

#Если НЕ ТолстыйКлиентОбычноеПриложение И НЕ ТолстыйКлиентУправляемоеПриложение Тогда // Исключение для толстого клиента в файловом варианте
Модуль.НаборыТестов = Новый Массив; // Уже не нужно, поэтому очистим
#КонецЕсли

КонецЦикла;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,20 +143,18 @@
ПараметрыЗаписи.УникальныйИдентификаторСсылки = Контекст.УникальныйИдентификаторСсылки;
ПараметрыЗаписи.ОбменДаннымиЗагрузка = ОбменДаннымиЗагрузка;

Ссылка = ЮТТестовыеДанныеСлужебныйВызовСервера.СоздатьЗапись(Контекст.Менеджер, Контекст.Данные, ПараметрыЗаписи, ВернутьОбъект);
Ссылка = ЮТТестовыеДанныеСлужебный.СоздатьЗапись(Контекст.Менеджер, Контекст.Данные, ПараметрыЗаписи, ВернутьОбъект);

Возврат Ссылка;

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

Функция НовыйОбъект(Контекст) Экспорт

Возврат ЮТТестовыеДанныеСлужебныйВызовСервера.НовыйОбъект(
Контекст.Менеджер,
Контекст.Данные,
Контекст.ДополнительныеСвойства,
Контекст.УникальныйИдентификаторСсылки
);
Возврат ЮТТестовыеДанныеСлужебный.НовыйОбъект(Контекст.Менеджер,
Контекст.Данные,
Контекст.ДополнительныеСвойства,
Контекст.УникальныйИдентификаторСсылки);

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

Expand All @@ -167,7 +165,7 @@
ПараметрыЗаписи.УникальныйИдентификаторСсылки = Контекст.УникальныйИдентификаторСсылки;
ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение;

Ссылка = ЮТТестовыеДанныеСлужебныйВызовСервера.СоздатьЗапись(Контекст.Менеджер, Контекст.Данные, ПараметрыЗаписи, ВернутьОбъект);
Ссылка = ЮТТестовыеДанныеСлужебный.СоздатьЗапись(Контекст.Менеджер, Контекст.Данные, ПараметрыЗаписи, ВернутьОбъект);

Возврат Ссылка;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,18 +56,6 @@

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

Функция ВыборкаИзТабличногоДокумента(ТабличныйДокумент) Экспорт

Возврат ЗапросКТабличномуДокументу(ТабличныйДокумент).Выбрать();

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

Функция ТаблицаИзТабличногоДокумента(ТабличныйДокумент) Экспорт

Возврат ЗапросКТабличномуДокументу(ТабличныйДокумент).Выгрузить();

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

Функция ИзХранилищаЗначений(Знач ХранилищеЗначений) Экспорт

Возврат ХранилищеЗначений.Получить();
Expand All @@ -86,20 +74,4 @@

#Область СлужебныеПроцедурыИФункции

Функция ЗапросКТабличномуДокументу(ТабличныйДокумент)

ВсегоСтрок = ТабличныйДокумент.ВысотаТаблицы;
ВсегоКолонок = ТабличныйДокумент.ШиринаТаблицы;

Область = ТабличныйДокумент.Область(1, 1, ВсегоСтрок, ВсегоКолонок);

ИсточникДанных = Новый ОписаниеИсточникаДанных(Область);
ПостроительОтчета = Новый ПостроительОтчета;
ПостроительОтчета.ИсточникДанных = ИсточникДанных;
ПостроительОтчета.Выполнить();

Возврат ПостроительОтчета.Результат;

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

#КонецОбласти
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@

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

Функция ШаблонВыражения(Знач Выражение) Экспорт
Функция ШаблонВыражения(Знач Выражение) Экспорт // BSLLS:CognitiveComplexity-off

Отрицание = СтрНачинаетсяС(Выражение, "Не");
Если Отрицание Тогда
Expand Down
Original file line number Diff line number Diff line change
@@ -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.
Expand All @@ -18,6 +18,15 @@

#Область СлужебныйПрограммныйИнтерфейс

// Проверить тип параметра.
//
// Параметры:
// Значение - Произвольный
// ОжидаемыйТип - Тип, ОписаниеТипов - Ожидаемый тип или описание типа
// - Строка - Имена типов разделенные запятой
// ИмяМетода - Строка
// ИмяПараметра - Строка
// ЕслиУстановлен - Булево - Выполнять проверку только если значение не неопределено
Процедура ПроверитьТипПараметра(Значение, ОжидаемыйТип, ИмяМетода, ИмяПараметра, ЕслиУстановлен = Ложь) Экспорт

Если ЕслиУстановлен И Значение = Неопределено Тогда
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,57 +63,64 @@
// https://github.com/vanessa-opensource/add
// перенесен из Functest

ТипТабличногоДокумента = ТипЗнч(ТабличныйДокумент);
Если ТипТабличногоДокумента <> Тип("ТабличныйДокумент") И ТипТабличногоДокумента <> Тип("ПолеТабличногоДокумента") Тогда
ВызватьИсключение "ПолучитьТаблицуЗначенийИзТабличногоДокумента: Требуется тип ТабличныйДокумент или ПолеТабличногоДокумента";
КонецЕсли;
ЮТПроверкиСлужебный.ПроверитьТипПараметра(ТабличныйДокумент,
Тип("ТабличныйДокумент"),
"ЮТСравнениеСлужебныйСервер.ПолучитьТаблицуЗначенийИзТабличногоДокумента",
"ТабличныйДокумент");

Если УчитыватьТолькоВидимыеКолонки И УчитыватьТолькоВидимыеСтроки Тогда
ЮТОбщийСлужебныйВызовСервера.ТаблицаИзТабличногоДокумента(ТипТабличногоДокумента);
ЮТТестовыеДанныеСлужебныйСервер.ТаблицаИзТабличногоДокумента(ТабличныйДокумент);
КонецЕсли;

НомерПоследнейКолонки = ТабличныйДокумент.ШиринаТаблицы;
НомерПоследнейСтроки = ТабличныйДокумент.ВысотаТаблицы;

НоваяТаблицаЗначений = Новый ТаблицаЗначений;
Колонки = НоваяТаблицаЗначений.Колонки;
ТипСтрока = Новый ОписаниеТипов("Строка");

// TODO При определении видимости не учитывается наличие нескольких форматов строк, сейчас видимость колонки определяется по формату первой строки
УчитываемыеКолонки = Новый Массив;
Для НомерКолонки = 1 По НомерПоследнейКолонки Цикл
ОбластьКолонки = ТабличныйДокумент.Область(0, НомерКолонки, 1, НомерКолонки);

УчитыватьКолонку = Не УчитыватьТолькоВидимыеКолонки Или ОбластьКолонки.Видимость;
Если УчитыватьКолонку Тогда
УчитываемыеКолонки.Добавить(НомерКолонки);
ШиринаКолонки = ОбластьКолонки.ШиринаКолонки;
Если ШиринаКолонки <= 1 Тогда
ШиринаКолонки = 1;
КонецЕсли;
ИмяКолонки = "К" + Формат(Колонки.Количество() + 1, "ЧН=; ЧГ=0");
Колонки.Добавить(ИмяКолонки, ТипСтрока, ИмяКолонки, ШиринаКолонки);
КонецЕсли;
КонецЦикла;
УчитываемыеКолонки = УчитываемыеКолонки(ТабличныйДокумент, НоваяТаблицаЗначений, УчитыватьТолькоВидимыеКолонки);

ГраницаКолонок = УчитываемыеКолонки.ВГраница();
НомерПоследнейСтроки = ТабличныйДокумент.ВысотаТаблицы;

Для НомерСтроки = 1 По НомерПоследнейСтроки Цикл

Если УчитыватьТолькоВидимыеСтроки И Не ТабличныйДокумент.Область(НомерСтроки, , НомерСтроки).Видимость Тогда
УчитыватьСтроку = УчитыватьТолькоВидимыеСтроки И Не ТабличныйДокумент.Область(НомерСтроки, , НомерСтроки).Видимость;
Если УчитыватьСтроку Тогда
Продолжить;
КонецЕсли;

НоваяСтрока = НоваяТаблицаЗначений.Добавить();

Для Индекс = 0 По ГраницаКолонок Цикл
НомерКолонки = УчитываемыеКолонки[Индекс];
Область = ТабличныйДокумент.Область(НомерСтроки, НомерКолонки, НомерСтроки, НомерКолонки);
Область = ТабличныйДокумент.Область(НомерСтроки, УчитываемыеКолонки[Индекс]);
НоваяСтрока[Индекс] = Область.Текст;
КонецЦикла;

КонецЦикла;

Возврат НоваяТаблицаЗначений;

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

Функция УчитываемыеКолонки(ТабличныйДокумент, ТаблицаЗначений, УчитыватьТолькоВидимыеКолонки)

ТипСтрока = Новый ОписаниеТипов("Строка");
НомерПоследнейКолонки = ТабличныйДокумент.ШиринаТаблицы;
Колонки = ТаблицаЗначений.Колонки;

// При определении видимости не учитывается наличие нескольких форматов строк, сейчас видимость колонки определяется по формату первой строки
УчитываемыеКолонки = Новый Массив;
Для НомерКолонки = 1 По НомерПоследнейКолонки Цикл

ОбластьКолонки = ТабличныйДокумент.Область(1, НомерКолонки);
УчитыватьКолонку = Не УчитыватьТолькоВидимыеКолонки Или ОбластьКолонки.Видимость;

Если УчитыватьКолонку Тогда
УчитываемыеКолонки.Добавить(НомерКолонки);
ИмяКолонки = "К" + Формат(Колонки.Количество() + 1, "ЧН=; ЧГ=0");
Колонки.Добавить(ИмяКолонки, ТипСтрока);
КонецЕсли;
КонецЦикла;

Возврат УчитываемыеКолонки;

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

#КонецОбласти
Loading

0 comments on commit a7cf3b9

Please sign in to comment.