1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-03-29 21:21:08 +02:00
Исправлена генерация ошибки о некорректной длине
Починил проверку наличия колонки
This commit is contained in:
alkoleft 2023-09-15 00:32:28 +03:00
parent 04689b27e2
commit de68c35b4d
2 changed files with 66 additions and 55 deletions

View File

@ -427,17 +427,17 @@
Если ТипЗнч(ПроверяемаяСтрока) <> Тип("Строка") Тогда Если ТипЗнч(ПроверяемаяСтрока) <> Тип("Строка") Тогда
Возврат Неопределено; Возврат Неопределено;
КонецЕсли; КонецЕсли;
РегулярныеВыражения = ЮТКомпоненты.РегулярныеВыражения(); РегулярныеВыражения = ЮТКомпоненты.РегулярныеВыражения();
Попытка Попытка
Результат = РегулярныеВыражения.Совпадает(ПроверяемаяСтрока, РегулярноеВыражение); Результат = РегулярныеВыражения.Совпадает(ПроверяемаяСтрока, РегулярноеВыражение);
Исключение Исключение
ВызватьИсключение РегулярныеВыражения.ОписаниеОшибки; ВызватьИсключение РегулярныеВыражения.ОписаниеОшибки;
КонецПопытки; КонецПопытки;
Возврат Результат; Возврат Результат;
КонецФункции КонецФункции
Функция НайтиЗначение(ПроверяемоеЗначение, ОжидаемоеЗначение) Функция НайтиЗначение(ПроверяемоеЗначение, ОжидаемоеЗначение)
@ -469,6 +469,10 @@
ИскомоеЗначениеНайдено = ПроверяемоеЗначение.НайтиПоЗначению(ОжидаемоеЗначение) <> Неопределено; ИскомоеЗначениеНайдено = ПроверяемоеЗначение.НайтиПоЗначению(ОжидаемоеЗначение) <> Неопределено;
ИначеЕсли ПроверяемоеЗначение <> Неопределено И ЮТОбщий.МетодМодуляСуществует(ПроверяемоеЗначение, "Найти", , Ложь) Тогда
ИскомоеЗначениеНайдено = ПроверяемоеЗначение.Найти(ОжидаемоеЗначение) <> Неопределено;
Иначе Иначе
ИскомоеЗначениеНайдено = Неопределено; // Обрабатывается вызывающим методом ИскомоеЗначениеНайдено = Неопределено; // Обрабатывается вызывающим методом
@ -590,7 +594,7 @@
ИначеЕсли ВидСравненияВыражения = ВидыСравнения.ИмеетДлину Тогда ИначеЕсли ВидСравненияВыражения = ВидыСравнения.ИмеетДлину Тогда
Результат = ПроверитьДлину(СтатусПроверки, ПроверяемоеЗначение, ОжидаемоеЗначение, ПараметрыПроверки); ПроверитьДлину(СтатусПроверки, ПроверяемоеЗначение, ОжидаемоеЗначение, ПараметрыПроверки);
ИначеЕсли ВидСравненияВыражения = ВидыСравнения.Содержит Тогда ИначеЕсли ВидСравненияВыражения = ВидыСравнения.Содержит Тогда
@ -645,6 +649,7 @@
КонецЕсли; КонецЕсли;
Результат = ЮТПроверкиСлужебный.ТипЗначенияСоответствует(ПроверяемоеЗначение, ПараметрыПроверки.ОжидаемоеЗначение); Результат = ЮТПроверкиСлужебный.ТипЗначенияСоответствует(ПроверяемоеЗначение, ПараметрыПроверки.ОжидаемоеЗначение);
Если ПараметрыПроверки.Реверс Тогда Если ПараметрыПроверки.Реверс Тогда
Результат = НЕ Результат; Результат = НЕ Результат;
КонецЕсли; КонецЕсли;
@ -687,10 +692,10 @@
КонецФункции КонецФункции
Функция ПроверитьДлину(РезультатПроверки, ПроверяемоеЗначение, ОжидаемоеЗначение, ПараметрыПроверки) Процедура ПроверитьДлину(РезультатПроверки, ПроверяемоеЗначение, ОжидаемоеЗначение, ПараметрыПроверки)
Если НЕ ПроверитьТипЗначения(РезультатПроверки, ОжидаемоеЗначение, "Число") Тогда Если НЕ ПроверитьТипЗначения(РезультатПроверки, ОжидаемоеЗначение, "Число") Тогда
Возврат Неопределено; Возврат;
КонецЕсли; КонецЕсли;
ФактическаяДлина = ДлинаЗначения(ПроверяемоеЗначение); ФактическаяДлина = ДлинаЗначения(ПроверяемоеЗначение);
@ -698,12 +703,18 @@
Если ФактическаяДлина = Неопределено Тогда Если ФактическаяДлина = Неопределено Тогда
ТекстОшибки = СтрШаблон("тип проверяемого значения `%1` не обрабатывается утверждением", ТипЗнч(ПроверяемоеЗначение)); ТекстОшибки = СтрШаблон("тип проверяемого значения `%1` не обрабатывается утверждением", ТипЗнч(ПроверяемоеЗначение));
ЮТРегистрацияОшибок.ДобавитьОшибкуКРезультатуПроверки(РезультатПроверки, ТекстОшибки, ПараметрыПроверки); ЮТРегистрацияОшибок.ДобавитьОшибкуКРезультатуПроверки(РезультатПроверки, ТекстОшибки, ПараметрыПроверки);
Возврат Неопределено; Возврат;
КонецЕсли; КонецЕсли;
Возврат ФактическаяДлина = ПараметрыПроверки.ОжидаемоеЗначение; Результат = ФактическаяДлина = ПараметрыПроверки.ОжидаемоеЗначение;
КонецФункции Если ПараметрыПроверки.Реверс Тогда
Результат = НЕ Результат;
КонецЕсли;
ОбработатьРезультатСравнения(Результат, РезультатПроверки, ПараметрыПроверки, ФактическаяДлина);
КонецПроцедуры
Функция ПроверитьСодержит(РезультатПроверки, ПроверяемоеЗначение, ОжидаемоеЗначение, ПараметрыПроверки) Функция ПроверитьСодержит(РезультатПроверки, ПроверяемоеЗначение, ОжидаемоеЗначение, ПараметрыПроверки)

