Skip to content

0.6.0 #6

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
May 2, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Публикация релиза

on:
release:
types:
- published
workflow_dispatch:

jobs:
release:
uses: autumn-library/workflows/.github/workflows/release.yml@main
with:
package_mask: "semver-*.ospx"
secrets:
PUSH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
16 changes: 16 additions & 0 deletions .github/workflows/testing.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Тестирование

on:
push:
pull_request:
workflow_dispatch:

jobs:
test:
strategy:
fail-fast: false
matrix:
oscript_version: ['dev', 'lts-dev', 'default']
uses: autumn-library/workflows/.github/workflows/test.yml@main
with:
oscript_version: ${{ matrix.oscript_version }}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
*.ospx
tests.xml
oscript_modules/
build/
out/
63 changes: 0 additions & 63 deletions .travis.yml

This file was deleted.

1 change: 0 additions & 1 deletion VERSION

This file was deleted.

10 changes: 4 additions & 6 deletions packagedef
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,20 @@
//

Описание.Имя("semver")
.Версия("0.5.2")
.Версия("0.6.0")
.Автор("Khorev Aleksey")
.АдресАвтора("[email protected]")
.Описание("Эта библиотека облегчает работу с семантическими версиями")
.ВерсияСреды("1.0.18")
.ВерсияСреды("1.9.2")
.ВключитьФайл("src")
.ВключитьФайл("doc")
.ВключитьФайл("tests")
.ЗависитОт("logos")
.ЗависитОт("strings")
.ЗависитОт("fluent")
//.ЗависитОт("package3", ">=1.1", "<2.0")
//.ЗависитОт("package4", ">=1.1", "<2.0")
.ЗависитОт("fluent", "0.6.1")
.РазработкаЗависитОт("1testrunner", "1.9.2")
.ОпределяетМодуль("Версии", "src/core/Модули/Версии.os")
.ОпределяетКласс("Версия", "src/core/Классы/Версия.os")
.ОпределяетКласс("ДиапазонВерсий", "src/core/Классы/ДиапазонВерсий.os")
.ОпределяетКласс("СравнениеВерсий", "src/core/Классы/СравнениеВерсий.os")
//.ОпределяетМодуль("ПолезныеФункции", "src/tools.os")
;
4 changes: 3 additions & 1 deletion src/core/Модули/Версии.os
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,9 @@
Лог.Отладка("Выбираю максимум из [%1]", МассивВерсий.Количество());

Коллекция = ПроцессорыКоллекций.ИзКоллекции(МассивВерсий);
Результат = Коллекция.Максимум("Результат = Элемент1.Больше(Элемент2)");
Результат = Коллекция.Максимум(
"(Элемент1, Элемент2) -> Элемент1.Сравнить(Элемент2)"
);

Возврат Результат;

Expand Down
32 changes: 32 additions & 0 deletions tasks/coverage.os
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#Использовать coverage
#Использовать 1commands
#Использовать fs

СистемнаяИнформация = Новый СистемнаяИнформация;
ЭтоWindows = Найти(НРег(СистемнаяИнформация.ВерсияОС), "windows") > 0;

ФС.ОбеспечитьПустойКаталог(ОбъединитьПути("build", "coverage"));
ПутьКСтат = ОбъединитьПути("build", "coverage", "stat.json");

Команда = Новый Команда;
Команда.УстановитьКоманду("oscript");
Если НЕ ЭтоWindows Тогда
Команда.ДобавитьПараметр("-encoding=utf-8");
КонецЕсли;
Команда.ДобавитьПараметр(СтрШаблон("-codestat=%1", ПутьКСтат));
Команда.ДобавитьПараметр(ОбъединитьПути("tasks", "test.os"));
Команда.ПоказыватьВыводНемедленно(Истина);

КодВозврата = Команда.Исполнить();

ПроцессорГенерации = Новый ГенераторОтчетаПокрытия();

ПроцессорГенерации.ОтносительныеПути()
.РабочийКаталог(ОбъединитьПути("build", "coverage"))
.КаталогИсходников(ТекущийКаталог())
.ИмяФайлаСтатистики()
.GenericCoverage()
.Cobertura()
.Сформировать();

