Skip to content

Commit c80b486

Browse files
committed
test(h-grid): check default value of inner query return fields
1 parent bf41866 commit c80b486

File tree

2 files changed

+34
-10
lines changed

2 files changed

+34
-10
lines changed

projects/igniteui-angular/src/lib/grids/grid/grid-filtering-advanced.spec.ts

Lines changed: 33 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import {
2020
IgxGridAdvancedFilteringWithToolbarComponent
2121
} from '../../test-utils/grid-samples.spec';
2222
import { FormattedValuesFilteringStrategy } from '../../data-operations/filtering-strategy';
23-
import { IgxHierarchicalGridTestBaseComponent, IgxHierGridExternalAdvancedFilteringComponent } from '../../test-utils/hierarchical-grid-components.spec';
23+
import { IgxHierarchicalGridExportComponent, IgxHierarchicalGridTestBaseComponent, IgxHierarchicalGridTestCustomToolbarComponent, IgxHierGridExternalAdvancedFilteringComponent } from '../../test-utils/hierarchical-grid-components.spec';
2424
import { IgxHierarchicalGridComponent } from '../hierarchical-grid/public_api';
2525
import { IFilteringEventArgs, IgxGridToolbarAdvancedFilteringComponent } from '../public_api';
2626
import { SampleTestData } from '../../test-utils/sample-test-data.spec';
@@ -1590,18 +1590,14 @@ describe('IgxGrid - Advanced Filtering #grid - ', () => {
15901590
// Populate edit inputs.
15911591
QueryBuilderFunctions.selectColumnInEditModeExpression(fix, 0); // Select 'ID' column.
15921592
QueryBuilderFunctions.selectOperatorInEditModeExpression(fix, 10); // Select 'In' operator.
1593-
1594-
// Select entity in nested level
1595-
QueryBuilderFunctions.selectEntityAndClickInitialAddCondition(fix, 0, 1);
1596-
// Select return field
1597-
QueryBuilderFunctions.selectFieldsInEditModeExpression(fix, [0], 1);
15981593
tick(100);
15991594
fix.detectChanges();
16001595

1601-
// Click the initial 'Add Condition' button of the query builder.
1602-
QueryBuilderFunctions.clickQueryBuilderInitialAddConditionBtn(fix, 1);
1603-
tick(100);
1604-
fix.detectChanges();
1596+
const entityInputGroup = QueryBuilderFunctions.getQueryBuilderEntitySelect(fix, 1).querySelector('input');
1597+
expect(entityInputGroup.value).toBe('childData');
1598+
1599+
const fieldInputGroup = QueryBuilderFunctions.getQueryBuilderFieldsCombo(fix, 1).querySelector('input');
1600+
expect(fieldInputGroup.value).toBe('ID');
16051601
// Populate edit inputs on level 1.
16061602
QueryBuilderFunctions.selectColumnInEditModeExpression(fix, 0, 1); // Select 'ID' column.
16071603
QueryBuilderFunctions.selectOperatorInEditModeExpression(fix, 0, 1); // Select 'Contains' operator.
@@ -1626,6 +1622,33 @@ describe('IgxGrid - Advanced Filtering #grid - ', () => {
16261622
expect(hgrid.rowList.length).toBe(5);
16271623
}));
16281624

1625+
it(`Should have correct return fields in the child query when there are multiple child entities.`, fakeAsync(() => {
1626+
const fixture = TestBed.createComponent(IgxHierarchicalGridExportComponent);
1627+
const hierarchicalGrid = fixture.componentInstance.hGrid;
1628+
hierarchicalGrid.allowAdvancedFiltering = true;
1629+
fixture.detectChanges();
1630+
1631+
hierarchicalGrid.openAdvancedFilteringDialog();
1632+
fixture.detectChanges();
1633+
1634+
// Click the initial 'Add Condition' button.
1635+
QueryBuilderFunctions.clickQueryBuilderInitialAddConditionBtn(fixture, 0);
1636+
tick(100);
1637+
fixture.detectChanges();
1638+
// Populate edit inputs.
1639+
QueryBuilderFunctions.selectColumnInEditModeExpression(fixture, 0); // Select 'Artist' column.
1640+
QueryBuilderFunctions.selectOperatorInEditModeExpression(fixture, 10); // Select 'In' operator.
1641+
tick(100);
1642+
fixture.detectChanges();
1643+
1644+
QueryBuilderFunctions.selectEntityInEditModeExpression(fixture, 0, 1);
1645+
tick(100);
1646+
fixture.detectChanges();
1647+
1648+
const fieldInputGroup = QueryBuilderFunctions.getQueryBuilderFieldsCombo(fixture, 1).querySelector('input');
1649+
expect(fieldInputGroup.value).toBe('Artist');
1650+
}));
1651+
16291652
it('Should correctly apply filtering expressions tree to the hgrid component through API.', fakeAsync(() => {
16301653
// Close Advanced Filtering dialog.
16311654
hgrid.closeAdvancedFilteringDialog(false);

projects/igniteui-angular/src/lib/test-utils/hierarchical-grid-components.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -484,6 +484,7 @@ export class IgxHierGridExternalAdvancedFilteringComponent extends IgxHierarchic
484484
<igx-column field="LaunchDate" header="Launch Date" [dataType]="'date'"></igx-column>
485485
<igx-column field="BillboardReview" header="Billboard Review"></igx-column>
486486
<igx-column field="USBillboard200" header="US Billboard 200"></igx-column>
487+
<igx-column field="Artist"></igx-column>
487488
<igx-row-island [key]="'Songs'" [allowFiltering]='true' [filterMode]="'excelStyleFilter'" [autoGenerate]="false">
488489
<igx-column field="Number" header="No."></igx-column>
489490
<igx-column field="Title"></igx-column>

0 commit comments

Comments
 (0)