diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..1d2dc25 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,20 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "gradle" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "daily" + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + - package-ecosystem: "maven" + directory: "/" + schedule: + interval: "daily" + diff --git a/.github/workflows/publish-documentation.yaml b/.github/workflows/publish-documentation.yaml new file mode 100644 index 0000000..77d8b25 --- /dev/null +++ b/.github/workflows/publish-documentation.yaml @@ -0,0 +1,45 @@ +name: Publish documentation +on: + workflow_dispatch: + push: + branches: + - master + - develop + paths: + - 'docs/**' + - 'README.md' + - '.github/workflows/publish-documentation.yaml' +jobs: + publish: + name: Publish documentation to GitHub Pages + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Get latest GitHub Pages + run: | + wget https://github.com/${{ github.repository }}/archive/gh-pages.zip + unzip gh-pages.zip + mkdir public -p + cp -R ${GITHUB_REPOSITORY#*/}-gh-pages/. public + + - name: Copy master documentation + if: github.ref == 'refs/heads/master' + run: | + cp README.md public/ + cp -R docs public/ + - name: Copy develop documentation + if: github.ref == 'refs/heads/develop' + run: | + mkdir public/dev -p + cp README.md public/dev/ + cp -R docs public/dev/ + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3.9.3 + with: + deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} + publish_branch: gh-pages + publish_dir: ./public + enable_jekyll: true diff --git a/.github/workflows/publish-update-site.yaml b/.github/workflows/publish-update-site.yaml new file mode 100644 index 0000000..fa3c4e7 --- /dev/null +++ b/.github/workflows/publish-update-site.yaml @@ -0,0 +1,65 @@ +name: Publish update-site +on: + workflow_dispatch: + push: + branches: + - master + - develop + paths: + - 'viewer/**' + - 'templates/eclipse_project/**' + - '.github/workflows/publish-update-site.yaml' +jobs: + publish: + name: Publish update-site to GitHub Pages + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Setup JDK + uses: actions/setup-java@v3 + with: + java-version: '11' + distribution: 'liberica' + java-package: jdk+fx # нужен FX + architecture: x64 + cache: 'maven' + server-id: dt_repository # реджестри пакетов 1С + server-username: ${{ secrets.MAVEN_USERNAME }} # храниться в секретах + server-password: ${{ secrets.MAVEN_CENTRAL_TOKEN }} # храниться в секретах в открытом виде + + - name: Get latest GitHub Pages + run: | + wget https://github.com/${{ github.repository }}/archive/gh-pages.zip + unzip gh-pages.zip + mkdir public -p + cp -R ${GITHUB_REPOSITORY#*/}-gh-pages/. public + + - name: Build master update site + if: github.ref == 'refs/heads/master' + run: | + export publication_location=../../../public/repository + + export MAVEN_OPTS= + ./gradlew download-lombok-plugin + export MAVEN_OPTS=-javaagent:target/lombok.jar=ECJ + ./gradlew publishPlugin + - name: Build develop update site + if: github.ref == 'refs/heads/develop' + run: | + export publication_location=../../../public/dev/repository + export site_label_suffix='DEV. ' + + export MAVEN_OPTS= + ./gradlew download-lombok-plugin + export MAVEN_OPTS=-javaagent:target/lombok.jar=ECJ + ./gradlew publishPlugin + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3.9.3 + with: + deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} + publish_branch: gh-pages + publish_dir: ./public + enable_jekyll: true diff --git a/.gitignore b/.gitignore index 1b293b1..ee4baa3 100644 --- a/.gitignore +++ b/.gitignore @@ -5,13 +5,14 @@ !/.idea/libraries/ !/.idea/runConfigurations/ !/.idea/copyright/ +!/.idea/codeStyles/ *.prefs /eclipse_project/workspace/ target/ bin/ build/ /.gradle/* -/gradle* +gradle.properties !/gradlew* *.hprof *.orig diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..7ffc512 --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,15 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..79ee123 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/libraries/projectlombok_lombok.xml b/.idea/libraries/projectlombok_lombok.xml new file mode 100644 index 0000000..db88773 --- /dev/null +++ b/.idea/libraries/projectlombok_lombok.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 87417b2..e0844bc 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,12 +1,5 @@ - - - diff --git a/.idea/modules.xml b/.idea/modules.xml index 975b679..26e65c6 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -3,9 +3,6 @@ - - - \ No newline at end of file diff --git a/README.md b/README.md index dc667e1..1ec6505 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,7 @@ * Позволяет запускать и отлаживать тесты написанные на языке 1С:Предприятия. * Просматривать результаты выполнения * Поддерживает работу с тестовым движком [YAXUnit](https://github.com/bia-technologies/yaxunit), который используется для разработки и исполнения тестов. +* [И другие функции](docs/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B8.md) Для начала использования вам необходимо: diff --git a/build.gradle.kts b/build.gradle.kts index 0ad7d2e..6b647c8 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ plugins { } group = "ru.biatech.edt.xtest" -version = "22.10.0" +version = "23.04.0" val vendor = "BIA-Technologies Limited Liability Company" val createProjectYear = 2021 val licenseYear = if (Calendar.getInstance().get(Calendar.YEAR) == createProjectYear) "$createProjectYear" @@ -19,6 +19,7 @@ val pluginBuildPath = layout.buildDirectory.dir("buildPlugin").get().asFile val publishTo = (findProperty("publishTo") ?: "").toString() var subProjects = arrayOf("viewer") +val mvnCommand = if (Os.isFamily(Os.FAMILY_WINDOWS)) "mvn.cmd" else "mvn" repositories { mavenCentral() @@ -91,34 +92,39 @@ tasks.register("buildPlugin-copyFiles") { group = "build" } -tasks.register("buildPlugin") { - isIgnoreExitValue = true +tasks.register("download-lombok-plugin") { workingDir = pluginBuildPath standardOutput = System.out - environment("MAVEN_OPTS", "-Dhttps.protocols=TLSv1.2") - - if (Os.isFamily(Os.FAMILY_WINDOWS)) { - commandLine("mvn.cmd", "dependency:resolve", "package") - } else { - commandLine("mvn", "dependency:resolve", "package") - } + environment("MAVEN_OPTS", "") + commandLine(mvnCommand, "clean", "dependency:copy@get-lombok") + group = "build" dependsOn(tasks.named("buildPlugin-copyFiles")) +} + +tasks.register("buildPlugin") { + workingDir = pluginBuildPath + standardOutput = System.out + + environment("MAVEN_OPTS", "-javaagent:target/lombok.jar=ECJ -Dhttps.protocols=TLSv1.2") + commandLine(mvnCommand, "dependency:resolve", "package") + + dependsOn(tasks.named("download-lombok-plugin")) group = "build" } tasks.register("publishToPath") { - doFirst{ - if(publishTo==""){ + doFirst { + if (publishTo == "") { throw GradleException("You must specify a property 'publishTo' for the publish task is 'gradle.properties'") } } - from("$pluginBuildPath/repositories/repository/target/repository"){ + from("$pluginBuildPath/repositories/repository/target/repository") { into("$version") into("latest") } - from("$pluginBuildPath/repositories/repository/target/repository.zip"){ + from("$pluginBuildPath/repositories/repository/target/repository.zip") { into("$version") into("latest") } @@ -126,11 +132,23 @@ tasks.register("publishToPath") { group = "publish" dependsOn(tasks.named("buildPlugin")) - doLast{ + doLast { print("Published to: $publishTo") } } +tasks.register("publishPlugin") { + isIgnoreExitValue = true + workingDir = pluginBuildPath + standardOutput = System.out + + val ghPagesPath = layout.buildDirectory.dir("buildPlugin").get().asFile + commandLine(mvnCommand, "dependency:resolve", "deploy", "-Prelease-composite") + + dependsOn(tasks.named("buildPlugin-copyFiles")) + group = "build" +} + tasks.wrapper { distributionType = Wrapper.DistributionType.BIN gradleVersion = "7.1.1" diff --git a/docs/images/auto-update.png b/docs/images/auto-update.png new file mode 100644 index 0000000..fd24823 Binary files /dev/null and b/docs/images/auto-update.png differ diff --git a/docs/images/goto-referenced-method.png b/docs/images/goto-referenced-method.png new file mode 100644 index 0000000..bbdcf7b Binary files /dev/null and b/docs/images/goto-referenced-method.png differ diff --git a/docs/images/install-from-rep.png b/docs/images/install-from-rep.png new file mode 100644 index 0000000..f8b7902 Binary files /dev/null and b/docs/images/install-from-rep.png differ diff --git a/docs/images/module-launch-test.png b/docs/images/module-launch-test.png new file mode 100644 index 0000000..11ad6d1 Binary files /dev/null and b/docs/images/module-launch-test.png differ diff --git a/docs/images/report.png b/docs/images/report.png new file mode 100644 index 0000000..8314a49 Binary files /dev/null and b/docs/images/report.png differ diff --git "a/docs/\320\241\321\205\320\265\320\274\320\260 \320\275\320\260\320\270\320\274\320\265\320\275\320\276\320\262\320\260\320\275\320\270\321\217.md" "b/docs/\320\241\321\205\320\265\320\274\320\260 \320\275\320\260\320\270\320\274\320\265\320\275\320\276\320\262\320\260\320\275\320\270\321\217.md" new file mode 100644 index 0000000..10ddffd --- /dev/null +++ "b/docs/\320\241\321\205\320\265\320\274\320\260 \320\275\320\260\320\270\320\274\320\265\320\275\320\276\320\262\320\260\320\275\320\270\321\217.md" @@ -0,0 +1,39 @@ +# Схема наименования + +## Схема наименования модулей + +Все тесты должны располагаться в общих модулях. + +Имя тестового модуля должно соответствовать шаблону `[Префикс типа объекта_][Имя проверяемого объект]{_Суффикс типа модуля}`, где суффикс не обязателен, но крайне желателен. + +По правильно названному модулю мы можем с легкостью получить информацию о типе тестируемого объекта и его имени, а также тип его модуля, методы которого проверяем. Список поддерживаемых суффиксов и префиксов приведен в таблицах ниже. + +### Префиксы типов объекта + +| Тип тестируемого объекта | Префикс | Пример | +| ------------------------ | ------- | ------------------------------------------- | +| Общий модуль | ОМ_ | ОМ_ОбщегоНазначения | +| Регистр бухгалтерии | РБ_ | РБ_Хозрасчетный, РБ_Хозрасчетный_НЗ | +| Регистр накопления | РН_ | РН_ОстаткиНаСкладах, РН_ОстаткиНаСкладах_ММ | +| Регистр расчета | РР_ | РР_Зарплата, РР_Зарплата_НЗ | +| Регистр сведений | РС_ | РС_АдресныйКлассификатор | +| Бизнес процесс | БП_ | БП_Согласование | +| Справочник | Спр_ | Спр_Пользователи, Спр_Пользователи_МО | +| План счетов | ПС_ | ПС_Хозрасчетный | +| План видов расчета | ПВР_ | ПВР_Зарплатный | +| План видов характеристик | ПВХ_ | ПВХ_Субконто, ПВХ_Субконто_ММ | +| Документ | Док_ | Док_ПКО | +| Перечисление | Пер_ | Пер_СтатусСогласования | +| План обмена | ПО_ | ПО_РИБ, ПО_РИБ_ММ | +| Задача | Зад_ | Зад_Задача | +| Обработка | Обр_ | Обр_ЗакрытиеМесяца, Обр_ЗакрытиеМесяца_МО | +| Отчет | Отч_ | Отч_УниверсальныйОтчет | + +### Суффиксы типов модулей + +| Тип тестируемого модуля | Суффикс | Пример | +| ----------------------- | -------------- | ------------------------------------------ | +| Общий модуль | <Без суффикса> | ОМ_ОбщегоНазначения | +| Модуль объекта | _МО | Спр_Пользователи_МО, Обр_ЗакрытиеМесяца_МО | +| Модуль менеджера | _ММ | ПВХ_Субконто_ММ, ПО_РИБ_ММ | +| Модуль набора записей | _НЗ | РБ_Хозрасчетный_НЗ, РР_Зарплата_НЗ | diff --git "a/docs/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260.md" "b/docs/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260.md" index 5ca85e6..0192f1a 100644 --- "a/docs/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260.md" +++ "b/docs/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260.md" @@ -1,5 +1,24 @@ # Установка плагина в EDT (Eclipse) +## Установка из p2 репозитория + +1. Открываем EDT. Переходим к `Установить новое ПО` (в меню `Справка`) +2. Добавляем новый репозиторий, если еще не добавляли + * `https://bia-technologies.github.io/edt-test-runner/repository` - Основной репозиторий + * `https://bia-technologies.github.io/edt-test-runner/dev/repository` - Репозиторий develop + ![Выбираем репозиторий](images/install-from-rep.png) +3. Для ускорения установки можно убрать галочку "Обращаться во время инсталляции ко всем сайтам ..." +4. Нажимаем далее +5. Принимаем лицензию +6. Соглашаемся с предупреждением безопасности (может выглядеть иначе) + ![Соглашаемся с предупреждением безопасности](images/confirm-warning.png) +7. И перезагружаем IDE +8. В дальнейшем вы сможете автоматически получать обновления плагина +9. Также можно настроить автоматическую проверку обновлений (`Справка` -> `Проверить обновления`) + ![Автообновление](images/auto-update.png) + +## Установка оффлайн + 1. [Скачиваем](https://github.com/bia-technologies/edt-test-runner/releases) архив последней версии 2. Переходим в EDT, устанавливаем новое ПО ![Выбираем репозиторий](images/select-repository.png) diff --git "a/docs/\320\244\321\203\320\275\320\272\321\206\320\270\320\270.md" "b/docs/\320\244\321\203\320\275\320\272\321\206\320\270\320\270.md" new file mode 100644 index 0000000..b5ad598 --- /dev/null +++ "b/docs/\320\244\321\203\320\275\320\272\321\206\320\270\320\270.md" @@ -0,0 +1,41 @@ +# Функции плагина + +## Запуск тестов + +В первую очередь, плагин предоставляет новую конфигурацию запуска, позволяя указать настройки запуска тестов. + +![Расширение и конфигурация запуска](images/launch-type-and-extension.png) + +После создания конфигурация запуска тестов, появляется возможность запустить выполнение тестов, используя стандартное меню EDT _(также как и 1С:Предприятие)_. + +Кроме конфигурации запуска тестов, плагин добавляет команды запуска тестова для конкретных методов, а также тестовых модулей. +Справа от имени каждого тестового метода появляется кнопка запуска, запускающая этот тест или все тесты модуля _(если выполнить запуск тестова для метода `ИсполняемыеСценарии`)_. + +Для удобства, эти команды продублированы в контекстное меню на панеле "Схема модуля". + +![Команды запуска теста](images/module-launch-test.png) + +## Отчет о тестировании + +По окончании тестирования плагин выводит отчет в котором детально отображается список пройденных тестов, статус их прохождения и информация о возникших ошибках. + +![Отчет](images/report.png) + +Отчет позволяет: + +* Получить информацию о результате тестирования; +* Перезапустить тесты _(упавшие, все или выбранные)_; +* Посмотреть историю тестовых прогонов; +* Перейти к тесту и тестируемому методу; +* Просмотреть стек ошибки и перейти к месту их возникновения; +* Увидеть различие ожидаемого и фактического значения. + +## Навигация между тестом и тестируемым методом + +При написании тестов часто требуется быстро переходить от теста к тестируемому методу и обратно. Для этого добавлена команда `Перейти к тесту/тестируемому методу`, расположенная в контекстном меню редактора, схеме модуля и в отчете. + +Команда позволяет перейти к связанному тесту, если вы находитесь модуле конфигурации и к тестируемому методу, если в модуле с тестами. + +Для того, чтобы переходы работали модули должны придерживаться [схемы наименования](Схема%20наименования.md). + +![Команды переходов](images/goto-referenced-method.png) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..41d9927 Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..05679dc --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew old mode 100644 new mode 100755 diff --git a/make-eclipse-project b/make-eclipse-project old mode 100644 new mode 100755 index 5ff661d..9617b4e --- a/make-eclipse-project +++ b/make-eclipse-project @@ -9,6 +9,4 @@ cp -r $TEMPLATE_PATH/* $PROJECT_PATH cd $PROJECT_PATH/bundles/ -foreach BUNDLE_NAME ("viewer") - ln -rsf ../../../$BUNDLE_NAME $BUNDLE_NAME -end \ No newline at end of file +ln -rsf ../../../viewer viewer \ No newline at end of file diff --git a/make-eclipse-project.bat b/make-eclipse-project.bat index 5ff470b..bf7c7a1 100644 --- a/make-eclipse-project.bat +++ b/make-eclipse-project.bat @@ -7,7 +7,7 @@ ECHO Copy project template xcopy .\templates\eclipse_project .\dev\eclipse_project /Y /S /E ECHO Make source symlinks cd .\dev\eclipse_project\bundles\ -for %%s in ("launcher" "viewer") do ( +for %%s in ("viewer") do ( ECHO ============%%s============ ECHO %tab%remove %%s RMDIR %%s /S /Q diff --git a/templates/eclipse_project/bom/pom.xml b/templates/eclipse_project/bom/pom.xml index cc57f4a..346c04b 100644 --- a/templates/eclipse_project/bom/pom.xml +++ b/templates/eclipse_project/bom/pom.xml @@ -2,7 +2,7 @@ + ${env.publication_location} + ${publication-site-location}/releases + ${releases-directory}/${qualifiedVersion} + + ${env.site_label_suffix}EDT Test Runner Repository + 1.18.16 + + + org.projectlombok + lombok + ${lombok.version} + provided + + + @@ -66,7 +86,7 @@ ru.biatech.edt.xtest default - 22.10.0-SNAPSHOT + 23.04.0-SNAPSHOT @@ -110,18 +130,23 @@ UTF-8 true - true + false true true true - true - - - -Xlint:all - -Xlint:serial - -Xlint:serial - + + + org.codehaus.plexus + plexus-compiler-eclipse + 2.8.6 + + + org.projectlombok + lombok + ${lombok.version} + + org.eclipse.tycho @@ -157,8 +182,11 @@ tycho-packaging-plugin ${tycho.version} - 'v'yyyyMMddHHmm - + ${qualifier} + + false + + org.eclipse.tycho @@ -206,7 +234,125 @@ - + + org.eclipse.m2e + lifecycle-mapping + 1.0.0 + + + + + + + org.apache.maven.plugins + + + maven-clean-plugin + + + [2.5,) + + + clean + + + + + + + + + + org.codehaus.mojo + + + build-helper-maven-plugin + + + [1.9.1,) + + + add-resource + add-source + add-test-resource + add-test-source + + + + + + + + + + org.eclipse.tycho + + + tycho-compiler-plugin + + + [0.23.1,) + + + compile + + + + + + + + + + org.eclipse.tycho + + + tycho-packaging-plugin + + + [0.23.1,) + + + build-qualifier + build-qualifier-aggregator + validate-id + validate-version + + + + + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.1.1 + + + get-lombok + + copy + + + + + org.projectlombok + lombok + ${lombok.version} + jar + ${project.build.directory} + lombok.jar + + + + + + + @@ -294,5 +440,33 @@ + + + release-composite + + false + + + + + + maven-install-plugin + + + default-install + none + + + + + maven-deploy-plugin + + true + + + + + + diff --git a/templates/eclipse_project/bundles/pom.xml b/templates/eclipse_project/bundles/pom.xml index 70c9906..c1d62ef 100644 --- a/templates/eclipse_project/bundles/pom.xml +++ b/templates/eclipse_project/bundles/pom.xml @@ -2,7 +2,7 @@ - - + + @@ -26,8 +26,6 @@ - - @@ -38,98 +36,74 @@ + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -139,30 +113,68 @@ + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/templates/eclipse_project/targets/default/pom.xml b/templates/eclipse_project/targets/default/pom.xml index 084a97c..687c3e9 100644 --- a/templates/eclipse_project/targets/default/pom.xml +++ b/templates/eclipse_project/targets/default/pom.xml @@ -2,7 +2,7 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/templates/eclipse_project/targets/dev/pom.xml b/templates/eclipse_project/targets/dev/pom.xml index 52b7f5f..f6e89f3 100644 --- a/templates/eclipse_project/targets/dev/pom.xml +++ b/templates/eclipse_project/targets/dev/pom.xml @@ -2,7 +2,7 @@ + + + + + + diff --git a/templates/eclipse_project/update-site/packaging-p2composite.ant b/templates/eclipse_project/update-site/packaging-p2composite.ant new file mode 100644 index 0000000..7fe355e --- /dev/null +++ b/templates/eclipse_project/update-site/packaging-p2composite.ant @@ -0,0 +1,181 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + version=1 +metadata.repository.factory.order=compositeContent.xml,\! +artifact.repository.factory.order=compositeArtifacts.xml,\! + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/templates/eclipse_project/update-site/pom.xml b/templates/eclipse_project/update-site/pom.xml new file mode 100644 index 0000000..329569b --- /dev/null +++ b/templates/eclipse_project/update-site/pom.xml @@ -0,0 +1,146 @@ + + + + 4.0.0 + + + ru.biatech.edt.xtest + parent + 23.04.0-SNAPSHOT + + + update-site + eclipse-repository + + + + release-composite + + false + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + + parse-version + + parse-version + + + + + + maven-resources-plugin + + + copy-repository + package + + copy-resources + + + ${current-release-directory} + + + ${project.build.directory}/repository + + + + + + + + org.eclipse.tycho.extras + tycho-eclipserun-plugin + + + + ${eclipse-version} + p2 + https://download.eclipse.org/releases/${eclipse-version} + + + + + org.eclipse.ant.core + eclipse-plugin + + + org.apache.ant + eclipse-plugin + + + org.eclipse.equinox.p2.repository.tools + eclipse-plugin + + + org.eclipse.equinox.p2.core.feature + eclipse-feature + + + org.eclipse.equinox.p2.extras.feature + eclipse-feature + + + org.eclipse.equinox.ds + eclipse-plugin + + + + + + + add-p2-composite-repository + package + + eclipse-run + + + + -application + org.eclipse.ant.core.antRunner + -buildfile + packaging-p2composite.ant + p2.composite.add + -Dsite.label="${site.label}" + -Dcomposite.base.dir=${publication-site-location} + -DunqualifiedVersion=${unqualifiedVersion} + -DbuildQualifier=${buildQualifier} + -DparsedVersion.majorVersion=${parsedVersion.majorVersion} + -DparsedVersion.minorVersion=${parsedVersion.minorVersion} + + + + + + + + + + diff --git a/viewer/META-INF/MANIFEST.MF b/viewer/META-INF/MANIFEST.MF index 4b6dc16..388ff74 100644 --- a/viewer/META-INF/MANIFEST.MF +++ b/viewer/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: ru.biatech.edt.junit;singleton:=true Automatic-Module-Name: ru.biatech.edt.junit -Bundle-Version: 22.10.0.qualifier +Bundle-Version: 23.04.0.qualifier Bundle-Activator: ru.biatech.edt.junit.TestViewerPlugin Bundle-ActivationPolicy: lazy Bundle-Vendor: %providerName @@ -26,20 +26,27 @@ Require-Bundle: org.eclipse.ui.ide;bundle-version="[3.5.0,4.0.0)", org.eclipse.handly.xtext.ui;bundle-version="1.5.0", org.eclipse.xtext.ui.shared;bundle-version="2.24.0", com._1c.g5.v8.dt.bsl.ui;bundle-version="15.0.0", - com._1c.g5.v8.dt.bsl;bundle-version="19.0.0" + com._1c.g5.v8.dt.bsl;bundle-version="19.0.0", + org.apache.commons.lang3, + com._1c.g5.v8.dt.bsl.core;bundle-version="6.0.300", + org.eclipse.handly;bundle-version="1.5.0", + com._1c.g5.v8.dt.lcore;bundle-version="3.1.900" Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: com._1c.g5.v8.dt.bm.index.emf, com._1c.g5.v8.dt.bsl.model, + com._1c.g5.v8.dt.stacktraces.model, com._1c.g5.wiring, com.google.common.base, com.google.gson;version="2.8.2", javax.xml.parsers, - org.apache.commons.lang3.concurrent;version="3.3.0", + lombok;resolution:=optional, + lombok.experimental;resolution:=optional, org.eclipse.core.commands, org.eclipse.core.runtime, org.eclipse.debug.core, org.eclipse.debug.ui, org.eclipse.emf.ecore, + org.eclipse.jface, org.eclipse.swt, org.eclipse.ui, org.osgi.framework, diff --git a/viewer/build.properties b/viewer/build.properties index 1852ed1..5fd85a1 100644 --- a/viewer/build.properties +++ b/viewer/build.properties @@ -1,6 +1,6 @@ ################################################################################ # Copyright (c) 2000, 2011 IBM Corporation and others. -# Copyright (c) 2021-2022 BIA-Technologies Limited Liability Company. +# Copyright (c) 2021-2023 BIA-Technologies Limited Liability Company. # # This program and the accompanying materials # are made available under the terms of the Eclipse Public License 2.0 @@ -17,10 +17,12 @@ javacCustomEncodings..=src/[UTF-8] source..=src/main/java/ -bin.includes=META-INF/,\ +bin.includes = META-INF/,\ .,\ icons/,\ plugin.xml,\ plugin.properties,\ - plugin_ru.properties -src.includes=schema/ + plugin_ru.properties,\ + resources/ +src.includes = schema/,\ + resources/ diff --git a/viewer/icons/full/elcl16/under_test.png b/viewer/icons/full/elcl16/under_test.png new file mode 100644 index 0000000..513c2ed Binary files /dev/null and b/viewer/icons/full/elcl16/under_test.png differ diff --git a/viewer/icons/full/elcl16/under_test@2x.png b/viewer/icons/full/elcl16/under_test@2x.png new file mode 100644 index 0000000..ba87601 Binary files /dev/null and b/viewer/icons/full/elcl16/under_test@2x.png differ diff --git a/viewer/icons/full/eview16/juniterrq.png b/viewer/icons/full/eview16/juniterrq.png deleted file mode 100644 index 0e27732..0000000 Binary files a/viewer/icons/full/eview16/juniterrq.png and /dev/null differ diff --git a/viewer/icons/full/eview16/juniterrq@2x.png b/viewer/icons/full/eview16/juniterrq@2x.png deleted file mode 100644 index 1cfa02c..0000000 Binary files a/viewer/icons/full/eview16/juniterrq@2x.png and /dev/null differ diff --git a/viewer/icons/full/eview16/junitsuccq.png b/viewer/icons/full/eview16/junitsuccq.png deleted file mode 100644 index a3264e3..0000000 Binary files a/viewer/icons/full/eview16/junitsuccq.png and /dev/null differ diff --git a/viewer/icons/full/eview16/junitsuccq@2x.png b/viewer/icons/full/eview16/junitsuccq@2x.png deleted file mode 100644 index 9d74379..0000000 Binary files a/viewer/icons/full/eview16/junitsuccq@2x.png and /dev/null differ diff --git a/viewer/icons/full/eview16/logo.png b/viewer/icons/full/eview16/logo.png new file mode 100644 index 0000000..c822b01 Binary files /dev/null and b/viewer/icons/full/eview16/logo.png differ diff --git a/viewer/icons/full/eview16/logo@2x.png b/viewer/icons/full/eview16/logo@2x.png new file mode 100644 index 0000000..436ba46 Binary files /dev/null and b/viewer/icons/full/eview16/logo@2x.png differ diff --git a/viewer/icons/full/eview16/referring.png b/viewer/icons/full/eview16/referring.png new file mode 100644 index 0000000..f5c4d9f Binary files /dev/null and b/viewer/icons/full/eview16/referring.png differ diff --git a/viewer/icons/full/eview16/referring@2x.png b/viewer/icons/full/eview16/referring@2x.png new file mode 100644 index 0000000..2a86a6c Binary files /dev/null and b/viewer/icons/full/eview16/referring@2x.png differ diff --git a/viewer/icons/full/eview16/stackframe.png b/viewer/icons/full/eview16/stackframe.png deleted file mode 100644 index cffa1aa..0000000 Binary files a/viewer/icons/full/eview16/stackframe.png and /dev/null differ diff --git a/viewer/icons/full/eview16/stackframe@2x.png b/viewer/icons/full/eview16/stackframe@2x.png deleted file mode 100644 index 3f880c5..0000000 Binary files a/viewer/icons/full/eview16/stackframe@2x.png and /dev/null differ diff --git a/viewer/icons/full/obj16/error.png b/viewer/icons/full/obj16/error.png new file mode 100644 index 0000000..23189b6 Binary files /dev/null and b/viewer/icons/full/obj16/error.png differ diff --git a/viewer/icons/full/obj16/error@2x.png b/viewer/icons/full/obj16/error@2x.png new file mode 100644 index 0000000..e06bd2c Binary files /dev/null and b/viewer/icons/full/obj16/error@2x.png differ diff --git a/viewer/icons/full/obj16/target.png b/viewer/icons/full/obj16/target.png new file mode 100644 index 0000000..86fa15d Binary files /dev/null and b/viewer/icons/full/obj16/target.png differ diff --git a/viewer/icons/full/obj16/target@2x.png b/viewer/icons/full/obj16/target@2x.png new file mode 100644 index 0000000..20897eb Binary files /dev/null and b/viewer/icons/full/obj16/target@2x.png differ diff --git a/viewer/plugin.properties b/viewer/plugin.properties index 5aea9be..b8572ff 100644 --- a/viewer/plugin.properties +++ b/viewer/plugin.properties @@ -1,6 +1,6 @@ ################################################################################ # Copyright (c) 2000, 2019 IBM Corporation and others. -# Copyright (c) 2022 BIA-Technologies Limited Liability Company. +# Copyright (c) 2022-2023 BIA-Technologies Limited Liability Company. # # This program and the accompanying materials # are made available under the terms of the Eclipse Public License 2.0 @@ -16,16 +16,11 @@ # BIA-Technologies LLC - adaptation for EDT ################################################################################# -pluginName=1C\:Enterprise Development Tools JUnit support -providerName=BIA Technologies LLC testRunListeners.name=Test Run Listeners -junitLaunchConfigs.name=1C:Unit Launch Configurations -testKinds.name=1C:Unit Test Kinds RunJUnitLaunchShortcut.description=Runs a set of 1C:Unit tests DebugJUnitLaunchShortcut.description=Debugs a set of 1C:Unit tests preferenceKeywords.general=Java 1C:Unit filter stack trace stacktrace preferenceKeywords.wizards.java=Java -View.label=1C:Unit Launch.label=1C:Unit PreferencePage.label=1C:Unit FailureTraceFont.label=1C:Unit failure trace font @@ -39,25 +34,35 @@ WizardCategory.name=1C:Unit TestCaseWizard.name=1C:Unit Test Case (method) TestSuiteWizard.name=1C:Unit Test Suite (module) JUnitShortcut.label=1C:Unit Test -JUnitShortcut.description.run=Run 1C:Unit Test -JUnitShortcut.description.debug=Debug 1C:Unit Test JUnitShortcut.description.rerunLast=Rerun 1C:Unit Test JUnitShortcut.description.rerunFailedFirst=Rerun 1C:Unit Test - Failures First searchMenu.label=Se&arch JUnitTabGroupDescription.debug=Create a configuration that will launch a 1C:Unit test in debug mode. JUnitTabGroupDescription.run=Create a configuration that will launch a 1C:Unit test. JUnitActionSet.label=1C:Unit -GotoTestAction.label=Referring &Tests... -GotoTestAction.tooltip=Go to Test Referring to Selection -GotoTestCommand.name=Referring Tests -GotoTestCommand.description=Referring Tests + ViewCommand.junitView.name=1C:Unit ViewCommand.junitView.description=1C:Unit + RenameTypeParticipant.name=1C:Unit Launch configuration participant junitRenameParticipant=1C:Unit Project Rename Participant -testKind.yaxunit=YAXUnit JUnitContainerName=1C:Unit -classpathVariableInitializer.deprecated.JUNIT_HOME=Use the 1C:Unit library instead -classpathVariableInitializer.deprecated.JUNIT_SRC_HOME=Use the 1C:Unit library instead JUnitView.editor.name=1C:Unit View -JUnitTestResult.content-type.name=1C:Unit Test Result \ No newline at end of file +JUnitTestResult.content-type.name=1C:Unit Test Result + +# USED +pluginName=1C\:Enterprise Development Tools JUnit support +providerName=BIA Technologies LLC + +View.label=1C:Unit + +junitLaunchConfigs.name=1C:Unit Launch Configurations + +GotoTestAction.label=Referring &Tests... +GotoTestAction.tooltip=Go to Test Referring to Selection + +JUnitShortcut.description.run=Run 1C:Unit Test +JUnitShortcut.description.debug=Debug 1C:Unit Test + +testKinds.name=1C:Unit Test Kinds +testKind.yaxunit=YAXUnit diff --git a/viewer/plugin.xml b/viewer/plugin.xml index 367b762..961e482 100644 --- a/viewer/plugin.xml +++ b/viewer/plugin.xml @@ -1,7 +1,7 @@ - - - - - - - - - - - - - - - - - - - - - - + class="ru.biatech.edt.junit.ui.editor.ruler.TestMethodMarker"> + class="ru.biatech.edt.junit.ui.editor.ruler.TestMethodActionDelegate" + icon="icons/full/etool16/run_exc.png" + id="ru.biatech.edt.junit.ui.editor.ruler.test.run" + label="Run test method" + menubarPath="debug"> @@ -376,4 +315,99 @@ class="ru.biatech.edt.junit.ui.UITestRunListener"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/viewer/plugin_ru.properties b/viewer/plugin_ru.properties index 11322b6..f32219c 100644 --- a/viewer/plugin_ru.properties +++ b/viewer/plugin_ru.properties @@ -1,5 +1,5 @@ ################################################################################ -# Copyright (c) 2022 BIA-Technologies Limited Liability Company. +# Copyright (c) 2022-2023 BIA-Technologies Limited Liability Company. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -16,5 +16,15 @@ pluginName=\u0422\u0435\u0441\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 1C:\u041F\u0440\u0435\u0434\u043F\u0440\u0438\u044F\u0442\u0438\u044F providerName=BIA Technologies LLC + +View.label=1C:\u041C\u043E\u0434\u0443\u043B\u044C\u043D\u044B\u0435 \u0442\u0435\u0441\u0442\u044B + junitLaunchConfigs.name=\u041C\u043E\u0434\u0443\u043B\u044C\u043D\u043E\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 1C:\u041F\u0440\u0435\u0434\u043F\u0440\u0438\u044F\u0442\u0438\u044F +GotoTestAction.label=\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043A &\u0442\u0435\u0441\u0442\u0443/\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043C\u043E\u043C\u0443 \u043C\u0435\u0442\u043E\u0434\u0443 +GotoTestAction.tooltip=\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043A \u0442\u0435\u0441\u0442\u0430\u043C \u043C\u0435\u0442\u043E\u0434\u0430 + +JUnitShortcut.description.run=\u0417\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u0442\u0435\u0441\u0442 +JUnitShortcut.description.debug=\u041E\u0442\u043B\u0430\u0434\u043A\u0430 \u0442\u0435\u0441\u0442\u0430 + +testKinds.name=\u0412\u0438\u0434\u044B 1\u0421:\u041C\u043E\u0434\u0443\u043B\u044C\u043D\u044B\u0435 \u0442\u0435\u0441\u0442\u044B diff --git a/viewer/pom.xml b/viewer/pom.xml index 7e8b417..daaf319 100644 --- a/viewer/pom.xml +++ b/viewer/pom.xml @@ -1,7 +1,7 @@