NBuilder заполнить вложенный хэшсет
Я пытаюсь заполнить некоторые тестовые данные NBuilder ( https://github.com/nbuilder/nbuilder).
Вот мой класс:
public class Person
{
public string Name { get; set; }
public HashSet<int> AssociatedIds { get; set; }
}
Я хочу создать список людей, у которых есть случайный список целых чисел с диапазоном 1-50. Я не могу понять, как указать, что NBuilder должен заполнять список, и как мне установить ограничение. Код ниже оставляет список пустым.
var people = Builder<Person>.CreateListOfSize(123).Build();
Как я могу заполнить вложенный хэш-сет с правильным диапазоном?
1 ответ
Выяснили способ сделать это:
var people = Builder<Person>.CreateListOfSize(123)
.All()
.With(a => a.AssociatedIds =
Enumerable.Range(0, 50)
.Select(x => new Tuple<int,int>(new Random().Next(1,1000), x))
.OrderBy(x => x.Item1)
.Take(new Random().Next(1,50))
.Select(x => x.Item2)
.ToHashSet())
.Build();