From c8b2349cf2cfd4e451cf9d40989e1e17116d2975 Mon Sep 17 00:00:00 2001 From: Oleg Karataev Date: Wed, 14 Jan 2026 09:33:23 +0300 Subject: [PATCH 1/5] =?UTF-8?q?fix:=20=D0=92=20=D0=A1=D0=B8=D0=BD=D1=85?= =?UTF-8?q?=D1=80=D0=BE=D0=BD=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=D0=9E?= =?UTF-8?q?=D0=B1=D1=8A=D0=B5=D0=BA=D1=82=D0=BE=D0=B2=D0=9C=D0=B5=D1=82?= =?UTF-8?q?=D0=B0=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85=D0=98=D0=A4=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D0=BE=D0=B2:=20=D0=9D=D0=B5=20=D0=B0=D0=BD=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D1=82=D1=8C=20?= =?UTF-8?q?=D0=BA=D0=B0=D1=82=D0=B0=D0=BB=D0=BE=D0=B3=20=D0=BE=D0=B1=D1=8A?= =?UTF-8?q?=D0=B5=D0=BA=D1=82=D0=B0=20=D0=BC=D0=B5=D1=82=D0=B0=D0=B4=D0=B0?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D1=85=20=D0=B5=D1=81=D0=BB=D0=B8=20=D0=BE?= =?UTF-8?q?=D0=BD=20=D0=BF=D1=83=D1=81=D1=82=D0=BE=D0=B9=20(=D0=B1=D0=B5?= =?UTF-8?q?=D0=B7=20=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...21\200\320\260\321\206\320\270\320\270.os" | 22 +++++++++++++++++++ ...20\260\320\271\320\273\320\276\320\262.os" | 8 +++++++ 2 files changed, 30 insertions(+) diff --git "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" index 20c32f4..7ed549e 100644 --- "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" +++ "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" @@ -241,6 +241,28 @@ КонецФункции +Функция ЕстьФайлыВКаталоге(ФайлКаталога) Экспорт + + ИскатьВПодкаталагах = Истина; + + МассивФайлов = НайтиФайлы(ФайлКаталога.ПолноеИмя, "*", ИскатьВПодкаталагах); + + МассивФайловКаталога = Новый Массив; + + Для Каждого Файл Из МассивФайлов Цикл + + Если Не Файл.ЭтоКаталог() Тогда + + МассивФайловКаталога.Добавить(Файл); + + КонецЕсли; + + КонецЦикла; + + Возврат МассивФайловКаталога.Количество() > 0; + +КонецФункции + Функция КаталогСуществует(Знач Путь1, Знач Путь2 = Неопределено, Знач Путь3 = Неопределено, Знач Путь4 = Неопределено) Экспорт ПолныйПуть = ОбъединитьПути(Путь1, Путь2, Путь3, Путь4); diff --git "a/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" "b/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" index e1d283e..938cd20 100644 --- "a/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" +++ "b/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" @@ -221,13 +221,21 @@ КаталогиОбъектов = Новый Массив; НайденныеКаталоги = ФайловыеОперации.НайтиКаталоги(КаталогТипа.ПолноеИмя); Для Каждого Каталог Из НайденныеКаталоги Цикл + Если МассивОбъектов.Найти(Каталог.ИмяБезРасширения) = Неопределено Тогда + + Если Не ФайловыеОперации.ЕстьФайлыВКаталоге(Каталог) Тогда + Продолжить; + КонецЕсли; + Если НЕ ПустойКаталог(Каталог.ПолноеИмя) Тогда МассивОшибок.Добавить(СтрШаблон("Каталог не является каталогом объекта %1", Каталог.ПолноеИмя)); КонецЕсли; + Иначе КаталогиОбъектов.Добавить(Каталог); КонецЕсли; + КонецЦикла; Возврат КаталогиОбъектов; From 5335959e14d697d1ace522a5ed35a63a10172b75 Mon Sep 17 00:00:00 2001 From: Oleg Karataev Date: Wed, 14 Jan 2026 16:58:59 +0300 Subject: [PATCH 2/5] =?UTF-8?q?tests:=20=D0=98=D1=81=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=82=D0=B5=D1=81=D1=82?= =?UTF-8?q?=D0=BE=D0=B2=20BDD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../step_definitions/precommitonec_feature.os | 15 +++++- ...4\320\274\320\270\321\202\320\260.feature" | 52 +++++++++---------- ...0\320\260\321\206\320\270\320\270.feature" | 2 +- 3 files changed, 41 insertions(+), 28 deletions(-) diff --git a/features/step_definitions/precommitonec_feature.os b/features/step_definitions/precommitonec_feature.os index c39be39..db064b8 100644 --- a/features/step_definitions/precommitonec_feature.os +++ b/features/step_definitions/precommitonec_feature.os @@ -20,9 +20,10 @@ ВсеШаги.Добавить("ЯФиксируюИзмененияВРепозиторииСКомментарием"); ВсеШаги.Добавить("УФайлаЕстьМетка"); ВсеШаги.Добавить("СодержимоеФайлаИФайлаРазное"); + ВсеШаги.Добавить("СодержимоеФайлаИФайлаОдинаковое"); ВсеШаги.Добавить("ЯСоздаюНовыйРепозиторийБезИнициализацииВКаталогеИЗапоминаюЕгоКак"); ВсеШаги.Добавить("ЯСоздаюФайлВКодировкеСТекстом"); - + Возврат ВсеШаги; КонецФункции @@ -147,6 +148,18 @@ КонецПроцедуры +// Содержимое файла "ИсходныйФайл" и файла "КонечныйФайл" одинаковое +Процедура СодержимоеФайлаИФайлаОдинаковое(ИсходныйФайл, КонечныйФайл) Экспорт + + ИсходныйФайл = ОбъединитьПути(БДД.ПолучитьИзКонтекста("КаталогПроекта"), ИсходныйФайл); + КонечныйФайл = ОбъединитьПути(БДД.ПолучитьИзКонтекста("РабочийКаталог"), КонечныйФайл); + + СодержимоеКонечногоФайла = ФайловыеОперации.ПрочитатьТекстФайла(КонечныйФайл); + СодержимоеИсходногоФайла = ФайловыеОперации.ПрочитатьТекстФайла(ИсходныйФайл); + + Ожидаем.Что(СодержимоеИсходногоФайла).Равно(СодержимоеКонечногоФайла); + +КонецПроцедуры //Я создаю файл "СпециальныйКаталог/ФайлСТекстом.txt" в кодировке "cp866" с текстом "текст178" Процедура ЯСоздаюФайлВКодировкеСТекстом(Знач ПутьФайла, Знач Кодировка, Знач ТекстФайла) Экспорт diff --git "a/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\237\321\200\320\265\320\272\320\276\320\274\320\274\320\270\321\202\320\260.feature" "b/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\237\321\200\320\265\320\272\320\276\320\274\320\274\320\270\321\202\320\260.feature" index 2b677c5..01d7891 100644 --- "a/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\237\321\200\320\265\320\272\320\276\320\274\320\274\320\270\321\202\320\260.feature" +++ "b/features/\320\222\321\213\320\277\320\276\320\273\320\275\320\265\320\275\320\270\320\265\320\237\321\200\320\265\320\272\320\276\320\274\320\274\320\270\321\202\320\260.feature" @@ -31,7 +31,7 @@ И я создаю временный каталог и запоминаю его как "КаталогРепозиториев" И я переключаюсь во временный каталог "КаталогРепозиториев" И я создаю новый репозиторий "rep1" в каталоге "КаталогРепозиториев" и запоминаю его как "РабочийКаталог" - И я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os install rep1" + И я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os install rep1 -source-dir ." И я установил рабочий каталог как текущий каталог Сценарий: Разбор отчетов, обработок, расширений на исходники. @@ -40,28 +40,28 @@ И я копирую файл "tests/fixtures/demo/DemoРасширение.cfe" в каталог репозитория "РабочийКаталог" И Я копирую файл "НецензурныеСлова.txt" в каталог репозитория "РабочийКаталог" И я фиксирую изменения в репозитории "РабочийКаталог" с комментарием "demo коммит" - Тогда В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ/Ext/Form/form" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Templates/ОсновнаяСхемаКомпоновкиДанных.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Templates/ОсновнаяСхемаКомпоновкиДанных/Ext/Template.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ/Ext/Form.bin" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяУФ.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяУФ/Ext/Form.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form.bin" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяУФ.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяУФ/Ext/Form.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/form" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/ConfigDumpInfo.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/Configuration.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/CommonModules/DemoРасш_Demo.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/CommonModules/DemoРасш_Demo/Ext/Module.bsl" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/Subsystems/DemoРасш_Demo.xml" - И В каталоге "src" репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/Languages/Русский.xml" + Тогда В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ/Ext/Form/form" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Templates/ОсновнаяСхемаКомпоновкиДанных.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Templates/ОсновнаяСхемаКомпоновкиДанных/Ext/Template.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяОФ/Ext/Form.bin" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяУФ.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "erf/DemoОтчет/DemoОтчет/Forms/ОсновнаяУФ/Ext/Form.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form.bin" + И В каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяУФ.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяУФ/Ext/Form.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" + И В каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/form" + И В каталоге "." репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/ConfigDumpInfo.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/Configuration.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/CommonModules/DemoРасш_Demo.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/CommonModules/DemoРасш_Demo/Ext/Module.bsl" + И В каталоге "." репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/Subsystems/DemoРасш_Demo.xml" + И В каталоге "." репозитория "РабочийКаталог" есть файл "cfe/DemoРасширение/Languages/Русский.xml" Сценарий: Разбор конфигурации на исходники во время коммита, с последующим применением правил к распакованным модулям Когда Я копирую каталог "src" из каталога "tests/fixtures/cf-common-forms" проекта в рабочий каталог @@ -122,10 +122,10 @@ Сценарий: В коммит попадают только проиндексированные файлы Когда Я копирую файл "tests/fixtures/demo/DemoОбработка.epf" в каталог репозитория "РабочийКаталог" И я фиксирую изменения в репозитории "РабочийКаталог" с комментарием "demo коммит" - И в каталоге "src" репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" - И я создаю файл "РабочийКаталог/src/ФайлСТекстом.bsl" с текстом "текст178" + И в каталоге "." репозитория "РабочийКаталог" есть файл "epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" + И я создаю файл "РабочийКаталог/ФайлСТекстом.bsl" с текстом "текст178" И я выполняю команду "git" с параметрами "add --all" - И я создаю файл "РабочийКаталог/src/epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" с текстом "текст178" + И я создаю файл "РабочийКаталог/epf/DemoОбработка/DemoОбработка/Forms/ОсновнаяОФ/Ext/Form/Module.bsl" с текстом "текст178" И я выполняю команду "git" с параметрами "commit -m addFile" Тогда Вывод команды "git" не содержит "Module.bsl" diff --git "a/features/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.feature" "b/features/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.feature" index c55cf72..797958f 100644 --- "a/features/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.feature" +++ "b/features/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.feature" @@ -20,7 +20,7 @@ И У файла <Конечный файл> есть метка И я фиксирую изменения в репозитории "РабочийКаталог" с комментарием "Добавил файл процедур" Тогда У файла <Конечный файл> есть метка - И Содержимое файла <Исходный файл> и файла <Конечный файл> разное + И Содержимое файла <Исходный файл> и файла <Конечный файл> одинаковое Примеры: | Исходный файл | Конечный файл | Bom | | tests/fixtures/NoBom.bsl| NoBom.bsl | Нет | From 09b4505cf69ade6aadb5968213bb22fa94fbb1ef Mon Sep 17 00:00:00 2001 From: Oleg Karataev Date: Thu, 15 Jan 2026 11:09:54 +0300 Subject: [PATCH 3/5] =?UTF-8?q?fix:=20=D0=9E=D0=BF=D0=B5=D1=87=D0=B0=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=B2=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D0=BC=D0=B5=D0=BD=D0=BD=D0=BE=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\277\320\265\321\200\320\260\321\206\320\270\320\270.os" | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" index 7ed549e..bd9d66a 100644 --- "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" +++ "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\265\320\236\320\277\320\265\321\200\320\260\321\206\320\270\320\270.os" @@ -243,9 +243,9 @@ Функция ЕстьФайлыВКаталоге(ФайлКаталога) Экспорт - ИскатьВПодкаталагах = Истина; + ИскатьВПодкаталогах = Истина; - МассивФайлов = НайтиФайлы(ФайлКаталога.ПолноеИмя, "*", ИскатьВПодкаталагах); + МассивФайлов = НайтиФайлы(ФайлКаталога.ПолноеИмя, "*", ИскатьВПодкаталогах); МассивФайловКаталога = Новый Массив; From 3695704a08ae652ed5ab034e7e40efa8e56206b2 Mon Sep 17 00:00:00 2001 From: Oleg Karataev Date: Thu, 15 Jan 2026 11:56:27 +0300 Subject: [PATCH 4/5] =?UTF-8?q?tests:=20=D0=94=D0=BE=D0=BF=D0=BE=D0=BB?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D0=BE=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=BC?= =?UTF-8?q?=20=D0=BD=D0=B0=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA?= =?UTF-8?q?=D1=83=20=D0=BF=D1=83=D1=81=D1=82=D0=BE=D0=B3=D0=BE=20=D0=BA?= =?UTF-8?q?=D0=B0=D1=82=D0=B0=D0=BB=D0=BE=D0=B3=D0=B0=20=D1=81=20=D0=BF?= =?UTF-8?q?=D1=83=D1=81=D1=82=D1=8B=D0=BC=20=D0=B2=D0=BB=D0=BE=D0=B6=D0=B5?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D0=BC=20=D0=BA=D0=B0=D1=82=D0=B0=D0=BB=D0=BE?= =?UTF-8?q?=D0=B3=D0=BE=D0=BC,=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B?= =?UTF-8?q?=D0=B9=20=D0=B4=D0=BE=D0=BB=D0=B6=D0=B5=D0=BD=20=D0=B8=D0=B3?= =?UTF-8?q?=D0=BD=D0=BE=D1=80=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D1=82=D1=8C?= =?UTF-8?q?=D1=81=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\260\320\261\320\276\321\202\320\272\320\270.os" | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git "a/tests/\320\242\320\265\321\201\321\202\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\265\320\262\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270.os" "b/tests/\320\242\320\265\321\201\321\202\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\265\320\262\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270.os" index 9198145..3bdadc0 100644 --- "a/tests/\320\242\320\265\321\201\321\202\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\265\320\262\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270.os" +++ "b/tests/\320\242\320\265\321\201\321\202\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\265\320\262\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270.os" @@ -360,11 +360,17 @@ ПутьККаталогу = ФайловыеОперации.НормализоватьРазделители(ОбъединитьПути(ВременныйКаталог, "Conf/IntegrationServices")); СоздатьКаталог(ПутьККаталогу); - ПутьККаталогу = ФайловыеОперации.НормализоватьРазделители(ОбъединитьПути(ВременныйКаталог, "EDT/src/ПустойКаталог")); + ПутьККаталогу = ФайловыеОперации.НормализоватьРазделители(ОбъединитьПути(ВременныйКаталог, "EDT/src/ПустойКаталогТипаМетаданных")); СоздатьКаталог(ПутьККаталогу); ПутьККаталогу = ФайловыеОперации.НормализоватьРазделители(ОбъединитьПути(ВременныйКаталог, "EDT/src/IntegrationServices/СервисИнтеграции")); СоздатьКаталог(ПутьККаталогу); + + ПутьККаталогу = ФайловыеОперации.НормализоватьРазделители(ОбъединитьПути(ВременныйКаталог, "EDT/src/Catalogs/ПустойОбъектМетаданных")); + СоздатьКаталог(ПутьККаталогу); + + ПутьККаталогу = ФайловыеОперации.НормализоватьРазделители(ОбъединитьПути(ВременныйКаталог, "EDT/src/Catalogs/ПустойОбъектМетаданных/ВложенныйКаталог")); + СоздатьКаталог(ПутьККаталогу); ТекстОшибки = ""; Попытка @@ -378,8 +384,10 @@ ТекстОшибки = ОписаниеОшибки(); КонецПопытки; - Ожидаем.Что(ТекстОшибки, "Пустые каталоги игнорируются").Не_().Содержит("ПустойКаталог"); + Ожидаем.Что(ТекстОшибки, "Пустые каталоги игнорируются").Не_().Содержит("ПустойКаталогТипаМетаданных"); Ожидаем.Что(ТекстОшибки, "Пустые каталоги игнорируются").Не_().Содержит("НесуществующийСправочник"); + Ожидаем.Что(ТекстОшибки, "Пустые каталоги объектов метаданных игнорируются").Не_().Содержит("ПустойОбъектМетаданных"); + Ожидаем.Что(ТекстОшибки, "Лишние каталоги в репозитории").Содержит("Каталог не является каталогом метаданных"); Ожидаем.Что(ТекстОшибки, "Отсутствует каталог метаданных").Содержит("Не найден каталог типа метаданных FilterCriterion"); Ожидаем.Что(ТекстОшибки, "Отсутствуют файлы описания объекта метаданных").Содержит("Отсутствуют файлы для IntegrationService.СервисИнтеграции"); From 81c4c5592501cd9e74a562e7baa02be9ac0d2539 Mon Sep 17 00:00:00 2001 From: Oleg Karataev Date: Tue, 24 Feb 2026 12:26:28 +0300 Subject: [PATCH 5/5] =?UTF-8?q?fix:=20=D0=9E=D0=B1=D1=8A=D0=B5=D0=B4=D0=B5?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D1=8B=20=D1=83=D1=81=D0=BB=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=B4=D0=BB=D1=8F=20=D0=BE=D0=BF=D1=82=D0=B8=D0=BC?= =?UTF-8?q?=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...230\320\244\320\260\320\271\320\273\320\276\320\262.os" | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git "a/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" "b/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" index 938cd20..74a664d 100644 --- "a/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" +++ "b/src/\320\241\321\206\320\265\320\275\320\260\321\200\320\270\320\270\320\236\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\270/\320\241\320\270\320\275\321\205\321\200\320\276\320\275\320\270\320\267\320\260\321\206\320\270\321\217\320\236\320\261\321\212\320\265\320\272\321\202\320\276\320\262\320\234\320\265\321\202\320\260\320\264\320\260\320\275\320\275\321\213\321\205\320\230\320\244\320\260\320\271\320\273\320\276\320\262.os" @@ -224,11 +224,8 @@ Если МассивОбъектов.Найти(Каталог.ИмяБезРасширения) = Неопределено Тогда - Если Не ФайловыеОперации.ЕстьФайлыВКаталоге(Каталог) Тогда - Продолжить; - КонецЕсли; - - Если НЕ ПустойКаталог(Каталог.ПолноеИмя) Тогда + // Если в каталоге есть файлы, но он не соответствует ни одному объекту метаданных - это ошибка. + Если ФайловыеОперации.ЕстьФайлыВКаталоге(Каталог) Тогда МассивОшибок.Добавить(СтрШаблон("Каталог не является каталогом объекта %1", Каталог.ПолноеИмя)); КонецЕсли;