Skip to content

Commit 1a914c1

Browse files
authored
fix(filters): ensure 'is present' behaves as in forest-express-sequelize
2 parents 9bba9b8 + fb3d531 commit 1a914c1

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

src/services/filters-parser.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ function FiltersParser(model, timezone, options) {
135135
case 'not_contains':
136136
return { $not: new RegExp(`.*${parseFct(value)}.*`) };
137137
case 'present':
138-
return { $exists: true };
138+
return { $exists: true, $ne: null };
139139
case 'blank':
140140
return { $in: [null, ''] };
141141
case 'equal':

test/tests/services/filters-parser.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ describe('service > filters-parser', () => {
168168
expect(await defaultParser.formatOperatorValue('name', 'after', value)).toStrictEqual({ $gt: value });
169169
expect(await defaultParser.formatOperatorValue('name', 'not_contains', value)).toStrictEqual({ $not: new RegExp(`.*${value}.*`) });
170170
expect(await defaultParser.formatOperatorValue('name', 'not_equal', value)).toStrictEqual({ $ne: value });
171-
expect(await defaultParser.formatOperatorValue('name', 'present', value)).toStrictEqual({ $exists: true });
171+
expect(await defaultParser.formatOperatorValue('name', 'present', value)).toStrictEqual({ $exists: true, $ne: null });
172172
expect(await defaultParser.formatOperatorValue('name', 'equal', value)).toStrictEqual(value);
173173
expect(await defaultParser.formatOperatorValue('name', 'blank', value)).toStrictEqual({ $in: [null, ''] });
174174
});

0 commit comments

Comments
 (0)