File tree Expand file tree Collapse file tree 4 files changed +41
-7
lines changed Expand file tree Collapse file tree 4 files changed +41
-7
lines changed Original file line number Diff line number Diff line change 1313 Константы_ЛокальнаяВерсия = ЗагрузитьСценарий(ПутьКСценариюКонстант);
1414 ВерсияПродукта = Константы_ЛокальнаяВерсия.ВерсияПродукта;
1515Иначе
16- ВерсияПродукта = "1.4.1 ";
16+ ВерсияПродукта = "1.4.2 ";
1717КонецЕсли;
1818
1919Описание.Имя("opm")
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 Лог.Отладка("Пакет установлен: " + ПакетУстановлен);
160171
161172 Возврат ПутьКФайлуМетаданных;
162173
163- КонецФункции
164-
174+ КонецФункции
175+
176+
177+
165178Процедура ПриСозданииОбъекта (КаталогПоискаБиблиотек = "" )
166179
167180 Лог = Логирование.ПолучитьЛог("oscript.app.opm" );
Original file line number Diff line number Diff line change 2424ПутьВЗапасномХранилище = "/download/" ;
2525ЛокальныйКаталогУстановкиПакетов = "oscript_modules" ;
2626ИмяЛога = "oscript.app.opm" ;
27- ВерсияПродукта = "1.4.1 " ;
27+ ВерсияПродукта = "1.4.2 " ;
2828ИмяФайлаНастроек = "opm.cfg" ;
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