Skip to content

Commit dfef83b

Browse files
committed
Настройка библиотеки
1 parent f480522 commit dfef83b

File tree

11 files changed

+204
-121
lines changed

11 files changed

+204
-121
lines changed

.gitignore

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,8 @@ exec\.log
66
bdd-log\.xml
77

88
.enabled-plugins
9+
coverage/*
910

1011
*.ospx
1112
oscript_modules/
12-
src/cmd/oscript.cfg
13-
14-
/plugins/**/*
15-
!/plugins/lib.config
16-
!/plugins/package-loader.os
13+
src/cmd/oscript.cfg

.gitsync/enabled-pluings.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+


.travis.yml

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -25,42 +25,42 @@ env:
2525
global:
2626
- GIT_EMAIL=ci@mail
2727
- GIT_NAME=ci
28+
- CHANNEL=dev
29+
- PACKAGE_NAME=gitsync
30+
matrix:
31+
- OSCRIPT_VERSION=1_0_19
32+
- OSCRIPT_VERSION=1_0_20
33+
- OSCRIPT_VERSION=night-build
34+
matrix:
35+
allow_failures:
36+
- env: OSCRIPT_VERSION=night-build
37+
38+
script:
39+
- docker version
40+
- docker run -it -v $(pwd):/work_dir harmit/ci-image sh -c 'cd /work_dir; sh /work_dir/travis-ci.sh; exit' | tee /tmp/test.log
41+
- grep 'Результат прогона тестов <Да>' /tmp/test.log
42+
after_success:
43+
# - bash <(curl -s https://codecov.io/bash)
44+
- ./sonar-qube.sh
45+
2846
cache:
2947
directories:
3048
- '$HOME/.m2/repository'
3149
- '$HOME/.sonar/cache'
3250
- '$HOME/docker'
3351
jobs:
3452
include:
35-
- stage: Тестирование
36-
script:
37-
- docker version
38-
- docker run -it -v $(pwd):/work_dir harmit/ci-image sh -c 'cd /work_dir; sh /work_dir/travis-ci.sh; exit' | tee /tmp/test.log
39-
- ! grep -q 'Тестирование завершилось неудачно!' /tmp/test.log
40-
after_success:
41-
- bash <(curl -s https://codecov.io/bash)
42-
4353
- stage: Сборка и публикация github & hub.oscript.io
4454
script: skip
4555
before_deploy:
46-
- opm build -mf build_packgedef ./
56+
- docker run -it -v $(pwd):/work_dir evilbeaver/onescript:1.0.19 sh -c 'cd /work_dir; opm build ./ ; exit'
4757
deploy:
4858
- provider: releases
4959
api_key: "$GITHUB_OAUTH_TOKEN"
5060
file_glob: true
51-
file: gitsync*.ospx
52-
skip_cleanup: true
53-
on:
54-
branch: master
55-
tags: true
56-
- provider: script
57-
skip_cleanup: true
58-
script: opm push --token $GITHUB_OAUTH_TOKEN --channel dev --file ./gitsync-*.ospx;
59-
on:
60-
branch: develop
61-
- provider: script
61+
file: $PACKAGE_NAME*.ospx
6262
skip_cleanup: true
63-
script: opm push --token $GITHUB_OAUTH_TOKEN --channel stable --file ./gitsync-*.ospx;
6463
on:
6564
branch: master
6665
tags: true
66+

.vscode/launch.json

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
// Используйте IntelliSense, чтобы узнать о возможных атрибутах.
3+
// Наведите указатель мыши, чтобы просмотреть описания существующих атрибутов.
4+
// Для получения дополнительной информации посетите: https://go.microsoft.com/fwlink/?linkid=830387
5+
"version": "0.2.0",
6+
"configurations": [
7+
{
8+
"name": "Отладка 1Script",
9+
"type": "oscript",
10+
"request": "launch",
11+
"program": "${file}",
12+
"args": [],
13+
"cwd": "${workspaceRoot}",
14+
"runtimeExecutable": "/usr/bin/oscript",
15+
"debugPort": 2801,
16+
"protocol": "internal"
17+
}
18+
]
19+
}

