Skip to content
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
Original file line number Diff line number Diff line change
Expand Up @@ -235,4 +235,18 @@

КонецФункции

// Удаляет поле из конструктора параметров
//
// Параметры:
// ИмяПоля - Строка - имя поля, возможно передача синонима поля.
//
// Возвращаемое значение:
// Объект.КонструкторПараметров - ссылка на текущий элемент класса <КонструкторПараметров>
//
Функция УдалитьПоле(Знач ИмяПоля) Экспорт

Возврат РодительКонструктор.УдалитьПоле(ИмяПоля);

КонецФункции

#КонецОбласти
36 changes: 35 additions & 1 deletion src/Классы/КонструкторПараметров.os
Original file line number Diff line number Diff line change
Expand Up @@ -288,6 +288,39 @@

КонецФункции

// Удаляет поле из конструктора параметров
//
// Параметры:
// ИмяПоля - Строка - имя поля, возможно передача синонима поля.
//
// Возвращаемое значение:
// Объект.КонструкторПараметров - ссылка на текущий элемент класса <КонструкторПараметров>
//
Функция УдалитьПоле(Знач ИмяПоля) Экспорт

УдаляемоеПоле = ИндексСинонимовПолей[ИмяПоля];

Если УдаляемоеПоле = Неопределено Тогда
Возврат ЭтотОбъект;
КонецЕсли;

ИндексПолей.Удалить(УдаляемоеПоле);

Возврат ЭтотОбъект;

КонецФункции

// Возвращает индекс полей конструктора параметров
//
// Возвращаемое значение:
// Соответствие - текущий индекс полей
//
Функция ПолучитьИндексПолей() Экспорт

Возврат ИндексПолей;

КонецФункции

#КонецОбласти

#Область Работа_с_чтением_и_выгрузкой_параметров
Expand Down Expand Up @@ -727,7 +760,8 @@

Возврат СтрШаблон("Некорректный формат даты [%1]", Значение);

КонецФункции // ИсключениеНекорректныйФорматДаты(
КонецФункции

#КонецОбласти

Лог = Логирование.ПолучитьЛог("oscript.lib.configor.constructor");
20 changes: 19 additions & 1 deletion tests/КонструкторНастройки_test.os
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
ИменаТестов = Новый Массив;

ИменаТестов.Добавить("ТестДолжен_ПроверитьЧтениеПараметровИзКонструктора");
// ИменаТестов.Добавить("ТестДолжен_ПроверитьВыгрузкуПараметровВКласс");
ИменаТестов.Добавить("ТестДолжен_ПроверитьУдалениеПоляИзКонструктора");
// ИменаТестов.Добавить("ТестДолжен_ПроверитьПоискИЧтениеФайлаПараметров");
// ИменаТестов.Добавить("ТестДолжен_ПроверитьПарсингОпций");
// ИменаТестов.Добавить("ТестДолжен_ПроверитьПарсингМассивовОпций");
Expand Down Expand Up @@ -103,6 +103,24 @@

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

Процедура ТестДолжен_ПроверитьУдалениеПоляИзКонструктора() Экспорт

ИндексПараметров = Новый Соответствие;

КонструкторПараметров = Новый КонструкторПараметров(ИндексПараметров, "ТестовыйКонструктор");
КонструкторПараметров.ПолеСтрока("Поле1 fiels-1")
.ПолеСтрока("Поле2 fiels-2")
;
КонструкторПараметров.УдалитьПоле("Поле1")
.УдалитьПоле("fiels-2")
;

ИндексПолей = КонструкторПараметров.ПолучитьИндексПолей();

Ожидаем.Что(ИндексПолей.Количество(), "Индекс полей должен быть пустым").Равно(0);

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

Процедура ПроверитьРезультат(Значение1, Значение2)
Утверждения.ПроверитьРавенство(Значение1, Значение2, "Результат должен совпадать с ожиданиями.");
КонецПроцедуры
Expand Down