Skip to content

Commit d569810

Browse files
committed
fix(grid): apply conditon on condition.logic, not on condition
1 parent 0557841 commit d569810

File tree

2 files changed

+6
-10
lines changed

2 files changed

+6
-10
lines changed

projects/igniteui-angular/src/lib/data-operations/filtering-strategy.spec.ts

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -51,15 +51,9 @@ describe('Unit testing FilteringStrategy', () => {
5151
});
5252
it ('tests `findMatchByExpression` for working with filtering operands with missing condition', () => {
5353
const rec = data[0];
54-
const expressionTree = new FilteringExpressionsTree(FilteringLogic.Or);
55-
expressionTree.filteringOperands = [
56-
{
57-
conditionName: 'contains',
58-
fieldName: 'string',
59-
ignoreCase: false,
60-
searchVal: 'ROW'
61-
}
62-
];
54+
const expressionTree = JSON.parse('{"filteringOperands":[{"fieldName":"Missing","condition":{"name":"notEmpty","isUnary":true,"iconName":"filter_not_empty"},"conditionName":"notEmpty","ignoreCase":true,"searchVal":null,"searchTree":null}],"operator":0,"returnFields":[],"type":1}');
55+
56+
6357
const res = fs.matchRecord(rec, expressionTree);
6458
expect(res).toBeFalsy();
6559
});

projects/igniteui-angular/src/lib/data-operations/filtering-strategy.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,9 @@ export abstract class BaseFilteringStrategy implements IFilteringStrategy {
4040
// protected
4141
public findMatchByExpression(rec: any, expr: IFilteringExpression, isDate?: boolean, isTime?: boolean, grid?: GridType): boolean {
4242
const val = this.getFieldValue(rec, expr.fieldName, isDate, isTime, grid);
43-
return expr.condition?.logic(val, expr.searchVal, expr.ignoreCase);
43+
if (expr.condition.logic) {
44+
return expr.condition?.logic(val, expr.searchVal, expr.ignoreCase);
45+
}
4446
}
4547

4648
// protected

0 commit comments

Comments
 (0)