Skip to content

Возомжность сборки как приложения #155

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 34 commits into from
Jan 10, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
bbcc938
Испраления документации метода ПутьКПлатформе
khorevaa Oct 11, 2018
95c8933
Конвертация содержимого в Yaml
khorevaa Oct 11, 2018
0d5c2af
Корректный путь к 1С при тестировании
khorevaa Oct 11, 2018
20ae076
Корректная версия продукта
khorevaa Oct 11, 2018
66c978a
Последний загрузчик библиотек
khorevaa Oct 11, 2018
20f8297
Предварительная версия сборки в exe
khorevaa Oct 11, 2018
2bb6f0d
Работающая сборка в exe
khorevaa Oct 11, 2018
0d6af0f
Заглушки на функциональность не доступную в режиме exe
khorevaa Oct 11, 2018
ca7016b
Реформатирование каталога feature
khorevaa Oct 12, 2018
21fb29d
Немного скорректированы тесты для exe
khorevaa Oct 12, 2018
d302f8d
Обновление кода до свежей версии configor
khorevaa Oct 12, 2018
9f32b08
Обновление кода до свежей версии cli
khorevaa Oct 12, 2018
7c56e3a
Доработка тестов до свежей версии opm
khorevaa Oct 12, 2018
b56d048
Мелкие ошибки
khorevaa Oct 12, 2018
3db5dd0
Свежие зависимости
khorevaa Oct 12, 2018
5a820ac
Немного исправлений.
khorevaa Oct 15, 2018
82c12bb
Убарана лишнее происвоение при регистрации команды
khorevaa Oct 16, 2018
1d8cf29
Исправления ошибок и небольшие улучшения
khorevaa Oct 16, 2018
dae380f
Обновлен сборщик пакета
khorevaa Oct 16, 2018
5f3be83
Небольшие исправлени и убраны лишние логи
khorevaa Oct 16, 2018
ead9a5e
Установна бета версии v8storage
khorevaa Oct 16, 2018
45b234f
Возврат результата тестирования
khorevaa Oct 16, 2018
c5afcf8
Увеличение зависимости от v8storage
khorevaa Dec 14, 2018
4aadecc
Исключнеие из git каталога bin
khorevaa Dec 14, 2018
951ccc7
Корректировка получения плагинов
khorevaa Dec 14, 2018
88ad0ec
Немного логирования
khorevaa Dec 14, 2018
0882f3e
Вывод стравки при запуске без команды
khorevaa Dec 14, 2018
6ed33e9
Корректировка установка пути к гитсинку
khorevaa Jan 10, 2019
c6adbea
Пробелы
khorevaa Jan 10, 2019
0f07318
Еще пропуск ошибки получения лицензии
khorevaa Jan 10, 2019
b6450ef
Прогон тестов
khorevaa Jan 10, 2019
189d8d9
Правильный путь к файлам библиотеки
khorevaa Jan 10, 2019
fe9e8a7
Исключаем неэкспортные методы объекта
khorevaa Jan 10, 2019
515699f
-x
khorevaa Jan 10, 2019
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ bdd-*.xml