packagedef

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,5 @@
2020
.ВключитьФайл("plugins")
2121
//.ВключитьФайл("features")
2222
.ВключитьФайл("bin")
23-
//.ВключитьФайл("config-example.xml")
24-
//.ВключитьФайл("config-example.json")
2523
.ВключитьФайл("readme.md")
2624
.ИсполняемыйФайл("src/cmd/gitsync.os");

plugins/package-loader.os

Lines changed: 0 additions & 11 deletions
This file was deleted.

sonar-project.properties

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# must be unique in a given SonarQube instance
2+
sonar.projectKey=opensource-gitsync
3+
sonar.organization=sonar-opensource-add
4+
5+
# this is the name displayed in the SonarQube UI
6+
sonar.projectName=1S storage and git sync for OScript
7+
8+
# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
9+
# Since SonarQube 4.2, this property is optional if sonar.modules is set.
10+
# If not set, SonarQube starts looking for source code from the directory containing
11+
# the sonar-project.properties file.
12+
13+
sonar.sources=./src
14+
15+
# Encoding of the source code. Default is default system encoding
16+
sonar.sourceEncoding=UTF-8
17+
18+
sonar.coverageReportPaths=coverage/genericCoverage.xml

sonar-qube.sh

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
temp=`cat packagedef | grep ".Версия(" | sed 's|[^"]*"||' | sed -r 's/".+//'`
2+
version=${temp##*|}
3+
4+
if [ "$TRAVIS_SECURE_ENV_VARS" == "true" ]; then
5+
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
6+
sonar-scanner \
7+
-Dsonar.host.url=https://sonar.silverbulleters.org \
8+
-Dsonar.analysis.mode=issues \
9+
-Dsonar.github.pullRequest=$TRAVIS_PULL_REQUEST \
10+
-Dsonar.github.repository=$TRAVIS_REPO_SLUG \
11+
-Dsonar.github.oauth=$GITHUB_OAUTH_TOKEN \
12+
-Dsonar.login=$SONAR_TOKEN \
13+
-Dsonar.scanner.skip=false
14+
15+
elif [ "$TRAVIS_BRANCH" == "develop" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
16+
sonar-scanner \
17+
-Dsonar.host.url=https://sonar.silverbulleters.org \
18+
-Dsonar.login=$SONAR_TOKEN \
19+
-Dsonar.projectVersion=$version\
20+
-Dsonar.scanner.skip=false
21+
fi
22+
fi

sonarlint.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"$schema": "https://raw.githubusercontent.com/silverbulleters/sonarqube-inject-vsc/master/schemas/sonarlint.json",
3+
"serverId": "SB",
4+
"projectKey": "opensource-cli"
5+
}

tasks/coverage.os

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#Использовать fs
2+
#Использовать coverage
3+
#Использовать 1commands
4+
5+
ФС.ОбеспечитьПустойКаталог("coverage");
6+
ПутьКСтат = "coverage/stat.json";
7+
8+
Команда = Новый Команда;
9+
Команда.УстановитьКоманду("oscript");
10+
Команда.ДобавитьПараметр("-encoding=utf-8");
11+
Команда.ДобавитьПараметр(СтрШаблон("-codestat=%1", ПутьКСтат));
12+
Команда.ДобавитьПараметр("tasks/test.os");
13+
Команда.ПоказыватьВыводНемедленно(Истина);
14+
15+
КодВозврата = Команда.Исполнить();
16+
17+
Файл_Стат = Новый Файл(ПутьКСтат);
18+
19+
ИмяПакета = "gitsync";
20+
21+
ПроцессорГенерации = Новый ГенераторОтчетаПокрытия();
22+
23+
ПроцессорГенерации.ОтносительныеПути()
24+
.ФайлСтатистики(Файл_Стат.ПолноеИмя)
25+
.GenericCoverage()
26+
.Cobertura()
27+
.Clover(ИмяПакета)
28+
.Сформировать();
29+
30+
ЗавершитьРаботу(КодВозврата);

tasks/test.os

Lines changed: 86 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,86 @@
1-
// #Использовать "../src"
2-
#Использовать 1bdd
3-
#Использовать 1testrunner
4-
5-
Функция ПрогнатьТесты()
6-
7-
Тестер = Новый Тестер;
8-
9-
ПутьКТестам = ОбъединитьПути(ТекущийСценарий().Каталог, "..", "tests");
10-
ПутьКОтчетуJUnit = ОбъединитьПути(ТекущийСценарий().Каталог, "..");
11-
12-
КаталогТестов = Новый Файл(ПутьКТестам);
13-
Если Не КаталогТестов.Существует() Тогда
14-
Сообщить(СтрШаблон("Не найден каталог тестов %1", ПутьКТестам));
15-
Возврат Истина;
16-
КонецЕсли;
17-
18-
РезультатТестирования = Тестер.ТестироватьКаталог(
19-
КаталогТестов,
20-
Новый Файл(ПутьКОтчетуJUnit)
21-
);
22-
23-
Успешно = РезультатТестирования = 0;
24-
25-
Возврат Успешно;
26-
КонецФункции // ПрогнатьТесты()
27-
28-
Функция ПрогнатьФичи()
29-
30-
ПутьОтчетаJUnit = "./bdd-log.xml";
31-
32-
КаталогФич = ОбъединитьПути(".", "features");
33-
34-
Файл_КаталогФич = Новый Файл(КаталогФич);
35-
Если Не Файл_КаталогФич.Существует() Тогда
36-
Сообщить(СтрШаблон("Не найден каталог фич %1", КаталогФич));
37-
Возврат Истина;
38-
КонецЕсли;
39-
40-
ИсполнительБДД = Новый ИсполнительБДД;
41-
РезультатыВыполнения = ИсполнительБДД.ВыполнитьФичу(Файл_КаталогФич, Файл_КаталогФич);
42-
ИтоговыйРезультатВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);
43-
44-
СтатусВыполнения = ИсполнительБДД.ВозможныеСтатусыВыполнения().НеВыполнялся;
45-
Если РезультатыВыполнения.Строки.Количество() > 0 Тогда
46-
47-
СтатусВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);
48-
49-
КонецЕсли;
50-
51-
ГенераторОтчетаJUnit = Новый ГенераторОтчетаJUnit;
52-
ГенераторОтчетаJUnit.Сформировать(РезультатыВыполнения, СтатусВыполнения, ПутьОтчетаJUnit);
53-
54-
Сообщить(СтрШаблон("Результат прогона фич <%1>
55-
|", ИтоговыйРезультатВыполнения));
56-
57-
Возврат ИтоговыйРезультатВыполнения <> ИсполнительБДД.ВозможныеСтатусыВыполнения().Сломался;
58-
КонецФункции // ПрогнатьФичи()
59-
60-
// Попытка
61-
// ТестыПрошли = ПрогнатьТесты();
62-
63-
// Исключение
64-
// ТестыПрошли = Ложь;
65-
// Сообщить(СтрШаблон("Тесты через 1testrunner выполнены неудачно
66-
// |%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
67-
// КонецПопытки;
68-
69-
Попытка
70-
ФичиПрошли = ПрогнатьФичи();
71-
Исключение
72-
ФичиПрошли = Ложь;
73-
Сообщить(СтрШаблон("Тесты поведения через 1bdd выполнены неудачно
74-
|%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
75-
КонецПопытки;
76-
77-
Если Не ФичиПрошли Тогда
78-
ВызватьИсключение "Тестирование завершилось неудачно!";
79-
Иначе
80-
Сообщить(СтрШаблон("Результат прогона тестов <%1>
81-
|", ФичиПрошли));
82-
КонецЕсли;
1+
#Использовать "../src/core"
2+
#Использовать 1bdd
3+
#Использовать 1testrunner
4+
5+
Функция ПрогнатьТесты()
6+
7+
Тестер = Новый Тестер;
8+
9+
ПутьКТестам = ОбъединитьПути(ТекущийСценарий().Каталог, "..", "tests");
10+
ПутьКОтчетуJUnit = ОбъединитьПути(ТекущийСценарий().Каталог, "..");
11+
12+
КаталогТестов = Новый Файл(ПутьКТестам);
13+
Если Не КаталогТестов.Существует() Тогда
14+
Сообщить(СтрШаблон("Не найден каталог тестов %1", ПутьКТестам));
15+
Возврат Истина;
16+
КонецЕсли;
17+
18+
РезультатТестирования = Тестер.ТестироватьКаталог(
19+
КаталогТестов,
20+
Новый Файл(ПутьКОтчетуJUnit)
21+
);
22+
23+
Успешно = РезультатТестирования = 0;
24+
25+
Возврат Успешно;
26+
КонецФункции // ПрогнатьТесты()
27+
28+
Функция ПрогнатьФичи()
29+
30+
ПутьОтчетаJUnit = "./bdd-log.xml";
31+
32+
КаталогФич = ОбъединитьПути(".", "features");
33+
34+
Файл_КаталогФич = Новый Файл(КаталогФич);
35+
Если Не Файл_КаталогФич.Существует() Тогда
36+
Сообщить(СтрШаблон("Не найден каталог фич %1", КаталогФич));
37+
Возврат Истина;
38+
КонецЕсли;
39+
40+
ИсполнительБДД = Новый ИсполнительБДД;
41+
РезультатыВыполнения = ИсполнительБДД.ВыполнитьФичу(Файл_КаталогФич, Файл_КаталогФич);
42+
ИтоговыйРезультатВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);
43+
44+
СтатусВыполнения = ИсполнительБДД.ВозможныеСтатусыВыполнения().НеВыполнялся;
45+
Если РезультатыВыполнения.Строки.Количество() > 0 Тогда
46+
47+
СтатусВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);
48+
49+
КонецЕсли;
50+
51+
ГенераторОтчетаJUnit = Новый ГенераторОтчетаJUnit;
52+
ГенераторОтчетаJUnit.Сформировать(РезультатыВыполнения, СтатусВыполнения, ПутьОтчетаJUnit);
53+
54+
Сообщить(СтрШаблон("Результат прогона фич <%1>
55+
|", ИтоговыйРезультатВыполнения));
56+
57+
Возврат ИтоговыйРезультатВыполнения <> ИсполнительБДД.ВозможныеСтатусыВыполнения().Сломался;
58+
КонецФункции // ПрогнатьФичи()
59+
60+
ТестыПрошли = Истина;
61+
62+
Попытка
63+
ТестыПрошли = ПрогнатьТесты();
64+
65+
Исключение
66+
ТестыПрошли = Ложь;
67+
Сообщить(СтрШаблон("Тесты через 1testrunner выполнены неудачно
68+
|%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
69+
КонецПопытки;
70+
71+
ФичиПрошли = Истина;
72+
73+
Попытка
74+
ФичиПрошли = ПрогнатьФичи();
75+
Исключение
76+
ФичиПрошли = Ложь;
77+
Сообщить(СтрШаблон("Тесты поведения через 1bdd выполнены неудачно
78+
|%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
79+
КонецПопытки;
80+
81+
Если Не ТестыПрошли Или Не ФичиПрошли Тогда
82+
ВызватьИсключение "Тестирование завершилось неудачно!";
83+
Иначе
84+
Сообщить(СтрШаблон("Результат прогона тестов <%1>
85+
|", ТестыПрошли));
86+
КонецЕсли;

0 commit comments

Comments
 (0)