@@ -237,6 +237,26 @@ describe('MatTree', () => {
237237 } ) ;
238238 } ) ;
239239
240+ describe ( 'nested tree with undefined or null children' , ( ) => {
241+ describe ( 'should initialize' , ( ) => {
242+ let fixture : ComponentFixture < MatNestedTreeWithNullOrUndefinedChild > ;
243+
244+ beforeEach ( ( ) => {
245+ configureMatTreeTestingModule ( [ MatNestedTreeWithNullOrUndefinedChild ] ) ;
246+ fixture = TestBed . createComponent ( MatNestedTreeWithNullOrUndefinedChild ) ;
247+ treeElement = fixture . nativeElement . querySelector ( 'mat-tree' ) ;
248+
249+ fixture . detectChanges ( ) ;
250+ } ) ;
251+
252+ it ( 'with rendered dataNodes' , ( ) => {
253+ const nodes = getNodes ( treeElement ) ;
254+
255+ expect ( nodes ) . toBeDefined ( 'Expect nodes to be defined' ) ;
256+ expect ( nodes [ 0 ] . classList ) . toContain ( 'customNodeClass' ) ;
257+ } ) ;
258+ } ) ;
259+ } ) ;
240260 describe ( 'nested tree' , ( ) => {
241261 describe ( 'should initialize' , ( ) => {
242262 let fixture : ComponentFixture < NestedMatTreeApp > ;
@@ -710,6 +730,29 @@ class MatTreeWithNullOrUndefinedChild {
710730 hasChild = ( _ : number , node : ExampleFlatNode ) => node . expandable ;
711731}
712732
733+ @Component ( {
734+ template : `
735+ <mat-tree [dataSource]="dataSource" [treeControl]="treeControl">
736+ <mat-nested-tree-node *matTreeNodeDef="let node" class="customNodeClass">
737+ {{node.name}}
738+ <ng-template matTreeNodeOutlet></ng-template>
739+ </mat-nested-tree-node>
740+ </mat-tree>
741+ `
742+ } )
743+ class MatNestedTreeWithNullOrUndefinedChild {
744+ treeControl : NestedTreeControl < FoodNode > ;
745+ dataSource : MatTreeNestedDataSource < FoodNode > ;
746+
747+ constructor ( ) {
748+ this . treeControl = new NestedTreeControl < FoodNode > ( this . getChildren ) ;
749+ this . dataSource = new MatTreeNestedDataSource ( ) ;
750+ this . dataSource . data = TREE_DATA ;
751+ }
752+
753+ private getChildren = ( node : FoodNode ) => node . children ;
754+ }
755+
713756@Component ( {
714757 template : `
715758 <mat-tree [dataSource]="dataSource" [treeControl]="treeControl">
0 commit comments