.enabled-plugins
coverage/*
bin/*

*.ospx
oscript_modules/
Expand Down
10 changes: 5 additions & 5 deletions build_packagedef
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@

КомандаOpm.УстановитьКоманду("opm");
КомандаOpm.ДобавитьПараметр("install -l");
КомандаOpm.ДобавитьЛогВыводаКоманды("task.build");

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

Expand Down Expand Up @@ -40,17 +41,14 @@
КомандаOpm.УстановитьКоманду("opm");
КомандаOpm.ДобавитьПараметр("run get-plugins");

КомандаOpm.ДобавитьЛогВыводаКоманды(ПараметрыСистемыOpm.ИмяЛогаСистемы());

КомандаOpm.ДобавитьЛогВыводаКоманды("task.build");

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

Если КодВозврата <> 0 Тогда
ВызватьИсключение КомандаOpm.ПолучитьВывод();
КонецЕсли;

Лог.Информация("Настройка локальных библиотек");

КонецПроцедуры

Процедура ПриСборке(Знач РабочийКаталог, Знач АрхивПакета) Экспорт
Expand All @@ -69,7 +67,9 @@

КонецПроцедуры

Лог = Логирование.ПолучитьЛог(ПараметрыСистемыOpm.ИмяЛогаСистемы());
Лог = Логирование.ПолучитьЛог("task.build");

//Лог = Логирование.ПолучитьЛог(ПараметрыСистемыOpm.ИмяЛогаСистемы());

ПутьКСценариюПараметров = ОбъединитьПути(ТекущийСценарий().Каталог, "src/cmd", "Модули", "ПараметрыПриложения.os");
ПараметрыСистемы_ЛокальнаяВерсия = ЗагрузитьСценарий(ПутьКСценариюПараметров);
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#Использовать "../../src/core/"
#Использовать "../../../src/core/"

// Реализация шагов BDD-фич/сценариев c помощью фреймворка https://github.com/artbear/1bdd

Expand Down
404 changes: 404 additions & 0 deletions features/cmd/step_definitions/shared.os

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,8 @@
Команда = Новый Команда;
Команда.УстановитьКоманду("opm");
Команда.ДобавитьПараметр("build");
Команда.ДобавитьПараметр("--out");
Команда.ДобавитьПараметр(ВременныйКаталог);
Команда.ДобавитьПараметр("-out");
Команда.ДобавитьПараметр(ВременныйКаталог);
КодВозврата = Команда.Исполнить();

Expand Down
File renamed without changes.
4 changes: 2 additions & 2 deletions features/v8path.feature → features/cmd/v8path.feature
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@
Сценарий: Простая синхронизация хранилища с git-репозиторием
Допустим Я создаю временный каталог и сохраняю его в переменной "ВременнаяДиректория"
И Я добавляю параметр "--tempdir" для команды "gitsync" из переменной "ВременнаяДиректория"
И Я добавляю параметр "--v8-path /opt/1C/v8.3/x86_64/1cv8" для команды "gitsync"
И Я добавляю параметр "--v8-path /opt/1C/v8.3/i386/1cv8" для команды "gitsync"
И Я добавляю параметр "-v" для команды "gitsync"
И Я добавляю параметр "sync" для команды "gitsync"
И Я добавляю позиционный параметр для команды "gitsync" из переменной "КаталогХранилища1С"
И Я добавляю позиционный параметр для команды "gitsync" из переменной "ПутьКаталогаИсходников"
Когда Я выполняю команду "gitsync"
Тогда Вывод команды "gitsync" содержит "ОТЛАДКА - Используется путь к платформе 1С </opt/1C/v8.3/x86_64/1cv8>"
Тогда Вывод команды "gitsync" содержит "ОТЛАДКА - Используется путь к платформе 1С </opt/1C/v8.3/i386/1cv8>"
И Вывод команды "gitsync" содержит "ИНФОРМАЦИЯ - Завершена синхронизации с git"
И Вывод команды "gitsync" не содержит "Внешнее исключение"
И Код возврата команды "gitsync" равен 0
File renamed without changes.
File renamed without changes.
74 changes: 74 additions & 0 deletions features/core/step_definitions/check.core.os
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
#Использовать "../../../src/core/"

// Реализация шагов BDD-фич/сценариев c помощью фреймворка https://github.com/artbear/1bdd

Перем БДД; //контекст фреймворка 1bdd

// Метод выдает список шагов, реализованных в данном файле-шагов
Функция ПолучитьСписокШагов(КонтекстФреймворкаBDD) Экспорт
БДД = КонтекстФреймворкаBDD;

ВсеШаги = Новый Массив;

ВсеШаги.Добавить("ЯСоздаюНовыйМенеджерподписок");
ВсеШаги.Добавить("ЯСоздаюНовыйИнтерфейсплагинов");
ВсеШаги.Добавить("МенеджераподписокРеализуетИнтерфейсаплагинов");
ВсеШаги.Добавить("ЯСоздаюНовыйТестовыйплагин");
ВсеШаги.Добавить("ТестовыйплагинРеализуетИнтерфейсаплагинов");

Возврат ВсеШаги;
КонецФункции

// Реализация шагов

// Процедура выполняется перед запуском каждого сценария
Процедура ПередЗапускомСценария(Знач Узел) Экспорт

КонецПроцедуры

// Процедура выполняется после завершения каждого сценария
Процедура ПослеЗапускаСценария(Знач Узел) Экспорт

КонецПроцедуры

//Я создаю новый МенеджерПодписок
Процедура ЯСоздаюНовыйМенеджерподписок() Экспорт

МенеджерПодписок = Новый МенеджерПодписок(Новый Соответствие);
БДД.СохранитьВКонтекст("МенеджераПодписок", МенеджерПодписок);

КонецПроцедуры

//Я создаю новый ИнтерфейсПлагинов
Процедура ЯСоздаюНовыйИнтерфейсплагинов() Экспорт

ИнтерфейсПлагинов = Новый ИнтерфейсПлагинов;
БДД.СохранитьВКонтекст("ИнтерфейсПлагинов", ИнтерфейсПлагинов);

КонецПроцедуры

//МенеджераПодписок реализует ИнтерфейсаПлагинов
Процедура МенеджераподписокРеализуетИнтерфейсаплагинов() Экспорт

МенеджераПодписок = БДД.ПолучитьИзКонтекста("МенеджераПодписок");
ИнтерфейсПлагинов = БДД.ПолучитьИзКонтекста("ИнтерфейсПлагинов");

ИнтерфейсПлагинов.Реализует(МенеджераПодписок, Истина);

КонецПроцедуры

//Я создаю новый ТестовыйПлагин
Процедура ЯСоздаюНовыйТестовыйплагин() Экспорт
ПутьКПлагину = ОбъединитьПути(ТекущийСценарий().Каталог, "testsata/test_plugin/src/Классы", "testPlugin.os");
ПодключитьСценарий(ПутьКПлагину, "ТестовыйПлагин");

БДД.СохранитьВКонтекст("ТестовыйПлагин", Новый ТестовыйПлагин);
КонецПроцедуры

//ТестовыйПлагин реализует ИнтерфейсаПлагинов
Процедура ТестовыйплагинРеализуетИнтерфейсаплагинов() Экспорт
ИнтерфейсПлагинов = БДД.ПолучитьИзКонтекста("ИнтерфейсПлагинов");
ТестовыйПлагин = БДД.ПолучитьИзКонтекста("ТестовыйПлагин");

ИнтерфейсПлагинов.Реализует(ТестовыйПлагин, Истина);
КонецПроцедуры
74 changes: 74 additions & 0 deletions features/core/step_definitions/clone.os
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
#Использовать tempfiles
// Реализация шагов BDD-фич/сценариев c помощью фреймворка https://github.com/artbear/1bdd

Перем БДД; //контекст фреймворка 1bdd
Перем ЛокальныеВременныеФайлы;

// Метод выдает список шагов, реализованных в данном файле-шагов
Функция ПолучитьСписокШагов(КонтекстФреймворкаBDD) Экспорт
БДД = КонтекстФреймворкаBDD;

ВсеШаги = Новый Массив;

ВсеШаги.Добавить("ЯНаполняюBareРепозиторийИзПеременнойТестовымиДанными");

Возврат ВсеШаги;
КонецФункции

// Реализация шагов

// Процедура выполняется перед запуском каждого сценария
Процедура ПередЗапускомСценария(Знач Узел) Экспорт

ЛокальныеВременныеФайлы = Новый МенеджерВременныхФайлов;

КонецПроцедуры

// Процедура выполняется после завершения каждого сценария
Процедура ПослеЗапускаСценария(Знач Узел) Экспорт
ЛокальныеВременныеФайлы.Удалить();
КонецПроцедуры


//Я наполняю bare репозиторий из переменной "URLРепозитория" тестовыми данными
Процедура ЯНаполняюBareРепозиторийИзПеременнойТестовымиДанными(Знач ПеременнаяURLРепозитория) Экспорт

ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий");
URLРепозитория = БДД.ПолучитьИзКонтекста(ПеременнаяURLРепозитория);

ВременныйКаталог = ЛокальныеВременныеФайлы.СоздатьКаталог();

ГитРепозиторий.УстановитьРабочийКаталог(ВременныйКаталог);
ГитРепозиторий.Инициализировать();
readme = ОбъединитьПути(ВременныйКаталог, "README.md");
ЗаписьТекста = Новый ЗаписьТекста(readme);
ЗаписьТекста.ЗаписатьСтроку("TESTING");
ЗаписьТекста.Закрыть();

ПараметрыКоманды = Новый Массив;
ПараметрыКоманды.Добавить("add");
ПараметрыКоманды.Добавить("--all");
ГитРепозиторий.ВыполнитьКоманду(ПараметрыКоманды);
ГитРепозиторий.Закоммитить("init");

НастройкаОтправить = Новый НастройкаКомандыОтправить;
НастройкаОтправить.УстановитьURLРепозиторияОтправки(URLРепозитория);
НастройкаОтправить.ОтображатьПрогресс();
НастройкаОтправить.ПерезаписатьИсторию();
НастройкаОтправить.Отслеживать();
НастройкаОтправить.ПолнаяОтправка();

ГитРепозиторий.УстановитьНастройкуКомандыОтправить(НастройкаОтправить);

ГитРепозиторий.Отправить();

ЛокальныеВременныеФайлы.БезопасноУдалитьФайл(ВременныйКаталог);

КонецПроцедуры







54 changes: 54 additions & 0 deletions features/core/step_definitions/init.os
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
#Использовать asserts
// Реализация шагов BDD-фич/сценариев c помощью фреймворка https://github.com/artbear/1bdd

Перем БДД; //контекст фреймворка 1bdd
Перем ЛокальныеВременныеФайлы;
// Метод выдает список шагов, реализованных в данном файле-шагов
Функция ПолучитьСписокШагов(КонтекстФреймворкаBDD) Экспорт
БДД = КонтекстФреймворкаBDD;

ВсеШаги = Новый Массив;

ВсеШаги.Добавить("ЯИнициализируюПустойРепозиторийВКаталогИзПеременной");
ВсеШаги.Добавить("ЯСоздаюКаталогSrcВременныйВКаталогеИзПеременнойИСохраняюЕгоВКонтекстВПеременной");

Возврат ВсеШаги;
КонецФункции

// Реализация шагов

// Процедура выполняется перед запуском каждого сценария
Процедура ПередЗапускомСценария(Знач Узел) Экспорт

ЛокальныеВременныеФайлы = Новый МенеджерВременныхФайлов;

КонецПроцедуры

// Процедура выполняется после завершения каждого сценария
Процедура ПослеЗапускаСценария(Знач Узел) Экспорт
ЛокальныеВременныеФайлы.Удалить();
КонецПроцедуры

//Я инициализирую пустой репозиторий в каталог из переменной "ПутьКаталогаИсходников"
Процедура ЯИнициализируюПустойРепозиторийВКаталогИзПеременной(Знач ПутьКаталогаИсходников) Экспорт

ГитРепозиторий = БДД.ПолучитьИзКонтекста("ГитРепозиторий");
ВременныйКаталог = БДД.ПолучитьИзКонтекста("ПутьКаталогаИсходников");
ГитРепозиторий.УстановитьРабочийКаталог(ВременныйКаталог);
ПараметрыКоманды = Новый Массив;
ПараметрыКоманды.Добавить("init");
ГитРепозиторий.ВыполнитьКоманду(ПараметрыКоманды);

КонецПроцедуры

//Я создаю каталог src временный в каталоге из переменной "ПутьКаталогаИсходников" и сохраняю его в контекст в переменной "КаталогSRC"
Процедура ЯСоздаюКаталогSrcВременныйВКаталогеИзПеременнойИСохраняюЕгоВКонтекстВПеременной(Знач ПутьКаталогаИсходников, Знач КаталогSRC) Экспорт
ВременныйКаталог = БДД.ПолучитьИзКонтекста("ПутьКаталогаИсходников");
КаталогSRC = ОбъединитьПути(ВременныйКаталог, "src");
СоздатьКаталог(КаталогSRC);
БДД.СохранитьВКонтекст("КаталогSRC", КаталогSRC);

КонецПроцедуры



Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#Использовать asserts
#Использовать tempfiles

#Использовать "../../src/core"
#Использовать "../../../src/core"

Перем БДД; //контекст фреймворка 1bdd
Перем ЛокальныеВременныеФайлы;
Expand Down Expand Up @@ -333,7 +333,7 @@
КонецФункции

Функция КаталогГитсинк()
Возврат ОбъединитьПути(ТекущийСценарий().Каталог, "..", "..");
Возврат ОбъединитьПути(ТекущийСценарий().Каталог, "..", "..", "..");
КонецФункции

Функция ОбернутьВКавычки(Знач Строка);
Expand Down
Loading