From 7f8a2798181868045cf8bc94f13fba1d2536d305 Mon Sep 17 00:00:00 2001 From: Nadia Robakova Date: Tue, 12 Nov 2019 09:51:24 +0200 Subject: [PATCH] fix(grid): Remove check for lenght of change #6134 --- .../src/lib/grids/column.component.ts | 2 +- .../src/lib/grids/grid/column-group.spec.ts | 20 +++++++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/projects/igniteui-angular/src/lib/grids/column.component.ts b/projects/igniteui-angular/src/lib/grids/column.component.ts index 905a23dfd4f..a5874bebda2 100644 --- a/projects/igniteui-angular/src/lib/grids/column.component.ts +++ b/projects/igniteui-angular/src/lib/grids/column.component.ts @@ -1870,7 +1870,7 @@ export class IgxColumnGroupComponent extends IgxColumnComponent implements After */ this.children.changes.pipe(takeUntil(this.destroy$)) .subscribe((change) => { - if (change.length > 1 && change.first === this) { + if (change.first === this) { this.children.reset(this.children.toArray().slice(1)); this.children.forEach(child => { child.parent = this; diff --git a/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts b/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts index 9b49ccbe928..ed67ec7c570 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts +++ b/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts @@ -1570,21 +1570,29 @@ describe('IgxGrid - multi-column headers #grid', () => { expect(grid.columnList.length).toEqual(9); + expect(() => { + // Delete all column + fixture.componentInstance.columnGroups[0].columns.splice(0, 2); + fixture.detectChanges(); + }).not.toThrow(); + + expect(grid.columnList.length).toEqual(7); + expect(() => { // Add column fixture.componentInstance.columnGroups[0].columns.push({ field: 'Fax', type: 'string' }); fixture.detectChanges(); }).not.toThrow(); - expect(grid.columnList.length).toEqual(10); + expect(grid.columnList.length).toEqual(8); expect(() => { // Update column - fixture.componentInstance.columnGroups[0].columns[1] = { field: 'City', type: 'string' }; + fixture.componentInstance.columnGroups[0].columns[0] = { field: 'City', type: 'string' }; fixture.detectChanges(); }).not.toThrow(); - expect(grid.columnList.length).toEqual(10); + expect(grid.columnList.length).toEqual(8); }); }); @@ -1965,15 +1973,15 @@ export class DynamicColGroupsGridComponent { { columnHeader: 'First', columns: [ { field: 'ID', type: 'string' }, { field: 'CompanyName', type: 'string' }, - { field: 'ContactName', type: 'string' }, + { field: 'ContactName', type: 'string' } ]}, { columnHeader: 'Second', columns: [ { field: 'ContactTitle', type: 'string' }, - { field: 'Address', type: 'string' }, + { field: 'Address', type: 'string' } ]}, { columnHeader: 'Third', columns: [ { field: 'PostlCode', type: 'string' }, - { field: 'Contry', type: 'string' }, + { field: 'Contry', type: 'string' } ]}, ]; }