1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-03-17 20:48:01 +02:00

fix: Исправления после ревью

This commit is contained in:
Dmitry Abramov 2023-07-24 15:26:47 +03:00
parent edcdfc5243
commit 3040c7c33c
19 changed files with 116 additions and 87 deletions

View File

@ -18,7 +18,6 @@
// @strict-types
#Область ПрограммныйИнтерфейс
// Локализация.
@ -35,33 +34,20 @@
// КодЯзыка - Строка - Код языка
Процедура УстановитьЛокализацию(КодЯзыка) Экспорт
Контекст().Локализация = КодЯзыка;
ОбновитьПовторноИспользуемыеЗначения();
КонецПроцедуры
// Получает список из словаря с учетом установленной локализации
//
// Параметры:
// ИмяРеализации - Строка - Имя реализации
// ИмяСловаря - Строка - Имя словаря
//
// Возвращаемое значение:
// ФиксированныйМассив из Строка
Функция Словарь(ИмяРеализации, ИмяСловаря) Экспорт
Возврат ЮТПодражательПовтИсп.Словарь(ИмяРеализации, ИмяСловаря);
КонецФункции
#Область Реализации
Функция Люди() Экспорт
Возврат ЮТПодражатель_Реализация_Люди;
Возврат ЮТПодражатель_Люди;
КонецФункции
Функция Компании() Экспорт
Возврат ЮТПодражатель_Реализация_Компании;
Возврат ЮТПодражатель_Компании;
КонецФункции
Функция Банки() Экспорт
Возврат ЮТПодражатель_Реализация_Банки;
Возврат ЮТПодражатель_Банки;
КонецФункции
#КонецОбласти
@ -69,26 +55,50 @@
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
// Получает список из словаря с учетом установленной локализации
//
// Параметры:
// ИмяРеализации - Строка - Имя реализации
// ИмяСловаря - Строка - Имя словаря
// КодЛокализации - Строка - Код локализации, по умолчанию берется из контекста
//
// Возвращаемое значение:
// ФиксированныйМассив из Строка
Функция Словарь(ИмяРеализации, ИмяСловаря, КодЛокализации = Неопределено) Экспорт
_КодЛокализации = ?(КодЛокализации = Неопределено, Локализация(), КодЛокализации);
Возврат ЮТПодражательПовтИсп.Словарь(ИмяРеализации, ИмяСловаря, _КодЛокализации);
КонецФункции
// Случайное значение из словаря.
//
// Параметры:
// Словарь - Массив из Строка - Словарь
//
// Возвращаемое значение:
// - Строка
Функция СлучайноеЗначениеИзСловаря(Словарь) Экспорт
Возврат Словарь.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, Словарь.ВГраница()));
КонецФункции
// Контекст.
//
// Возвращаемое значение:
// см. НовыйКонтекст
Функция Контекст() Экспорт
//@skip-check constructor-function-return-section
Возврат ЮТКонтекст.ЗначениеКонтекста(КлючКонтекста());
КонецФункции
// Инициализирует конструктор предиката
// Инициализирует подражатель
//
// Возвращаемое значение:
// ОбщийМодуль - Этот модуль для замыкания
Функция Инициализировать() Экспорт
ЮТКонтекст.УстановитьЗначениеКонтекста(КлючКонтекста(), НовыйКонтекст());
Если Контекст() = Неопределено Тогда
ЮТКонтекст.УстановитьЗначениеКонтекста(КлючКонтекста(), НовыйКонтекст());
КонецЕсли;
Возврат ЮТПодражатель;
КонецФункции
#КонецОбласти
@ -96,9 +106,7 @@
#Область СлужебныеПроцедурыИФункции
Функция КлючКонтекста()
Возврат "Подражатель";
КонецФункции
// Новый контекст.
@ -109,13 +117,11 @@
Функция НовыйКонтекст()
Описание = Новый Структура;
#Если Клиент Тогда
Описание.Вставить("Локализация", ТекущийЯзык());
#Иначе
Описание.Вставить("Локализация", ТекущийЯзык().КодЯзыка);
#КонецЕсли
Возврат Описание;
КонецФункции

