-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
first part of tests #157
first part of tests #157
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16"> | ||
<CommonModule uuid="72ba480f-6821-47a5-bc00-b831bdee3765"> | ||
<Properties> | ||
<Name>ОМ_ПредопределенныеЗначения</Name> | ||
<Synonym> | ||
<v8:item> | ||
<v8:lang>ru</v8:lang> | ||
<v8:content>Предопределенные значения</v8:content> | ||
</v8:item> | ||
</Synonym> | ||
<Comment/> | ||
<Global>false</Global> | ||
<ClientManagedApplication>false</ClientManagedApplication> | ||
<Server>true</Server> | ||
<ExternalConnection>false</ExternalConnection> | ||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication> | ||
<ServerCall>false</ServerCall> | ||
<Privileged>false</Privileged> | ||
<ReturnValuesReuse>DontUse</ReturnValuesReuse> | ||
</Properties> | ||
</CommonModule> | ||
</MetaDataObject> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
#Область СлужебныйПрограммныйИнтерфейс | ||
|
||
Процедура ИсполняемыеСценарии() Экспорт | ||
|
||
ЮТТесты | ||
.ДобавитьТестовыйНабор("Ключи хеша предопределенного элемента") | ||
.ДобавитьТест("Тест_КлючиХеша_ФормированиеКлючейЭлемент") | ||
.ДобавитьТест("Тест_КлючиХеша_ФормированиеКлючейГруппа") | ||
.ДобавитьТест("Тест_КлючиХеша_ПустойМассив") | ||
; | ||
|
||
КонецПроцедуры | ||
|
||
Процедура Тест_КлючиХеша_ФормированиеКлючейЭлемент() Экспорт | ||
|
||
Поля = Новый Массив; | ||
Поля.Добавить("Поле1"); | ||
Поля.Добавить("Поле2"); | ||
Поля.Добавить("Служебный_Поле3"); | ||
Поля.Добавить("Поле4"); | ||
|
||
ИсключаемыеПоля = Новый Структура; | ||
ИсключаемыеПоля.Вставить("Поле2", Истина); | ||
|
||
Мокито.Обучение(пбп_ПредопределенныеЗначенияПереопределяемый) | ||
.Когда("ИсключаемыеПоляДляРасчетаХешаЭлемент") | ||
.Вернуть(ИсключаемыеПоля) | ||
.Прогон(); | ||
|
||
Ожидаемое = Новый Структура("Поле1,Поле4"); | ||
|
||
Результат = пбп_ПредопределенныеЗначения.КлючиХешаПредопределенногоЭлемента(Поля, Ложь); | ||
|
||
ЮТест.ОжидаетЧто(Результат).Равно(Ожидаемое); | ||
|
||
КонецПроцедуры | ||
|
||
Процедура Тест_КлючиХеша_ФормированиеКлючейГруппа() Экспорт | ||
|
||
Поля = Новый Массив; | ||
Поля.Добавить("Поле1"); | ||
Поля.Добавить("Поле2"); | ||
|
||
ИсключаемыеПоля = Новый Структура; | ||
ИсключаемыеПоля.Вставить("Поле1", Истина); | ||
|
||
Мокито.Обучение(пбп_ПредопределенныеЗначенияПереопределяемый) | ||
.Когда("ИсключаемыеПоляДляРасчетаХешаГруппа") | ||
.Вернуть(ИсключаемыеПоля) | ||
.Прогон() | ||
; | ||
|
||
Ожидаемое = Новый Структура("Поле2"); | ||
|
||
Результат = пбп_ПредопределенныеЗначения.КлючиХешаПредопределенногоЭлемента(Поля, Истина); | ||
|
||
ЮТест.ОжидаетЧто(Результат).Равно(Ожидаемое); | ||
|
||
КонецПроцедуры | ||
|
||
Процедура Тест_КлючиХеша_ПустойМассив() Экспорт | ||
|
||
Поля = Новый Массив; | ||
|
||
ИсключаемыеПоля = Новый Структура; | ||
|
||
Мокито.Обучение(пбп_ПредопределенныеЗначенияПереопределяемый) | ||
.Когда("ИсключаемыеПоляДляРасчетаХешаЭлемент") | ||
.Вернуть(ИсключаемыеПоля) | ||
.Прогон(); | ||
|
||
Ожидаемое = Новый Структура; | ||
|
||
Результат = пбп_ПредопределенныеЗначения.КлючиХешаПредопределенногоЭлемента(Поля); | ||
|
||
ЮТест.ОжидаетЧто(Результат).Равно(Ожидаемое); | ||
|
||
КонецПроцедуры | ||
|
||
#КонецОбласти |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16"> | ||
<CommonModule uuid="4874774e-fc49-4238-b314-4c8bd60742b4"> | ||
<Properties> | ||
<Name>ОМ_ПредопределенныеЗначенияВызовСервера</Name> | ||
<Synonym> | ||
<v8:item> | ||
<v8:lang>ru</v8:lang> | ||
<v8:content>Предопределенные значения вызов сервера</v8:content> | ||
</v8:item> | ||
</Synonym> | ||
<Comment/> | ||
<Global>false</Global> | ||
<ClientManagedApplication>false</ClientManagedApplication> | ||
<Server>true</Server> | ||
<ExternalConnection>false</ExternalConnection> | ||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication> | ||
<ServerCall>true</ServerCall> | ||
<Privileged>false</Privileged> | ||
<ReturnValuesReuse>DontUse</ReturnValuesReuse> | ||
</Properties> | ||
</CommonModule> | ||
</MetaDataObject> |
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -0,0 +1,72 @@ | ||||||||||||||||||||||||||||||||||
#Область СлужебныйПрограммныйИнтерфейс | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Процедура ИсполняемыеСценарии() Экспорт | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ЮТТесты | ||||||||||||||||||||||||||||||||||
.ДобавитьТестовыйНабор("Инициализировать предопределенные элементы") | ||||||||||||||||||||||||||||||||||
.ДобавитьТест("Тест_ИнициализироватьПредопределенныеЭлементы_ПустаяТаблица") | ||||||||||||||||||||||||||||||||||
.СПараметрами("Справочник.пбп_ИнтеграционныеПотоки") | ||||||||||||||||||||||||||||||||||
.СПараметрами("Справочник.пбп_НастройкиОтбораОбъектов") | ||||||||||||||||||||||||||||||||||
.СПараметрами("ПланВидовХарактеристик.пбп_ПредопределенныеЗначения") | ||||||||||||||||||||||||||||||||||
.ДобавитьТест("Тест_ИнициализироватьПредопределенныеЭлементы_ЕстьКонфликты") | ||||||||||||||||||||||||||||||||||
.СПараметрами("Справочник.пбп_ИнтеграционныеПотоки") | ||||||||||||||||||||||||||||||||||
; | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
КонецПроцедуры | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Процедура Тест_ИнициализироватьПредопределенныеЭлементы_ПустаяТаблица(ИмяОбъекта) Экспорт | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ТаблицаКонфликтов = Новый ТаблицаЗначений; | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Мокито.Обучение(пбп_ПредопределенныеЗначения) | ||||||||||||||||||||||||||||||||||
.Когда("ИнициализироватьПредопределенныеЗначения") | ||||||||||||||||||||||||||||||||||
.Вернуть(ТаблицаКонфликтов) | ||||||||||||||||||||||||||||||||||
.Прогон() | ||||||||||||||||||||||||||||||||||
; | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ОжидаемаяСтруктура = Новый Структура; | ||||||||||||||||||||||||||||||||||
ОжидаемаяСтруктура.Вставить("АдресТаблицы", ""); | ||||||||||||||||||||||||||||||||||
ОжидаемаяСтруктура.Вставить("ЕстьСтроки", Ложь); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Ожидаемое = Новый ФиксированнаяСтруктура(ОжидаемаяСтруктура); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Результат = пбп_ПредопределенныеЗначенияВызовСервера.ИнициализироватьПредопределенныеЗначения(ИмяОбъекта); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ЮТест.ОжидаетЧто(ТипЗнч(Результат)).Равно(Тип("ФиксированнаяСтруктура")); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ЮТест.ОжидаетЧто(Результат) | ||||||||||||||||||||||||||||||||||
.Свойство("АдресТаблицы").НеЗаполнено() | ||||||||||||||||||||||||||||||||||
.Свойство("ЕстьСтроки").ЭтоЛожь() | ||||||||||||||||||||||||||||||||||
; | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
КонецПроцедуры | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Процедура Тест_ИнициализироватьПредопределенныеЭлементы_ЕстьКонфликты(ИмяОбъекта) Экспорт | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ТаблицаКонфликтов = Новый ТаблицаЗначений; | ||||||||||||||||||||||||||||||||||
ТаблицаКонфликтов.Добавить(); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Мокито.Обучение(пбп_ПредопределенныеЗначения) | ||||||||||||||||||||||||||||||||||
.Когда("ИнициализироватьПредопределенныеЗначения") | ||||||||||||||||||||||||||||||||||
.Вернуть(ТаблицаКонфликтов) | ||||||||||||||||||||||||||||||||||
.Прогон() | ||||||||||||||||||||||||||||||||||
; | ||||||||||||||||||||||||||||||||||
Comment on lines
+49
to
+53
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Отсутствует проверка вызова мока Аналогично первому тесту, необходимо добавить проверку вызова мока: Мокито.Обучение(пбп_ПредопределенныеЗначения)
.Когда("ИнициализироватьПредопределенныеЗначения")
.Вернуть(ТаблицаКонфликтов)
.Прогон()
;
+
+ Мокито.Проверить(пбп_ПредопределенныеЗначения)
+ .Что("ИнициализироватьПредопределенныеЗначения")
+ .СПараметрами(ИмяОбъекта)
+ .БылВызван()
+ ; 📝 Committable suggestion
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ты ошибаешься, такой функции нет в yaxunit There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @denisushakov, благодарю за уточнение. Вы правы, функция ✏️ Learnings added
|
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ОжидаемаяСтруктура = Новый Структура; | ||||||||||||||||||||||||||||||||||
ОжидаемаяСтруктура.Вставить("АдресТаблицы", "АдресВременногоХранилища"); | ||||||||||||||||||||||||||||||||||
ОжидаемаяСтруктура.Вставить("ЕстьСтроки", Истина); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Ожидаемое = Новый ФиксированнаяСтруктура(ОжидаемаяСтруктура); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Результат = пбп_ПредопределенныеЗначенияВызовСервера.ИнициализироватьПредопределенныеЗначения(ИмяОбъекта); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ЮТест.ОжидаетЧто(ТипЗнч(Результат)).Равно(Тип("ФиксированнаяСтруктура")); | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
ЮТест.ОжидаетЧто(Результат) | ||||||||||||||||||||||||||||||||||
.Свойство("АдресТаблицы").Заполнено() | ||||||||||||||||||||||||||||||||||
.Свойство("ЕстьСтроки").ЭтоИстина() | ||||||||||||||||||||||||||||||||||
; | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
КонецПроцедуры | ||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
#КонецОбласти |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16"> | ||
<CommonModule uuid="6e1b1014-5795-4ba6-82c4-4ee90e59c939"> | ||
<Properties> | ||
<Name>ОМ_ПредопределенныеЗначенияСлужебный</Name> | ||
<Synonym> | ||
<v8:item> | ||
<v8:lang>ru</v8:lang> | ||
<v8:content>Предопределенные значения служебный</v8:content> | ||
</v8:item> | ||
</Synonym> | ||
<Comment/> | ||
<Global>false</Global> | ||
<ClientManagedApplication>false</ClientManagedApplication> | ||
<Server>true</Server> | ||
<ExternalConnection>false</ExternalConnection> | ||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication> | ||
<ServerCall>false</ServerCall> | ||
<Privileged>false</Privileged> | ||
<ReturnValuesReuse>DontUse</ReturnValuesReuse> | ||
</Properties> | ||
</CommonModule> | ||
</MetaDataObject> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Отсутствует проверка вызова мока
После выполнения теста следует добавить проверку, что мок действительно был вызван с ожидаемыми параметрами:
📝 Committable suggestion
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ты ошибаешься, такой функции нет в yaxunit
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@denisushakov, спасибо за уточнение. Действительно, функции
Мокито.Проверить
нет в yaxunit. Принял к сведению для будущих ревью.✏️ Learnings added