private static IEnumerable <GenreNodeDto> CreateNodeCollection() { var root = new GenreNodeDto { Id = "1", Name = "Root" }; var subRoot = new GenreNodeDto { Id = "2", Name = "Sub root", ParentId = "1" }; var leaf = new GenreNodeDto { Id = "3", Name = "leaf", ParentId = "2" }; return(new List <GenreNodeDto> { root, subRoot, leaf }); }
private static IEnumerable <GenreNodeDto> GetChildren(GenreNodeDto root, IEnumerable <GenreNodeDto> source) { var children = source.Where(g => g.ParentId == root.Id); foreach (var child in children) { child.Children = GetChildren(child, source); } return(children); }
private static IEnumerable <GenreNodeDto> CreateExpectedGenreTree() { var leaf = new GenreNodeDto { Id = "3", Name = "leaf", ParentId = "2", Children = new List <GenreNodeDto>() }; var subRoot = new GenreNodeDto { Id = "2", Name = "Sub root", ParentId = "1", Children = new List <GenreNodeDto> { leaf } }; var root = new GenreNodeDto { Id = "1", Name = "Root", Children = new List <GenreNodeDto> { subRoot } }; return(new List <GenreNodeDto> { root }); }