@@ -237,6 +237,26 @@ describe('MatTree', () => {
237
237
} ) ;
238
238
} ) ;
239
239
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
+ } ) ;
240
260
describe ( 'nested tree' , ( ) => {
241
261
describe ( 'should initialize' , ( ) => {
242
262
let fixture : ComponentFixture < NestedMatTreeApp > ;
@@ -710,6 +730,29 @@ class MatTreeWithNullOrUndefinedChild {
710
730
hasChild = ( _ : number , node : ExampleFlatNode ) => node . expandable ;
711
731
}
712
732
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
+
713
756
@Component ( {
714
757
template : `
715
758
<mat-tree [dataSource]="dataSource" [treeControl]="treeControl">
0 commit comments