View File

@ -1404,50 +1404,50 @@
Процедура ИмеетДлину() Экспорт Процедура ИмеетДлину() Экспорт
// // Позитивные тесты // Позитивные тесты
// ЮТУтверждения.Что("123", "Строка") ЮТУтверждения.Что("123", "Строка")
// .ИмеетДлину(3); .ИмеетДлину(3);
// ЮТУтверждения.Что(Новый Массив(50), "Массив") ЮТУтверждения.Что(Новый Массив(50), "Массив")
// .ИмеетДлину(50); .ИмеетДлину(50);
// ЮТУтверждения.Что(Новый Структура("а, б, в"), "Структура") ЮТУтверждения.Что(Новый Структура("а, б, в"), "Структура")
// .ИмеетДлину(3); .ИмеетДлину(3);
// ЮТУтверждения.Что(Новый ФиксированныйМассив(Новый Массив(50)), "ФиксированныйМассив") ЮТУтверждения.Что(Новый ФиксированныйМассив(Новый Массив(50)), "ФиксированныйМассив")
// .ИмеетДлину(50); .ИмеетДлину(50);
// ЮТУтверждения.Что(Новый ФиксированнаяСтруктура(Новый Структура("а, б, в")), "ФиксированнаяСтруктура") ЮТУтверждения.Что(Новый ФиксированнаяСтруктура(Новый Структура("а, б, в")), "ФиксированнаяСтруктура")
// .ИмеетДлину(3); .ИмеетДлину(3);
// Соответствие = Новый Соответствие(); Соответствие = Новый Соответствие();
// Соответствие.Вставить(1); Соответствие.Вставить(1);
// Соответствие.Вставить(5); Соответствие.Вставить(5);
// Соответствие.Вставить("5"); Соответствие.Вставить("5");
// Соответствие.Вставить("6"); Соответствие.Вставить("6");
// ЮТУтверждения.Что(Соответствие, "Соответствие") ЮТУтверждения.Что(Соответствие, "Соответствие")
// .ИмеетДлину(4); .ИмеетДлину(4);
// ЮТУтверждения.Что(Новый ФиксированноеСоответствие(Соответствие), "ФиксированноеСоответствие") ЮТУтверждения.Что(Новый ФиксированноеСоответствие(Соответствие), "ФиксированноеСоответствие")
// .ИмеетДлину(4); .ИмеетДлину(4);
// Список = Новый СписокЗначений(); Список = Новый СписокЗначений();
// Список.ЗагрузитьЗначения(Новый Массив(13)); Список.ЗагрузитьЗначения(Новый Массив(13));
// ЮТУтверждения.Что(Список, "СписокЗначений") ЮТУтверждения.Что(Список, "СписокЗначений")
// .ИмеетДлину(13); .ИмеетДлину(13);
//
// // Негативные тесты // Негативные тесты
// Попытка Попытка
// Ошибка = Неопределено; Ошибка = Неопределено;
// ЮТУтверждения.Что("123") ЮТУтверждения.Что("123")
// .ИмеетДлину(123); .ИмеетДлину(123);
// Исключение Исключение
// Ошибка = ИнформацияОбОшибке(); Ошибка = ИнформацияОбОшибке();
// КонецПопытки; КонецПопытки;
// ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `123` имеет длину (размер) `123`, но это не так"); ПроверитьОшибкуУтверждения(Ошибка, "Ожидали, что проверяемое значение `123` имеет длину (размер) `123`, но это не так");
// ПроверитьДанныеОшибкиСравнения(3, 123); ПроверитьДанныеОшибкиСравнения(3, 123);
//
// Попытка Попытка
// Ошибка = Неопределено; Ошибка = Неопределено;
// ЮТУтверждения.Что(Новый Массив(16), "Массив") ЮТУтверждения.Что(Новый Массив(16), "Массив")
// .ИмеетДлину(1); .ИмеетДлину(1);
// Исключение Исключение
// Ошибка = ИнформацияОбОшибке(); Ошибка = ИнформацияОбОшибке();
// КонецПопытки; КонецПопытки;
// ПроверитьОшибкуУтверждения(Ошибка, "Массив: ожидали, что проверяемое значение `Массив` имеет длину (размер) `1`, но это не так"); ПроверитьОшибкуУтверждения(Ошибка, "Массив: ожидали, что проверяемое значение `Массив` имеет длину (размер) `1`, но это не так");
Попытка Попытка
Ошибка = Неопределено; Ошибка = Неопределено;
@ -1523,7 +1523,7 @@
Исключение Исключение
Ошибка = ИнформацияОбОшибке(); Ошибка = ИнформацияОбОшибке();
КонецПопытки; КонецПопытки;
ПроверитьОшибкуИсполнения(Ошибка, "Дата: Тип проверяемого значения `Дата` не обрабатывается утверждением"); ПроверитьОшибкуИсполнения(Ошибка, "Дата: тип проверяемого значения `Дата` не обрабатывается утверждением");
Попытка Попытка
Ошибка = Неопределено; Ошибка = Неопределено;