Skip to content

Commit 5e60b2c

Browse files
committed
fix EvilBeaver#1580.2: исключение ошибки типа в ЗагрузитьКолонку
1 parent 4242513 commit 5e60b2c

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,8 @@ public void LoadColumn(IValue values, IValue columnIndex)
121121
{
122122
// ValueTableColumn Column = Columns.GetColumnByIIndex(ColumnIndex);
123123
var row_iterator = _rows.GetEnumerator();
124-
var array_iterator = (values as ArrayImpl).GetEnumerator();
124+
var array_iterator = (values as ArrayImpl)?.GetEnumerator()
125+
?? throw RuntimeException.InvalidNthArgumentType(1);
125126

126127
Indexes.ClearIndexes();
127128

tests/valuetable.os

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
ВсеТесты.Добавить("ТестДолжен_ПроверитьСортировкуПоПредставлению");
5555

5656
ВсеТесты.Добавить("ТестДолжен_ПроверитьВставкуВнеРазмераТаблицы");
57+
ВсеТесты.Добавить("ТестДолжен_ПроверитьИсключениеПриЗагрузкеКолонки");
5758

5859
Возврат ВсеТесты;
5960

@@ -965,3 +966,17 @@
965966
юТест.ПроверитьРавенство(ТЗ[1].Тест, -2);
966967

967968
КонецПроцедуры
969+
970+
Процедура ТестДолжен_ПроверитьИсключениеПриЗагрузкеКолонки() Экспорт
971+
ТЗ = Новый ТаблицаЗначений();
972+
ТЗ.Колонки.Добавить("Тест");
973+
974+
Попытка
975+
ТЗ.ЗагрузитьКолонку(8,"Тест");
976+
Исключение
977+
юТест.ПроверитьРавенство(Найти(ИнформацияОбОшибке().Описание,"NullReferenceException"), 0, "NRE");
978+
Возврат;
979+
КонецПопытки;
980+
981+
ВызватьИсключение "Ожидали исключение, но его не было";
982+
КонецПроцедуры

0 commit comments

Comments
 (0)