Skip to content

Commit dc8eaae

Browse files
committed
fix EvilBeaver#1580.8: допускать лишние запятые в списке колонок
1 parent 3e2763b commit dc8eaae

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

src/OneScript.StandardLibrary/Collections/ValueTable/ValueTable.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,9 +171,12 @@ private List<ValueTableColumn> GetProcessingColumnList(string columnNames, bool
171171

172172
foreach (var column_name in columnNames.Split(','))
173173
{
174+
if (column_name == String.Empty)
175+
continue;
176+
174177
var name = column_name.Trim();
175-
var Column = Columns.FindColumnByName(name);
176178

179+
var Column = Columns.FindColumnByName(name);
177180
if (Column == null)
178181
throw ColumnException.WrongColumnName(column_name);
179182

tests/valuetable.os

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,8 @@
6969
ВсеТесты.Добавить("ТестДолжен_ПроверитьИтогПоКолонкеСОписаниемТипов_СтрокаДата");
7070

7171
ВсеТесты.Добавить("ТестДолжен_ПроверитьИсключениеПриНеверноИмениКолонкиВОтборе");
72+
ВсеТесты.Добавить("ТестДолжен_ПроверитьЗапятуюВИменахКолонок_БезПустых");
73+
ВсеТесты.Добавить("ТестДолжен_ПроверитьЗапятуюВИменахКолонок_СПустыми");
7274

7375
Возврат ВсеТесты;
7476

@@ -1136,3 +1138,27 @@
11361138
ВызватьИсключение "Ожидали исключение, но его не было";
11371139
КонецПроцедуры
11381140

1141+
Процедура ТестДолжен_ПроверитьЗапятуюВИменахКолонок_БезПустых() Экспорт
1142+
ТЗ = Новый ТаблицаЗначений();
1143+
ТЗ.Колонки.Добавить("Тест");
1144+
ТЗ.Колонки.Добавить("Тест2");
1145+
ТЗ.Добавить().Тест = -3;
1146+
ТЗ.Добавить().Тест = 7;
1147+
ТЗ.Свернуть(", Тест" , "Тест2,");
1148+
КонецПроцедуры
1149+
1150+
Процедура ТестДолжен_ПроверитьЗапятуюВИменахКолонок_СПустыми() Экспорт
1151+
ТЗ = Новый ТаблицаЗначений();
1152+
ТЗ.Колонки.Добавить("Тест");
1153+
ТЗ.Колонки.Добавить("Тест2");
1154+
ТЗ.Добавить().Тест = -3;
1155+
ТЗ.Добавить().Тест = 7;
1156+
1157+
Попытка
1158+
ТЗ.Свернуть("Тест, " , "Тест2");
1159+
Исключение
1160+
Возврат;
1161+
КонецПопытки;
1162+
1163+
ВызватьИсключение "Ожидали исключение, но его не было";
1164+
КонецПроцедуры

0 commit comments

Comments
 (0)