Так что для целей тестирования мне нужно иметь три IEnumerables типа <T>
. Один с двумя ветвями, один с одной ветвью, и один, содержащий только узел. Мне нужно создавать дополнительные тесты в гораздо более крупных древовидных структурах, которые потребуют больше итераций разных IEnumerables. В настоящее время мое (рабочее) решение выглядит примерно так. Но я не могу не думать, что я могу добавлять ветви по одному и устанавливать IEnumerables, равные друг другу на каждом шаге, или что-то подобное, чтобы ускорить процесс. Очевидно, что прямая реализация этого не будет работать, поскольку они являются ссылочными типами, поэтому в любом случае они будут иметь одинаковое значение, и в любом случае это будет довольно беспорядочно, если бы я работал над ним ... оставив меня немного застрявшим. Есть ли способ сделать это менее громоздким способом?Простой способ систематического создания новых узлов?
// Create test IEnumerables for comparison (one full, one with one branch, one of just node)
List<T> testlistfull, testlist1branch, testlistnode;
testlistnode = new List<T>();
testlistnode.Add(node0);
testlist1branch = new List<T>();
testlist1branch.Add(node0);
testlist1branch.Add(branch1);
testlistfull = new List<T>();
testlistfull.Add(node0);
testlistfull.Add(branch1);
testlistfull.Add(branch2);
IEnumerable<T> testenumfull = testlistfull as IEnumerable<T>;
IEnumerable<T> testenum1branch = testlist1branch as IEnumerable<T>;
IEnumerable<T> testenumnode = testlistnode as IEnumerable<T>;
Вау, я понятия не имел, что могу это сделать. Благодаря! – HavelTheGreat