View File

@ -74,7 +74,6 @@
);
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="4b1986d5-23da-4865-9a45-e72d224801b9">
<name>ЮТПодражатель_Реализация_Банки</name>
<name>ЮТПодражатель_Банки</name>
<synonym>
<key>ru</key>
<value>Подражатель реализация люди клиент сервер</value>

View File

@ -29,8 +29,8 @@
Возврат СтрШаблон(
"%1 %2",
СловарьПрефиксов.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, СловарьПрефиксов.ВГраница())),
СловарьИмен.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, СловарьИмен.ВГраница()))
ЮТПодражатель.СлучайноеЗначениеИзСловаря(СловарьПрефиксов),
ЮТПодражатель.СлучайноеЗначениеИзСловаря(СловарьИмен)
);
КонецФункции

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="02573bc2-6df0-4e30-b6d9-267399c050de">
<name>ЮТПодражатель_Реализация_Компании</name>
<name>ЮТПодражатель_Компании</name>
<synonym>
<key>ru</key>
<value>Подражатель реализация люди клиент сервер</value>

View File

@ -21,86 +21,90 @@
// Возвращает случайное имя
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Реализация_Люди.ПолЧеловека
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция Имя(Пол = Неопределено) Экспорт
ИтоговыйСловарь = Новый Массив();
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Если Пол = ПолЧеловека().Мужской Или Пол = Неопределено Тогда
ЮТОбщий.ДополнитьМассив(ИтоговыйСловарь, СловарьМужскиеИмена());
Если ПолЧеловека = ПолЧеловека().Мужской Тогда
Словарь = СловарьМужскиеИмена();
ИначеЕсли ПолЧеловека = ПолЧеловека().Женский Тогда
Словарь = СловарьЖенскиеИмена();
Иначе
ВызватьИсключение СтрШаблон("Отсутствует реализация словаря имен для пола человека: %1", ПолЧеловека);
КонецЕсли;
Если Пол = ПолЧеловека().Женский Или Пол = Неопределено Тогда
ЮТОбщий.ДополнитьМассив(ИтоговыйСловарь, СловарьЖенскиеИмена());
КонецЕсли;
Возврат ИтоговыйСловарь.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, ИтоговыйСловарь.ВГраница()));
Возврат ЮТПодражатель.СлучайноеЗначениеИзСловаря(Словарь);
КонецФункции
// Возвращает случайную фамилию
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Реализация_Люди.ПолЧеловека
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция Фамилия(Пол = Неопределено) Экспорт
ИтоговыйСловарь = Новый Массив();
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Если Пол = ПолЧеловека().Мужской Или Пол = Неопределено Тогда
ЮТОбщий.ДополнитьМассив(ИтоговыйСловарь, СловарьМужскиеФамилии());
Если ПолЧеловека = ПолЧеловека().Мужской Тогда
Словарь = СловарьМужскиеФамилии();
ИначеЕсли ПолЧеловека = ПолЧеловека().Женский Тогда
Словарь = СловарьЖенскиеФамилии();
Иначе
ВызватьИсключение СтрШаблон("Отсутствует реализация словаря фамилий для пола человека: %1", ПолЧеловека);
КонецЕсли;
Если Пол = ПолЧеловека().Женский Или Пол = Неопределено Тогда
ЮТОбщий.ДополнитьМассив(ИтоговыйСловарь, СловарьЖенскиеФамилии());
КонецЕсли;
Возврат ИтоговыйСловарь.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, ИтоговыйСловарь.ВГраница()));
Возврат ЮТПодражатель.СлучайноеЗначениеИзСловаря(Словарь);
КонецФункции
// Возвращает случайное отчество
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Реализация_Люди.ПолЧеловека
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция Отчество(Пол = Неопределено) Экспорт
ИтоговыйСловарь = Новый Массив();
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Если Пол = ПолЧеловека().Мужской Или Пол = Неопределено Тогда
ЮТОбщий.ДополнитьМассив(ИтоговыйСловарь, СловарьМужскиеОтчества());
Если ПолЧеловека = ПолЧеловека().Мужской Тогда
Словарь = СловарьМужскиеОтчества();
ИначеЕсли ПолЧеловека = ПолЧеловека().Женский Тогда
Словарь = СловарьЖенскиеОтчества();
Иначе
ВызватьИсключение СтрШаблон("Отсутствует реализация словаря отчеств для пола человека: %1", ПолЧеловека);
КонецЕсли;
Если Пол = ПолЧеловека().Женский Или Пол = Неопределено Тогда
ЮТОбщий.ДополнитьМассив(ИтоговыйСловарь, СловарьЖенскиеОтчества());
КонецЕсли;
Возврат ИтоговыйСловарь.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, ИтоговыйСловарь.ВГраница()));
Возврат ЮТПодражатель.СлучайноеЗначениеИзСловаря(Словарь);
КонецФункции
// Возвращает случайное отчество
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Реализация_Люди.ПолЧеловека
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция ФИО(Пол = Неопределено) Экспорт
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Возврат СтрШаблон(
"%1 %2 %3",
Фамилия(Пол),
Имя(Пол),
Отчество(Пол)
Фамилия(ПолЧеловека),
Имя(ПолЧеловека),
Отчество(ПолЧеловека)
);
КонецФункции
// Формирует случаный ИНН физического лица
@ -154,7 +158,6 @@
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@ -183,4 +186,18 @@
Возврат ЮТПодражатель.Словарь(ИмяРеализации(), "МужскиеОтчества");
КонецФункции
Функция ОпределитьПолЧеловекаИзПараметра(Пол)
Если Пол <> Неопределено Тогда
Возврат Пол;
КонецЕсли;
Варианты = Новый Массив();
Для Каждого Элемент Из ПолЧеловека() Цикл
Варианты.Добавить(Элемент.Значение);
КонецЦикла;
Возврат ЮТТестовыеДанные.СлучайноеЗначениеИзСписка(Варианты);
КонецФункции
#КонецОбласти

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e9002bdd-602e-4348-9d0f-4c910f9e40f4">
<name>ЮТПодражатель_Реализация_Люди</name>
<name>ЮТПодражатель_Люди</name>
<synonym>
<key>ru</key>
<value>Подражатель реализация люди клиент сервер</value>