ЗавершитьРаботу(КодВозврата);
1 change: 1 addition & 0 deletions tasks/oscript.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
lib.system=../oscript_modules
69 changes: 15 additions & 54 deletions tasks/test.os
Original file line number Diff line number Diff line change
@@ -1,84 +1,45 @@
#Использовать "../src/core"
#Использовать 1bdd
#Использовать 1testrunner
#Использовать fs

Функция ПрогнатьТесты()

Тестер = Новый Тестер;
Тестер.УстановитьФорматЛогФайла(Тестер.ФорматыЛогФайла().GenericExec);
Тестер.ПодробныеОписанияОшибок(Истина);

ПутьКТестам = ОбъединитьПути(ТекущийСценарий().Каталог, "..", "tests");
ПутьКОтчетуJUnit = ОбъединитьПути(ТекущийСценарий().Каталог, "..");
ПутьКТестам = "tests";
ПутьКОтчетуJUnit = ОбъединитьПути("build", "testsResults");

КаталогТестов = Новый Файл(ПутьКТестам);
Если Не КаталогТестов.Существует() Тогда
Сообщить(СтрШаблон("Не найден каталог тестов %1", ПутьКТестам));
Возврат Истина;
КонецЕсли;
ФС.ОбеспечитьПустойКаталог(ПутьКОтчетуJUnit);

РезультатТестирования = Тестер.ТестироватьКаталог(
КаталогТестов,
Новый Файл(ПутьКТестам),
Новый Файл(ПутьКОтчетуJUnit)
);

Успешно = РезультатТестирования = 0;

Возврат Успешно;
КонецФункции // ПрогнатьТесты()

Функция ПрогнатьФичи()

ПутьОтчетаJUnit = "./bdd-log.xml";

КаталогФич = ОбъединитьПути(".", "features");

Файл_КаталогФич = Новый Файл(КаталогФич);
Если Не Файл_КаталогФич.Существует() Тогда
Сообщить(СтрШаблон("Не найден каталог фич %1", КаталогФич));
Возврат Истина;
КонецЕсли;

ИсполнительБДД = Новый ИсполнительБДД;
РезультатыВыполнения = ИсполнительБДД.ВыполнитьФичу(Файл_КаталогФич, Файл_КаталогФич);
ИтоговыйРезультатВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);

СтатусВыполнения = ИсполнительБДД.ВозможныеСтатусыВыполнения().НеВыполнялся;
Если РезультатыВыполнения.Строки.Количество() > 0 Тогда

СтатусВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);

КонецЕсли;
Возврат Успешно;

ГенераторОтчетаJUnit = Новый ГенераторОтчетаJUnit;
ГенераторОтчетаJUnit.Сформировать(РезультатыВыполнения, СтатусВыполнения, ПутьОтчетаJUnit);
КонецФункции // ПрогнатьТесты()

Сообщить(СтрШаблон("Результат прогона фич <%1>
|", ИтоговыйРезультатВыполнения));
// основной код

Возврат ИтоговыйРезультатВыполнения <> ИсполнительБДД.ВозможныеСтатусыВыполнения().Сломался;
КонецФункции // ПрогнатьФичи()
ТекКаталог = ТекущийКаталог();

Попытка
ТестыПрошли = ПрогнатьТесты();

Исключение
ТестыПрошли = Ложь;
Сообщить(СтрШаблон("Тесты через 1testrunner выполнены неудачно
|%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
КонецПопытки;

ФичиПрошли = Истина;

// Попытка
// ФичиПрошли = ПрогнатьФичи();
// Исключение
// ФичиПрошли = Ложь;
// Сообщить(СтрШаблон("Тесты поведения через 1bdd выполнены неудачно
// |%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
// КонецПопытки;
УстановитьТекущийКаталог(ТекКаталог);

Если Не ТестыПрошли Или Не ФичиПрошли Тогда
Если Не ТестыПрошли Тогда
ВызватьИсключение "Тестирование завершилось неудачно!";
Иначе
Сообщить(СтрШаблон("Результат прогона тестов <%1>
|", ТестыПрошли));
КонецЕсли;
КонецЕсли;
8 changes: 0 additions & 8 deletions travis-ci.sh

This file was deleted.