Skip to content

Commit 7755f02

Browse files
committed
Базовый модуль утверждений (assertions) из фреймворка xUnitFor1C
0 parents  commit 7755f02

File tree

1 file changed

+110
-0
lines changed

1 file changed

+110
-0
lines changed

Утверждения.os

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
Процедура Проверить(Условие, ДопСообщениеОшибки = "") Экспорт
2+
Если Не Условие Тогда
3+
СообщениеОшибки = "Переданный параметр ("+Формат(Условие, "БЛ=ложь; БИ=истина")+") не является Истиной, а хотели, чтобы являлся." + ФорматДСО(ДопСообщениеОшибки);
4+
ВызватьИсключение(СообщениеОшибки);
5+
КонецЕсли;
6+
КонецПроцедуры
7+
8+
Процедура ПроверитьИстину(Условие, ДопСообщениеОшибки = "") Экспорт
9+
Проверить(Условие, ДопСообщениеОшибки);
10+
КонецПроцедуры
11+
12+
Процедура ПроверитьЛожь(Условие, ДопСообщениеОшибки = "") Экспорт
13+
Если Условие Тогда
14+
СообщениеОшибки = "Переданный параметр ("+Формат(Условие, "БЛ=ложь; БИ=истина")+") не является Ложью, а хотели, чтобы являлся." + ФорматДСО(ДопСообщениеОшибки);
15+
ВызватьИсключение(СообщениеОшибки);
16+
КонецЕсли;
17+
КонецПроцедуры
18+
19+
Процедура ПроверитьДату(_Дата, _Период, ДопСообщениеОшибки = "") Экспорт
20+
Если _Дата < _Период.ДатаНачала или _Дата > _Период.ДатаОкончания Тогда
21+
представление = ПредставлениеПериода(_Период.ДатаНачала, _Период.ДатаОкончания, "ФП = Истина");
22+
СообщениеОшибки = "Переданный параметр ("+Формат(_Дата, "ДФ='dd.MM.yyyy HH:mm:ss'")+") не входит в период "+представление+", а хотели, чтобы являлся." + ФорматДСО(ДопСообщениеОшибки);
23+
ВызватьИсключение(СообщениеОшибки);
24+
КонецЕсли;
25+
КонецПроцедуры
26+
27+
Процедура ПроверитьРавенство(ПервоеЗначение, ВтороеЗначение, ДопСообщениеОшибки = "") Экспорт
28+
Если ПервоеЗначение <> ВтороеЗначение Тогда
29+
СообщениеОшибки = "Сравниваемые значения ("+ПервоеЗначение+"; "+ВтороеЗначение+") не равны, а хотели, чтобы были равны." + ФорматДСО(ДопСообщениеОшибки);
30+
ВызватьИсключение(СообщениеОшибки);
31+
КонецЕсли;
32+
КонецПроцедуры
33+
34+
Процедура ПроверитьНеРавенство(ПервоеЗначение, ВтороеЗначение, ДопСообщениеОшибки = "") Экспорт
35+
Если ПервоеЗначение = ВтороеЗначение Тогда
36+
СообщениеОшибки = "Сравниваемые значения ("+ПервоеЗначение+"; "+ВтороеЗначение+") равны, а хотели, чтобы были не равны." + ФорматДСО(ДопСообщениеОшибки);
37+
ВызватьИсключение(СообщениеОшибки);
38+
КонецЕсли;
39+
КонецПроцедуры
40+
41+
Процедура ПроверитьБольше(_Больше, _Меньше, ДопСообщениеОшибки = "") Экспорт
42+
Если _Больше <= _Меньше Тогда
43+
СообщениеОшибки = "Первый параметр ("+_Больше+") меньше или равен второму ("+_Меньше+") а хотели, чтобы был больше." + ФорматДСО(ДопСообщениеОшибки);
44+
ВызватьИсключение(СообщениеОшибки);
45+
КонецЕсли;
46+
КонецПроцедуры
47+
48+
Процедура ПроверитьБольшеИлиРавно(_Больше, _Меньше, ДопСообщениеОшибки = "") Экспорт
49+
Если _Больше < _Меньше Тогда
50+
СообщениеОшибки = "Первый параметр ("+_Больше+") меньше второго ("+_Меньше+") а хотели, чтобы был больше или равен." + ФорматДСО(ДопСообщениеОшибки);
51+
ВызватьИсключение(СообщениеОшибки);
52+
КонецЕсли;
53+
КонецПроцедуры
54+
55+
Процедура ПроверитьМеньше(проверяемоеЗначение1, проверяемоеЗначение2, СообщениеОбОшибке = "") Экспорт
56+
Если проверяемоеЗначение1 >= проверяемоеЗначение2 Тогда
57+
ВызватьИсключение "Значение <"+проверяемоеЗначение1+"> больше или равно, чем <"+проверяемоеЗначение2+">, а ожидалось меньше"+
58+
ФорматДСО(СообщениеОбОшибке);
59+
КонецЕсли;
60+
КонецПроцедуры
61+
62+
Процедура ПроверитьМеньшеИлиРавно(проверяемоеЗначение1, проверяемоеЗначение2, СообщениеОбОшибке = "") Экспорт
63+
Если проверяемоеЗначение1 > проверяемоеЗначение2 Тогда
64+
ВызватьИсключение "Значение <"+проверяемоеЗначение1+"> больше, чем <"+проверяемоеЗначение2+">, а ожидалось меньше или равно"+
65+
ФорматДСО(СообщениеОбОшибке);
66+
КонецЕсли;
67+
КонецПроцедуры
68+
69+
// проверка идет через ЗначениеЗаполнено, но мутабельные значение всегда считаем заполненными
70+
Процедура ПроверитьЗаполненность(ПроверяемоеЗначение, ДопСообщениеОшибки = "") Экспорт
71+
Попытка
72+
фЗаполнено = ЗначениеЗаполнено(ПроверяемоеЗначение);
73+
Исключение
74+
Возврат;
75+
КонецПопытки;
76+
Если НЕ фЗаполнено Тогда
77+
ВызватьИсключение "Значение ("+ПроверяемоеЗначение+") не заполнено, а ожидалась заполненность" + ФорматДСО(ДопСообщениеОшибки);
78+
КонецЕсли;
79+
КонецПроцедуры
80+
81+
Процедура ПроверитьНеЗаполненность(ПроверяемоеЗначение, ДопСообщениеОшибки = "") Экспорт
82+
СообщениеОшибки = "Значение ("+ПроверяемоеЗначение+") заполнено, а ожидалась незаполненность" + ФорматДСО(ДопСообщениеОшибки);
83+
Попытка
84+
фЗаполнено = ЗначениеЗаполнено(ПроверяемоеЗначение);
85+
Исключение
86+
ВызватьИсключение СообщениеОшибки;
87+
КонецПопытки;
88+
Если фЗаполнено Тогда
89+
ВызватьИсключение СообщениеОшибки;
90+
КонецЕсли;
91+
КонецПроцедуры
92+
93+
Процедура ПроверитьВхождение(строка, подстрокаПоиска, ДопСообщениеОшибки = "") Экспорт
94+
Если Найти(строка, подстрокаПоиска) = 0 Тогда
95+
СообщениеОшибки = "Искали в <"+строка+"> подстроку <"+подстрокаПоиска+">, но не нашли." + ФорматДСО(ДопСообщениеОшибки);
96+
ВызватьИсключение(СообщениеОшибки);
97+
КонецЕсли;
98+
КонецПроцедуры
99+
100+
Функция ФорматДСО(ДопСообщениеОшибки)
101+
Если ДопСообщениеОшибки = "" Тогда
102+
Возврат "";
103+
КонецЕсли;
104+
105+
Возврат Символы.ПС + ДопСообщениеОшибки;
106+
КонецФункции
107+
108+
Функция ПредставлениеПериода(ДатаНачала, ДатаОкончания, ФорматнаяСтрока = Неопределено)
109+
Возврат "с "+ДатаНачала+" по "+ДатаОкончания;
110+
КонецФункции

0 commit comments

Comments
 (0)