View File

@ -21,9 +21,17 @@
#Область СлужебныйПрограммныйИнтерфейс
// см. ЮТПодражатель.Словарь
Функция Словарь(ИмяРеализации, ИмяСловаря) Экспорт
Кодификатор = КодификаторСловаря(ИмяРеализации, ИмяСловаря);
// Получает список из словаря с учетом установленной локализации
//
// Параметры:
// ИмяРеализации - Строка - Имя реализации
// ИмяСловаря - Строка - Имя словаря
// КодЛокализации - Строка - Код локализации
//
// Возвращаемое значение:
// ФиксированныйМассив из Строка
Функция Словарь(ИмяРеализации, ИмяСловаря, КодЛокализации) Экспорт
Кодификатор = КодификаторСловаря(ИмяРеализации, ИмяСловаря, КодЛокализации);
Возврат Новый ФиксированныйМассив(ЮТПодражательВызовСервера.ДанныеСловаря(Кодификатор));
КонецФункции
@ -31,13 +39,12 @@
#Область СлужебныеПроцедурыИФункции
Функция КодификаторСловаря(ИмяРеализации, ИмяСловаря)
Функция КодификаторСловаря(ИмяРеализации, ИмяСловаря, КодЛокализации)
Возврат СтрШаблон(
"ЮТ_СловарьПодражателя_%1_%2_%3",
ИмяРеализации,
ИмяСловаря,
ЮТПодражатель.Контекст().Локализация
КодЛокализации
);
КонецФункции

View File

