Skip to content

Commit 47638ca

Browse files
authored
OneUnit testing (autumn-library#100)
* feat: Улучшение CI/CD и интеграции с SonarQube Этот коммит улучшает конвейер CI/CD и интеграцию с SonarQube. В частности: * Обновляет рабочий процесс qa.yml для использования повторно используемого рабочего процесса для анализа SonarQube. * Обновляет рабочий процесс testing.yml для использования повторно используемого рабочего процесса тестирования. * Добавляет sonar.testExecutionReportPaths в sonar-project.properties для отчетности о выполнении тестов. * Добавляет &ВыключенДляOneScript(">=2") к тестам, которые не проходят на OneScript >= 2.
1 parent f28b6f0 commit 47638ca

File tree

4 files changed

+32
-74
lines changed

4 files changed

+32
-74
lines changed

.github/workflows/qa.yml

Lines changed: 15 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,18 @@
1-
# MIT License
2-
# Copyright (C) 2020 Tymko Oleg <[email protected]> and contributors
3-
# All rights reserved.
4-
51
name: Контроль качества
6-
# Любой пуш и pr в проекте но с фильтром по основному проекту
7-
on: [push, pull_request]
8-
jobs:
9-
build:
10-
if: github.repository == 'autumn-library/winow'
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
fail-fast: false
14-
matrix:
15-
os: [ubuntu-latest]
16-
oscript_version: ['stable']
17-
18-
steps:
19-
# Загрузка проекта
20-
- name: Актуализация
21-
uses: actions/checkout@v2
22-
23-
# Вычисление имени ветки
24-
- name: Compute branch name
25-
uses: nelonoel/[email protected]
26-
27-
# Установка OneScript конкретной версии
28-
- name: Установка OneScript
29-
uses: otymko/[email protected]
30-
with:
31-
version: ${{ matrix.oscript_version }}
322

33-
# Установка зависимостей пакета
34-
- name: Установка зависимостей
35-
run: |
36-
opm install opm
37-
opm install -l --dev
3+
on:
4+
push:
5+
pull_request:
6+
workflow_dispatch:
387

39-
# Запуск тестов и сбор покрытия кода
40-
- name: Покрытие кода
41-
run: oscript ./tasks/coverage.os
42-
43-
- name: Извлечение версии пакета
44-
shell: bash
45-
run: echo "##[set-output name=version;]`cat packagedef | grep ".Версия(" | sed 's|[^"]*"||' | sed -r 's/".+//'`"
46-
id: extract_version
47-
48-
- name: Setup sonarqube
49-
uses: warchant/setup-sonar-scanner@v8
50-
51-
# Анализ проекта в SonarQube (ветка)
52-
- name: Анализ в SonarQube (branch)
53-
if: github.event_name == 'push'
54-
env:
55-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
56-
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
57-
run: sonar-scanner
58-
-Dsonar.host.url=https://sonar.openbsl.ru
59-
-Dsonar.branch.name=${{ env.BRANCH_NAME }}
60-
-Dsonar.projectVersion=${{ steps.extract_version.outputs.version }}
61-
62-
# Анализ проекта в SonarQube (PR)
63-
# https://docs.sonarqube.org/latest/analysis/pull-request/
64-
- name: Анализ в SonarQube (pull-request)
65-
if: github.event_name == 'pull_request'
66-
env:
67-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
68-
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
69-
run: sonar-scanner
70-
-Dsonar.host.url=https://sonar.openbsl.ru
71-
-Dsonar.pullrequest.key=${{ github.event.pull_request.number }}
72-
-Dsonar.pullrequest.branch=${{ github.event.pull_request.head.ref }}
73-
-Dsonar.pullrequest.base=${{ github.event.pull_request.base.ref }}
74-
-Dsonar.scm.revision=${{ github.event.pull_request.head.sha }}
8+
jobs:
9+
sonar:
10+
uses: autumn-library/workflows/.github/workflows/sonar.yml@main
11+
with:
12+
sonarqube: true
13+
github_repository: autumn-library/winow
14+
coveralls: true
15+
oscript_version: 'dev'
16+
test_engine: 'oneunit'
17+
secrets:
18+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

.github/workflows/testing.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,12 @@ jobs:
1010
strategy:
1111
fail-fast: false
1212
matrix:
13-
oscript_version: ['stable', 'dev']
13+
oscript_version: ['default', 'lts-dev']
14+
test_engine: ['1testrunner']
15+
include:
16+
- oscript_version: 'dev'
17+
test_engine: 'oneunit'
1418
uses: autumn-library/workflows/.github/workflows/test.yml@main
1519
with:
16-
oscript_version: ${{ matrix.oscript_version }}
20+
oscript_version: ${{ matrix.oscript_version }}
21+
test_engine: ${{ matrix.test_engine }}

sonar-project.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@ sonar.sources=./src
44
sonar.tests=./tests
55
sonar.sourceEncoding=UTF-8
66
sonar.coverageReportPaths=out/genericCoverage.xml
7+
sonar.testExecutionReportPaths=out/genericExecution.xml

tests/alltest.os

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
Перем Поделка;
66

7+
&ПередКаждым
78
Процедура ПередЗапускомТеста() Экспорт
89
ВключитьСервер();
910
КонецПроцедуры
@@ -407,6 +408,7 @@
407408
КонецПроцедуры
408409

409410
&Тест
411+
&ВыключенДляOneScript(">=2.0.0-rc")
410412
Процедура Должен_ПроверитьРукопожатиеВебСокета() Экспорт
411413

412414
// Дано
@@ -578,6 +580,7 @@
578580
КонецПроцедуры
579581

580582
&Тест
583+
&ВыключенДляOneScript(">=2.0.0-rc")
581584
Процедура ССЕКлиентПодключился() Экспорт
582585
// Дано
583586
КонтролССЕ = Поделка.НайтиЖелудь("КонтролССЕ");
@@ -593,6 +596,7 @@
593596
КонецПроцедуры
594597

595598
&Тест
599+
&ВыключенДляOneScript(">=2.0.0-rc")
596600
Процедура ССЕОтправитьВсем() Экспорт
597601
// Дано
598602
КонтролССЕ = Поделка.НайтиЖелудь("КонтролССЕ");
@@ -620,6 +624,7 @@
620624
КонецПроцедуры
621625

622626
&Тест
627+
&ВыключенДляOneScript(">=2.0.0-rc")
623628
Процедура ССЕОтправитьВсемКастомныйТип() Экспорт
624629
// Дано
625630
КонтролССЕ = Поделка.НайтиЖелудь("КонтролССЕ");
@@ -643,6 +648,7 @@
643648
КонецПроцедуры
644649

645650
&Тест
651+
&ВыключенДляOneScript(">=2.0.0-rc")
646652
Процедура ССЕОтправитьТолько() Экспорт
647653
// Дано
648654
КонтролССЕ = Поделка.НайтиЖелудь("КонтролССЕ");
@@ -668,6 +674,7 @@
668674
КонецПроцедуры
669675

670676
&Тест
677+
&ВыключенДляOneScript(">=2.0.0-rc")
671678
Процедура ССЕОтправитьКроме() Экспорт
672679
// Дано
673680
КонтролССЕ = Поделка.НайтиЖелудь("КонтролССЕ");
@@ -697,6 +704,7 @@
697704
КонецПроцедуры
698705

699706
&Тест
707+
&ВыключенДляOneScript(">=2.0.0-rc")
700708
Процедура ССЕПодпискаНаЗакрытие() Экспорт
701709
// Дано
702710
КонтролССЕ = Поделка.НайтиЖелудь("КонтролССЕ");
@@ -737,4 +745,4 @@
737745
Ожидаем.Что(Ответ.КодСостояния).Равно(200);
738746
Ожидаем.Что(ТекстТело).Равно(ТекстИзФайла);
739747

740-
КонецПроцедуры
748+
КонецПроцедуры

0 commit comments

Comments
 (0)