Skip to content

Commit ebf21ef

Browse files
authored
Merge branch 'master' into mvenkov/sync-column-editable-with-roweditable
2 parents 662d6ae + 724a082 commit ebf21ef

File tree

3 files changed

+41
-4
lines changed

3 files changed

+41
-4
lines changed

projects/igniteui-angular/src/lib/grids/tree-grid/tree-grid-crud.spec.ts

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,43 @@ describe('IgxTreeGrid - CRUD ', () => {
296296
verifyTreeGridRecordsCount(fix, 3, 8);
297297
verifyProcessedTreeGridRecordsCount(fix, 3, 8);
298298
});
299+
300+
it('should support adding child rows to a parent with ID=0 through treeGrid API', () => {
301+
verifyRowsCount(fix, 8, 8);
302+
verifyTreeGridRecordsCount(fix, 3, 8);
303+
verifyProcessedTreeGridRecordsCount(fix, 3, 8);
304+
305+
// Add child row with ID=0 on root level
306+
spyOn(treeGrid.onRowAdded, 'emit');
307+
let newRow = {
308+
ID: 0,
309+
Name: 'New Employee 1',
310+
JobTitle: 'Senior Web Developer',
311+
Age: 33
312+
};
313+
treeGrid.addRow(newRow);
314+
fix.detectChanges();
315+
316+
expect(treeGrid.onRowAdded.emit).toHaveBeenCalledWith({ data: newRow });
317+
verifyRowsCount(fix, 9, 9);
318+
verifyTreeGridRecordsCount(fix, 4, 9);
319+
verifyProcessedTreeGridRecordsCount(fix, 4, 9);
320+
321+
// Add child row to the parent with ID=0
322+
newRow = {
323+
ID: 333,
324+
Name: 'New Employee 2',
325+
JobTitle: 'Senior Web Developer',
326+
Age: 33
327+
};
328+
treeGrid.addRow(newRow, 0);
329+
fix.detectChanges();
330+
331+
expect(treeGrid.onRowAdded.emit).toHaveBeenCalledWith({ data: newRow });
332+
verifyRowsCount(fix, 10, 10);
333+
verifyTreeGridRecordsCount(fix, 4, 10);
334+
verifyProcessedTreeGridRecordsCount(fix, 4, 10);
335+
});
299336
});
300337
});
301338

projects/igniteui-angular/src/lib/grids/tree-grid/tree-grid-integration.spec.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -855,7 +855,7 @@ describe('IgxTreeGrid - Integration ', () => {
855855
const grandChildRow = { ID: 13, ParentID: 12, Name: 'Asparuh Pulev', JobTitle: 'wrestler', Age: 14 };
856856
const trans = treeGrid.transactions;
857857

858-
treeGrid.addRow(rootRow, 0);
858+
treeGrid.addRow(rootRow);
859859
fix.detectChanges();
860860

861861
treeGrid.addRow(childRow, 11);
@@ -930,7 +930,7 @@ describe('IgxTreeGrid - Integration ', () => {
930930
JobTitle: 'Copywriter',
931931
Age: 22
932932
};
933-
treeGrid.addRow(newRow, 0);
933+
treeGrid.addRow(newRow);
934934
fix.detectChanges();
935935

936936
const addedRow = treeGrid.rowList.filter(r => r.rowID === addedRowId)[0] as IgxTreeGridRowComponent;
@@ -1356,7 +1356,7 @@ describe('IgxTreeGrid - Integration ', () => {
13561356
const grandChildRow = { ID: 13, ParentID: 12, Name: 'Asparuh Pulev', JobTitle: 'wrestler', Age: 14 };
13571357
const trans = treeGrid.transactions;
13581358

1359-
treeGrid.addRow(rootRow, 0);
1359+
treeGrid.addRow(rootRow);
13601360
fix.detectChanges();
13611361

13621362
treeGrid.addRow(childRow, 11);

projects/igniteui-angular/src/lib/grids/tree-grid/tree-grid.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -599,7 +599,7 @@ export class IgxTreeGridComponent extends IgxGridBaseComponent implements IGridD
599599
* @memberof IgxTreeGridComponent
600600
*/
601601
public addRow(data: any, parentRowID?: any) {
602-
if (parentRowID) {
602+
if (parentRowID !== undefined && parentRowID !== null) {
603603
super.endEdit(true);
604604

605605
const state = this.transactions.getState(parentRowID);

0 commit comments

Comments
 (0)