From b9359dfe586699e2dc4a6aa6fe878fd0e8b2a00f Mon Sep 17 00:00:00 2001 From: Anton Titovets Date: Fri, 29 Mar 2024 10:25:04 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=B6=D0=B8=D0=BC=20debug=20=D0=B2?= =?UTF-8?q?=20CLI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/os/cli_testmaker.os | 2 +- cli/core/Classes/Приложение.os | 17 +++++++++++++++-- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/.github/workflows/os/cli_testmaker.os b/.github/workflows/os/cli_testmaker.os index 33940c7b2e..ae4e45767e 100644 --- a/.github/workflows/os/cli_testmaker.os +++ b/.github/workflows/os/cli_testmaker.os @@ -223,7 +223,7 @@ ДобавитьПредобработки(ТекстРаботы, СтрокиМетода, Библиотека); ТекстРаботы = ТекстРаботы + " - | ./oint_bin " + Библиотека + " " + ТекущийМетод + " \" + Символы.ПС; + | ./oint_bin " + Библиотека + " " + ТекущийМетод + " --debug \" + Символы.ПС; КонецЕсли; diff --git a/cli/core/Classes/Приложение.os b/cli/core/Classes/Приложение.os index b9eb927ea8..4956d1398d 100644 --- a/cli/core/Classes/Приложение.os +++ b/cli/core/Classes/Приложение.os @@ -5,6 +5,7 @@ Перем ОбъектОПИ; Перем Парсер; +Перем Отладка; #Область СлужебныеПроцедурыИФункции @@ -12,6 +13,7 @@ Процедура ОсновнойОбработчик() + Отладка = Ложь; Парсер = Новый ПарсерАргументовКоманднойСтроки(); ОбъектОПИ = Новый СвязьОПИ(); Команды = ОбъектОПИ.СоответствиеКомандМодулей; @@ -53,6 +55,7 @@ ДобавитьПараметрыКоманды(Парсер, Команда, ТаблицаПараметров); Парсер.ДобавитьПараметрФлагКоманды(Команда, "--help"); + Парсер.ДобавитьПараметрФлагКоманды(Команда, "--debug"); Парсер.ДобавитьКоманду(Команда); @@ -104,10 +107,14 @@ ОтборКоманды = Новый Структура("МетодПоиска", вРег(Метод)); ПараметрыМетода = ТаблицаПараметров.НайтиСтроки(ОтборКоманды); - Если Параметры.Количество() = 2 Или Параметры["--help"] = Истина Тогда + Если Параметры.Количество() = 3 Или Параметры["--help"] Тогда Справка.ВывестиСправкуПоПараметрам(ПараметрыМетода, Команда); КонецЕсли; + Если Параметры["--debug"] Тогда + Отладка = Истина; + КонецЕсли; + ТекстВыполнения = СформироватьСтрокуВызоваМетода(Параметры, ПараметрыМетода, Модуль, Метод); Выполнить(ТекстВыполнения); @@ -192,6 +199,12 @@ Попытка ОсновнойОбработчик(); Исключение - Справка.ВывестиСообщениеИсключения(КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + + Если Отладка Тогда + Сообщить(ОписаниеОшибки()); + Иначе + Справка.ВывестиСообщениеИсключения(КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + Конецесли; + КонецПопытки;