@ -75,9 +75,9 @@
<commonModules>CommonModule.ЮТПараметрыЗапуска</commonModules>
<commonModules>CommonModule.ЮТПовторногоИспользования</commonModules>
<commonModules>CommonModule.ЮТПодражатель</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Реализация_Банки</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Реализация_Компании</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Реализация_Люди</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Банки</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Компании</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Люди</commonModules>
<commonModules>CommonModule.ЮТПодражательВызовСервера</commonModules>
<commonModules>CommonModule.ЮТПодражательПовтИсп</commonModules>
<commonModules>CommonModule.ЮТПредикаты</commonModules>

View File

@ -6,6 +6,6 @@
<value>ЮТПодражатель реализация банки</value>
</synonym>
<includeHelpInContents>true</includeHelpInContents>
<content>CommonModule.ЮТПодражатель_Реализация_Банки</content>
<content>CommonModule.ЮТПодражатель_Банки</content>
<parentSubsystem>Subsystem.ЮТПодражатель.Subsystem.ЮТПодражательРеализации</parentSubsystem>
</mdclass:Subsystem>

View File

@ -6,7 +6,7 @@
<value>ЮТПодражатель реализация компании</value>
</synonym>
<includeHelpInContents>true</includeHelpInContents>
<content>CommonModule.ЮТПодражатель_Реализация_Компании</content>
<content>CommonModule.ЮТПодражатель_Компании</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Компании_Наименования_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Компании_ПрефиксыНаименований_ru</content>
<parentSubsystem>Subsystem.ЮТПодражатель.Subsystem.ЮТПодражательРеализации</parentSubsystem>

View File

@ -9,7 +9,7 @@
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеИмена_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеФамилии_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеОтчества_ru</content>
<content>CommonModule.ЮТПодражатель_Реализация_Люди</content>
<content>CommonModule.ЮТПодражатель_Люди</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеИмена_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеОтчества_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеФамилии_ru</content>

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="00963ec4-1094-4309-b701-8fb8830bd1ac">
<name>ОМ_ЮТПодражатель_Реализация_Банки</name>
<name>ОМ_ЮТПодражатель_Банки</name>
<synonym>
<key>ru</key>
<value>О м ЮТПодражатель реализация банки</value>
<value>О м ЮТПодражатель банки</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="80d689ad-0837-43f2-bd97-e8e5af5c1edc">
<name>ОМ_ЮТПодражатель_Реализация_Компании</name>
<name>ОМ_ЮТПодражатель_Компании</name>
<synonym>
<key>ru</key>
<value>О м ЮТПодражатель реализация компании</value>
<value>О м ЮТПодражатель компании</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>

View File

@ -138,7 +138,7 @@
Процедура НесуществующийСловарьПоЛокализации() Экспорт
Подражатель = ЮТТестовыеДанные.Подражатель();
Подражатель.УстановитьЛокализацию("en");
Ютест.ОжидаетЧто(ЮТПодражатель_Реализация_Люди)
Ютест.ОжидаетЧто(ЮТПодражатель_Люди)
.Метод("Имя")
.ВыбрасываетИсключение("не найден")
;

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="28203d5f-eead-4052-a45f-42a18a2c67ec">
<name>ОМ_ЮТПодражатель_Реализация_Люди</name>
<name>ОМ_ЮТПодражатель_Люди</name>
<synonym>
<key>ru</key>
<value>О м ЮТПодражатель реализация люди</value>
<value>О м ЮТПодражатель люди</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>

View File

@ -31,9 +31,9 @@
<commonModules>CommonModule.ОМ_ЮТест</commonModules>
<commonModules>CommonModule.ОМ_ЮТЗапросы</commonModules>
<commonModules>CommonModule.ОМ_ЮТКонструкторТестовыхДанных</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Реализация_Банки</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Реализация_Компании</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Реализация_Люди</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Банки</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Компании</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Люди</commonModules>
<commonModules>CommonModule.ОМ_ЮТПредикатыКлиентСервер</commonModules>
<commonModules>CommonModule.ОМ_ЮТСравнениеКлиентСервер</commonModules>
<commonModules>CommonModule.ОМ_ЮТТестовыеДанные</commonModules>