1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-03-26 21:12:53 +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` не обрабатывается утверждением", ТипЗнч(ПроверяемоеЗначение));
ЮТРегистрацияОшибок.ДобавитьОшибкуКРезультатуПроверки(РезультатПроверки, ТекстОшибки, ПараметрыПроверки);
Возврат Неопределено;
Возврат;
КонецЕсли;
Возврат ФактическаяДлина = ПараметрыПроверки.ОжидаемоеЗначение;
Результат = ФактическаяДлина = ПараметрыПроверки.ОжидаемоеЗначение;
КонецФункции
Если ПараметрыПроверки.Реверс Тогда
Результат = НЕ Результат;
КонецЕсли;
ОбработатьРезультатСравнения(Результат, РезультатПроверки, ПараметрыПроверки, ФактическаяДлина);
КонецПроцедуры
Функция ПроверитьСодержит(РезультатПроверки, ПроверяемоеЗначение, ОжидаемоеЗначение, ПараметрыПроверки)

View File

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