From 55b9b01db4993f294b61608be1919f198b9c0ff8 Mon Sep 17 00:00:00 2001 From: sfaqer Date: Sun, 3 Sep 2023 20:48:32 +1000 Subject: [PATCH 1/7] fix QA GA --- .github/workflows/qa.yml | 15 +++++++++------ tasks/coverage.os | 28 +++++++++++++++------------- 2 files changed, 24 insertions(+), 19 deletions(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 31f8454..6e32f87 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -54,14 +54,16 @@ jobs: id: extract_version - name: Установка Sonar-scanner - uses: warchant/setup-sonar-scanner@v1 + uses: warchant/setup-sonar-scanner@v3 # Анализ проекта в SonarQube (ветка) - name: Анализ в SonarQube (branch) if: github.event_name == 'push' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} run: sonar-scanner - -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} + -Dsonar.host.url=https://sonar.openbsl.ru -Dsonar.branch.name=${{ steps.extract_branch.outputs.branch }} -Dsonar.projectVersion=${{ steps.extract_version.outputs.version }} @@ -69,10 +71,11 @@ jobs: # https://docs.sonarqube.org/latest/analysis/pull-request/ - name: Анализ в SonarQube (pull-request) if: github.event_name == 'pull_request' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} run: sonar-scanner - -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} - -Dsonar.branch.name=${{ steps.extract_branch.outputs.branch }} + -Dsonar.host.url=https://sonar.openbsl.ru -Dsonar.pullrequest.key=${{ github.event.pull_request.number }} -Dsonar.pullrequest.branch=${{ github.event.pull_request.head.ref }} -Dsonar.pullrequest.base=${{ github.event.pull_request.base.ref }} diff --git a/tasks/coverage.os b/tasks/coverage.os index 3f50e0e..9fe5073 100644 --- a/tasks/coverage.os +++ b/tasks/coverage.os @@ -2,29 +2,31 @@ #Использовать 1commands #Использовать fs +СистемнаяИнформация = Новый СистемнаяИнформация; +ЭтоWindows = Найти(НРег(СистемнаяИнформация.ВерсияОС), "windows") > 0; + ФС.ОбеспечитьПустойКаталог("coverage"); ПутьКСтат = "coverage/stat.json"; Команда = Новый Команда; Команда.УстановитьКоманду("oscript"); -Команда.ДобавитьПараметр("-encoding=utf-8"); -Команда.ДобавитьПараметр(СтрШаблон("-codestat=%1", ПутьКСтат)); +Если НЕ ЭтоWindows Тогда + Команда.ДобавитьПараметр("-encoding=utf-8"); +КонецЕсли; +Команда.ДобавитьПараметр(СтрШаблон("-codestat=%1", ПутьКСтат)); Команда.ДобавитьПараметр("tasks/test.os"); Команда.ПоказыватьВыводНемедленно(Истина); КодВозврата = Команда.Исполнить(); -Файл_Стат = Новый Файл(ПутьКСтат); - -ИмяПакета = "configor"; - ПроцессорГенерации = Новый ГенераторОтчетаПокрытия(); ПроцессорГенерации.ОтносительныеПути() - .ФайлСтатистики(Файл_Стат.ПолноеИмя) - .GenericCoverage() - .Cobertura() - .Clover(ИмяПакета) - .Сформировать(); - -ЗавершитьРаботу(КодВозврата); \ No newline at end of file + .РабочийКаталог("coverage") + .КаталогИсходников(ТекущийКаталог()) + .ИмяФайлаСтатистики() + .GenericCoverage() + .Cobertura() + .Сформировать(); + +ЗавершитьРаботу(КодВозврата); From 52eae08281d4b6e7d5d540c46bf64e40bca3144d Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Sun, 3 Sep 2023 13:11:40 +0200 Subject: [PATCH 2/7] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BB=20=D0=BC?= =?UTF-8?q?=D0=B0=D1=82=D1=80=D0=B8=D1=87=D0=BD=D1=83=D1=8E=20=D1=81=D0=B1?= =?UTF-8?q?=D0=BE=D1=80=D0=BA=D1=83=20=D0=BD=D0=B0=20=D1=80=D0=B0=D0=B7?= =?UTF-8?q?=D0=BD=D1=8B=D1=85=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D1=8F=D1=85?= =?UTF-8?q?=20=D0=BE=D1=81=D0=BA=D1=80=D0=B8=D0=BF=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/qa.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 6e32f87..60b80e8 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -13,7 +13,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - oscript_version: ['1.8.3', 'stable'] + oscript_version: ['1.8.3'] steps: # Загрузка проекта From 8eda3c3a583d097dc1379f63f7db9d46af0d2d7a Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Sun, 3 Sep 2023 13:17:39 +0200 Subject: [PATCH 3/7] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BB=20=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D0=BF=D1=83=D0=B1=D0=BB=D0=B8=D0=BA=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8E=20=D0=BF=D1=80=D0=B8=20edited?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index fabc4ec..344234c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,7 +6,7 @@ name: Подготовка релиза и публикация в хабе # Только события создания и изменения релиза on: release: - types: [published, edited] + types: [published] jobs: build: @@ -56,4 +56,4 @@ jobs: shell: bash run: opm push -f ./${{ matrix.package_mask }} --token ${{ env.TOKEN }} -c stable env: - TOKEN: ${{ secrets.ACCESS_TOKEN }} \ No newline at end of file + TOKEN: ${{ secrets.ACCESS_TOKEN }} From fce874b5bf81608a8cb838e67c66a3d30df06a3a Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Sun, 3 Sep 2023 13:18:52 +0200 Subject: [PATCH 4/7] =?UTF-8?q?=D0=9F=D1=80=D0=B8=D0=B2=D1=91=D0=BB=20?= =?UTF-8?q?=D0=B8=D0=BC=D1=8F=20=D1=8D=D0=BD=D0=B2=D0=BE=D0=B2=20=D0=B2=20?= =?UTF-8?q?=D1=81=D0=BE=D0=BE=D1=82=D0=B2=D0=B5=D1=82=D1=81=D1=82=D0=B2?= =?UTF-8?q?=D0=B8=D0=B5=20=D1=81=20=D0=BE=D0=B1=D1=89=D0=B8=D0=BC=D0=B8=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=BA=D1=82=D0=B8=D0=BA=D0=B0=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 344234c..4adc530 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -54,6 +54,6 @@ jobs: - name: Публикация в hub.oscript.io shell: bash - run: opm push -f ./${{ matrix.package_mask }} --token ${{ env.TOKEN }} -c stable + run: opm push -f ./${{ matrix.package_mask }} --token ${{ env.PUSH_TOKEN }} -c stable env: - TOKEN: ${{ secrets.ACCESS_TOKEN }} + PUSH_TOKEN: ${{ secrets.PUSH_TOKEN }} From 4457b379ab3963a47a0b75eb272ee2c82807a4fb Mon Sep 17 00:00:00 2001 From: sfaqer Date: Tue, 19 Sep 2023 13:30:54 +1000 Subject: [PATCH 5/7] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=BE=D0=B1=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=BA?= =?UTF-8?q?=D0=B0=20=D1=82=D0=BE=D1=87=D0=B5=D0=BA=20=D0=B2=20=D1=80=D0=B0?= =?UTF-8?q?=D0=B1=D0=BE=D1=82=D0=B5=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B0=D0=B9?= =?UTF-8?q?=D0=B4=D0=B5=D1=80=D0=B0=20=D0=BF=D0=B5=D1=80=D0=B5=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D1=85=20=D1=81=D1=80=D0=B5=D0=B4=D1=8B.=20"?= =?UTF-8?q?=5F"=20=D1=87=D0=B8=D1=82=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20?= =?UTF-8?q?=D0=BA=D0=B0=D0=BA=20".",=20"=5F=5F"=20=D0=BA=D0=B0=D0=BA=20"?= =?UTF-8?q?=5F"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packagedef | 2 +- ...265\321\202\321\200\320\276\320\262ENV.os" | 38 ++++++++++++------- ...265\321\202\321\200\320\276\320\262ENV.os" | 10 ++--- 3 files changed, 31 insertions(+), 19 deletions(-) diff --git a/packagedef b/packagedef index 63fdd77..5a49778 100644 --- a/packagedef +++ b/packagedef @@ -4,7 +4,7 @@ // Описание.Имя("configor") - .Версия("0.8.0") + .Версия("0.8.1") .Автор("Khorev Aleksey") .АдресАвтора("Khorevaa@gmail.com") .Описание("Библиотека для работы с конфигурационными файлами в формате json, yaml") diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" index 404f1a8..b3744e6 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" @@ -50,27 +50,39 @@ Лог.Отладка("Выполняю чтение параметров переменных среды для префикса <%1>", Префикс); ПеременныеСреды = ПеременныеСреды(); - - Если ПустаяСтрока(Префикс) Тогда - Возврат ПеременныеСреды; - КонецЕсли; - ПрочитанныеПараметры = Новый Соответствие; Для каждого ПеременнаяСреды Из ПеременныеСреды Цикл - Если СтрНачинаетсяС(ПеременнаяСреды.Ключ, Префикс) Тогда + ПрочитанныеПараметры.Вставить( + СтрЗаменить(СтрЗаменить(ПеременнаяСреды.Ключ, "_", "."), "..", "_"), + ПеременнаяСреды.Значение + ); - ПрочитанныеПараметры.Вставить( - Прав(ПеременнаяСреды.Ключ, СтрДлина(ПеременнаяСреды.Ключ) - СтрДлина(Префикс)), - ПеременнаяСреды.Значение - ); + КонецЦикла; - КонецЕсли; + Результат = Новый Соответствие; - КонецЦикла; + Если ПустаяСтрока(Префикс) Тогда + Результат = ПрочитанныеПараметры; + Иначе + + Для каждого ПеременнаяСреды Из ПрочитанныеПараметры Цикл + + Если СтрНачинаетсяС(ПеременнаяСреды.Ключ, Префикс) Тогда + Сообщить(Прав(ПеременнаяСреды.Ключ, СтрДлина(ПеременнаяСреды.Ключ) - СтрДлина(Префикс))); + Результат.Вставить( + Прав(ПеременнаяСреды.Ключ, СтрДлина(ПеременнаяСреды.Ключ) - СтрДлина(Префикс)), + ПеременнаяСреды.Значение + ); + + КонецЕсли; + + КонецЦикла; + + КонецЕсли; - Возврат ПрочитанныеПараметры; + Возврат Результат; КонецФункции diff --git "a/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" "b/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" index 8ccd0bc..4e65981 100644 --- "a/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" +++ "b/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262ENV.os" @@ -6,7 +6,7 @@ // Дано - УстановитьПеременнуюСреды("TestConfigorEnv", "ТестЗначение", РасположениеПеременнойСреды.Процесс); + УстановитьПеременнуюСреды("Test__Configor_Env", "ТестЗначение", РасположениеПеременнойСреды.Процесс); // Когда @@ -18,7 +18,7 @@ // Тогда - Ожидаем.Что(МенеджерПараметров.Параметр("TestConfigorEnv")).Равно("ТестЗначение"); + Ожидаем.Что(МенеджерПараметров.Параметр("Test_Configor.Env")).Равно("ТестЗначение"); КонецПроцедуры @@ -27,18 +27,18 @@ // Дано - УстановитьПеременнуюСреды("Test_ConfigorEnv", "ТестЗначение", РасположениеПеременнойСреды.Процесс); + УстановитьПеременнуюСреды("Test_Configor__Env", "ТестЗначение", РасположениеПеременнойСреды.Процесс); // Когда МенеджерПараметров = Новый МенеджерПараметров(); - МенеджерПараметров.ДобавитьПровайдерПараметров(Новый ПровайдерПараметровENV("Test_")); + МенеджерПараметров.ДобавитьПровайдерПараметров(Новый ПровайдерПараметровENV("Test.")); МенеджерПараметров.Прочитать(); // Тогда - Ожидаем.Что(МенеджерПараметров.Параметр("ConfigorEnv")).Равно("ТестЗначение"); + Ожидаем.Что(МенеджерПараметров.Параметр("Configor_Env")).Равно("ТестЗначение"); КонецПроцедуры From 49ec98f226cf74bc84959b612519ad8fbb9c3708 Mon Sep 17 00:00:00 2001 From: sfaqer Date: Thu, 28 Mar 2024 10:15:52 +1000 Subject: [PATCH 6/7] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D0=B0=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B8=20=D1=87=D1=82=D0=B5=D0=BD=D0=B8=D0=B8=20?= =?UTF-8?q?=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA=20=D0=B8=D0=B7?= =?UTF-8?q?=20=D0=BD=D0=B5=D1=81=D0=BA=D0=BE=D0=BB=D1=8C=D0=BA=D0=B8=D1=85?= =?UTF-8?q?=20=D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3=D1=83=D1=80=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D0=BE=D0=BD=D0=BD=D1=8B=D1=85=20=D1=84=D0=B0=D0=B9=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2,=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=82=D0=B5=D1=81=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packagedef | 5 +- ...20\265\321\202\321\200\320\276\320\262.os" | 4 +- ...5\321\202\321\200\320\276\320\262_test.os" | 91 ++++++++++++++++--- 3 files changed, 82 insertions(+), 18 deletions(-) diff --git a/packagedef b/packagedef index 5a49778..103ca2f 100644 --- a/packagedef +++ b/packagedef @@ -4,7 +4,7 @@ // Описание.Имя("configor") - .Версия("0.8.1") + .Версия("0.8.2") .Автор("Khorev Aleksey") .АдресАвтора("Khorevaa@gmail.com") .Описание("Библиотека для работы с конфигурационными файлами в формате json, yaml") @@ -20,6 +20,9 @@ .ЗависитОт("notify", "0.2.0") .ЗависитОт("tempfiles") .ЗависитОт("reflector", "0.3.1") + .РазработкаЗависитОт("coverage", "0.6.1") + .РазработкаЗависитОт("1testrunner", "1.8.0") + .РазработкаЗависитОт("1bdd", "1.14.0") .ОпределяетКласс("МенеджерПараметров", "src/Классы/МенеджерПараметров.os") .ОпределяетКласс("КонструкторПараметров", "src/Классы/КонструкторПараметров.os") ; diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\271\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\271\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262.os" index 52d7003..7778d46 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\271\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\244\320\260\320\271\320\273\320\276\320\262\321\213\320\271\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262.os" @@ -202,9 +202,9 @@ Иначе - ФункцияОбработки = Новый ОписаниеОповещения("ОбработчикВыполненияЧтениеФайловогоПровайдера", ЭтотОбъект); КоллекцияФайловПараметров.ДляКаждого( - "КаталогПоиска -> ВыполнитьЧтениеФайловогоПровайдера(КаталогПоиска.ИмяФайла());" + "КаталогПоиска -> ВыполнитьЧтениеФайловогоПровайдера(КаталогПоиска.ИмяФайла());", + ЭтотОбъект ); КонецЕсли; diff --git "a/tests/\320\234\320\265\320\275\320\265\320\264\320\266\320\265\321\200\320\247\321\202\320\265\320\275\320\270\321\217\320\277\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262_test.os" "b/tests/\320\234\320\265\320\275\320\265\320\264\320\266\320\265\321\200\320\247\321\202\320\265\320\275\320\270\321\217\320\277\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262_test.os" index 5dc187c..46a9b78 100644 --- "a/tests/\320\234\320\265\320\275\320\265\320\264\320\266\320\265\321\200\320\247\321\202\320\265\320\275\320\270\321\217\320\277\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262_test.os" +++ "b/tests/\320\234\320\265\320\275\320\265\320\264\320\266\320\265\321\200\320\247\321\202\320\265\320\275\320\270\321\217\320\277\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262_test.os" @@ -4,23 +4,9 @@ #Использовать tempfiles #Использовать json -Перем юТест; Перем Лог; -Функция ПолучитьСписокТестов(Знач Тестирование) Экспорт - - юТест = Тестирование; - - ИменаТестов = Новый Массив; - - ИменаТестов.Добавить("ТестДолжен_ПроверитьПолучениеПараметровИзИндекса"); - ИменаТестов.Добавить("ТестДолжен_ПроверитьВыгрузкуПараметровВКласс"); - ИменаТестов.Добавить("ТестДолжен_ПроверитьПоискИЧтениеФайлаПараметров"); - - Возврат ИменаТестов; - -КонецФункции - +&Тест Процедура ТестДолжен_ПроверитьПолучениеПараметровИзИндекса() Экспорт ТестовыеСлучаи = Новый Массив; @@ -68,6 +54,7 @@ КонецПроцедуры +&Тест Процедура ТестДолжен_ПроверитьВыгрузкуПараметровВКласс() Экспорт МенеджерПараметров = Новый МенеджерПараметров(); @@ -106,6 +93,7 @@ КонецПроцедуры +&Тест Процедура ТестДолжен_ПроверитьПоискИЧтениеФайлаПараметров() Экспорт МенеджерПараметров = Новый МенеджерПараметров(); @@ -148,6 +136,79 @@ КонецПроцедуры +&Тест +Процедура ТестДолжен_ПроверитьПоискИЧтениеНесколькихФайловПараметров() Экспорт + + ПарсерJSON = Новый ПарсерJSON; + + МенеджерПараметров = Новый МенеджерПараметров(); + + ВременныйКаталог = ВременныеФайлы.СоздатьКаталог(); + + СтруктураПараметров = Новый Структура("version, ПараметрСтрока, ПараметрЧисло, ПараметрМассив, ПараметрСтруктура, ПараметрСоответствие", + "1.0", + "ПростоСтрока", + 10, + ПолучитьНовыйМассив("Элемент1, Элемент2"), + Новый Структура("Строка, Число, Массив, Структура, Соответствие", + "ПростоСтрока", + 10, + ПолучитьНовыйМассив("Элемент1, Элемент2"), + Новый Структура("Строка, Строка2", "ЗначениеСтруктуры", "ЗначениеСтруктуры2"), + ПолучитьСоответствие("КлючВнутри1, КлючВнутри2", "Значение1, Значение2") + ), + ПолучитьСоответствие("Ключ1, Ключ2", "Значение1, Значение2") + ); + + ТекстФайлаПроверки = ПарсерJSON.ЗаписатьJSON(СтруктураПараметров); + + ТестовыйФайл = ПодготовитьТестовыйФайл(ТекстФайлаПроверки); + + ТестовоеИмя = "config"; + ТестовоеРасширение = ".json"; + + КопироватьФайл(ТестовыйФайл, ОбъединитьПути(ВременныйКаталог, ТестовоеИмя + ТестовоеРасширение)); + + МенеджерПараметров.АвтоНастройка(ТестовоеИмя); + + СтруктураПараметров = Новый Структура("version, ПараметрСтрока, ПараметрЧисло, ПараметрМассив, ПараметрСтруктура, ПараметрСоответствие", + "1.0", + "ПростоСтрока", + 10, + ПолучитьНовыйМассив("Элемент3"), + Новый Структура("Строка, Число, Массив, Структура, Соответствие", + "ПростоСтрока", + 10, + ПолучитьНовыйМассив("Элемент3"), + Новый Структура("Строка, Строка2", "ЗначениеСтруктуры", "ЗначениеСтруктуры2"), + ПолучитьСоответствие("КлючВнутри1, КлючВнутри2", "Значение1, Значение2") + ), + ПолучитьСоответствие("Ключ1, Ключ2", "Значение1, Значение2") + ); + + ТекстФайлаПроверки = ПарсерJSON.ЗаписатьJSON(СтруктураПараметров); + + ТестовыйФайл = ПодготовитьТестовыйФайл(ТекстФайлаПроверки); + + ТестовоеИмя = "config2"; + ТестовоеРасширение = ".json"; + + КопироватьФайл(ТестовыйФайл, ОбъединитьПути(ВременныйКаталог, ТестовоеИмя + ТестовоеРасширение)); + + МенеджерПараметров.АвтоНастройка(ТестовоеИмя); + + НастройкаПоискаФайла = МенеджерПараметров.НастройкаПоискаФайла(); + НастройкаПоискаФайла.ДобавитьКаталогПоиска(ВременныйКаталог); + МенеджерПараметров.Прочитать(); + + Утверждения.ПроверитьРавенство(СтруктураПараметров.ПараметрМассив[0], МенеджерПараметров.Параметр("ПараметрМассив.0"), "Результат должен совпадать с ожиданиями."); + Утверждения.ПроверитьРавенство(СтруктураПараметров.ПараметрСтруктура.Массив[0], МенеджерПараметров.Параметр("ПараметрСтруктура.Массив.0"), "Результат должен совпадать с ожиданиями."); + Утверждения.ПроверитьРавенство(СтруктураПараметров.ПараметрСтруктура.Соответствие["КлючВнутри1"], МенеджерПараметров.Параметр("ПараметрСтруктура.Соответствие.КлючВнутри1"), "Результат должен совпадать с ожиданиями."); + + ВременныеФайлы.Удалить(); + +КонецПроцедуры + Функция ПолучитьНовыйМассив(ЗначенияМассив) Массив = Новый Массив(); From 535335a9fd8deeabedbba8a33ce848c731b66fcc Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Thu, 28 Mar 2024 05:06:41 +0100 Subject: [PATCH 7/7] Update qa.yml --- .github/workflows/qa.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 60b80e8..340d553 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -7,7 +7,7 @@ name: Контроль качества on: [push, pull_request] jobs: build: - if: github.repository == 'khorevaa/configor' + if: github.repository == 'oscript-library/configor' runs-on: ${{ matrix.os }} strategy: fail-fast: false