File tree Expand file tree Collapse file tree 2 files changed +35
-3
lines changed
Expand file tree Collapse file tree 2 files changed +35
-3
lines changed Original file line number Diff line number Diff line change 3939 УстановленаКорректнаяВерсия = Истина ;
4040 ИначеЕсли ОписаниеЗависимости.МинимальнаяВерсия = ВерсияSNAPSHOT И УстановленнаяВерсия <> ВерсияSNAPSHOT Тогда
4141 УстановленаКорректнаяВерсия = Ложь ;
42- Иначе
43- УстановленаКорректнаяВерсия = ОписаниеЗависимости.МинимальнаяВерсия = Неопределено
44- ИЛИ Версии.СравнитьВерсии(УстановленнаяВерсия, ОписаниеЗависимости.МинимальнаяВерсия) >= 0 ;
42+ Иначе
43+ Если ОписаниеЗависимости.МинимальнаяВерсия = Неопределено Тогда
44+ УстановленаКорректнаяВерсия = Истина ;
45+ Иначе
46+ Попытка
47+ // Сначала пытаемся использовать семвер
48+ РезультатСравнения = Версии.СравнитьВерсии(УстановленнаяВерсия, ОписаниеЗависимости.МинимальнаяВерсия);
49+ Исключение
50+ // Если семвер не может обработать версию (например, 4-значную), используем старый механизм
51+ РезультатСравнения = РаботаСВерсиями.СравнитьВерсии(УстановленнаяВерсия, ОписаниеЗависимости.МинимальнаяВерсия);
52+ КонецПопытки ;
53+
54+ УстановленаКорректнаяВерсия = РезультатСравнения >= 0 ;
55+ КонецЕсли ;
4556 КонецЕсли ;
4657
4758 Лог.Отладка("Пакет установлен: " + ПакетУстановлен);
Original file line number Diff line number Diff line change 1616 СписокТестов.Добавить("ТестДолжен_ПроверитьЧтоВерсияАБольшеВерсииБ" );
1717 СписокТестов.Добавить("ТестДолжен_ПолучитьИмяИВерсиюПоИмениПакетаБезВерсии" );
1818 СписокТестов.Добавить("ТестДолжен_ПолучитьИмяИВерсиюПоИмениПакетаСВерсией" );
19+ СписокТестов.Добавить("ТестДолжен_СравнитьЧетырехзначныеВерсии" );
1920
2021 Возврат СписокТестов;
2122
8990 Ожидаем.Что(Пакет.Версия).Равно("1.1.1" );
9091
9192КонецПроцедуры
93+
94+ Процедура ТестДолжен_СравнитьЧетырехзначныеВерсии () Экспорт
95+
96+ // Тестируем сравнение четырехзначных версий (не семвер)
97+ ВерсияА = "1.2.3.4" ;
98+ ВерсияБ = "1.2.3.3" ;
99+
100+ // Проверяем что старый механизм может сравнивать 4-значные версии
101+ РезультатСравнения = РаботаСВерсиями.СравнитьВерсии(ВерсияА, ВерсияБ);
102+ Ожидаем.Что(РезультатСравнения).Больше(0 );
103+
104+ // Проверяем равенство
105+ РезультатСравнения = РаботаСВерсиями.СравнитьВерсии(ВерсияА, ВерсияА);
106+ Ожидаем.Что(РезультатСравнения).Равно(0 );
107+
108+ // Проверяем меньше
109+ РезультатСравнения = РаботаСВерсиями.СравнитьВерсии(ВерсияБ, ВерсияА);
110+ Ожидаем.Что(РезультатСравнения).Меньше(0 );
111+
112+ КонецПроцедуры
You can’t perform that action at this time.
0 commit comments