Skip to content

Commit cc2638e

Browse files
fix: filter params being replaced by undefined (#44)
* fix: filter params being replaced by undefined * update tests * bump versions
1 parent b8c1d5b commit cc2638e

File tree

6 files changed

+38
-12
lines changed

6 files changed

+38
-12
lines changed

meerkat-browser/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devrev/meerkat-browser",
3-
"version": "0.0.59",
3+
"version": "0.0.60",
44
"dependencies": {
55
"@swc/helpers": "~0.5.0",
66
"@devrev/meerkat-core": "*",

meerkat-core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devrev/meerkat-core",
3-
"version": "0.0.59",
3+
"version": "0.0.60",
44
"dependencies": {
55
"@swc/helpers": "~0.5.0"
66
},

meerkat-core/src/filter-params/filter-params-ast.spec.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,7 @@ describe('getFilterByMemberKey', () => {
6868
},
6969
];
7070
const result = getFilterByMemberKey(filters, 'memberKey');
71-
expect(result).toEqual([
72-
{
73-
and: [],
74-
},
75-
]);
71+
expect(result).toEqual([]);
7672
});
7773
});
7874

meerkat-core/src/filter-params/filter-params-ast.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,7 @@ const traverseAndFilter = (
2525
.map((subFilter) => traverseAndFilter(subFilter, memberKey))
2626
.filter(Boolean) as GenericFilter[];
2727
const obj =
28-
filteredAndFilters.length > 0
29-
? { and: filteredAndFilters }
30-
: { and: filteredAndFilters };
28+
filteredAndFilters.length > 0 ? { and: filteredAndFilters } : null;
3129
return obj as LogicalAndFilter;
3230
}
3331

meerkat-node/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devrev/meerkat-node",
3-
"version": "0.0.59",
3+
"version": "0.0.60",
44
"dependencies": {
55
"@swc/helpers": "~0.5.0",
66
"@devrev/meerkat-core": "*",

meerkat-node/src/__tests__/cube-filter-params.spec.ts

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ describe('filter-param-tests', () => {
9797
expect(output[0].id).toBe(6);
9898
});
9999

100-
it('Should apply true filter if filters are not matching', async () => {
100+
it('Should apply true filter if no filters are present', async () => {
101101
const query = {
102102
measures: ['*'],
103103
filters: [],
@@ -109,4 +109,36 @@ describe('filter-param-tests', () => {
109109
const output: any = await duckdbExec(sql);
110110
expect(output).toHaveLength(7);
111111
});
112+
113+
it('Should apply true filter if filters are present but are not matching', async () => {
114+
const query = {
115+
measures: ['*'],
116+
filters: [
117+
{
118+
and: [
119+
{
120+
member: 'orders.amount',
121+
operator: 'gt',
122+
values: ['40'],
123+
},
124+
{
125+
or: [
126+
{
127+
member: 'orders.amount',
128+
operator: 'lt',
129+
values: ['200'],
130+
},
131+
],
132+
},
133+
],
134+
},
135+
],
136+
dimensions: [],
137+
};
138+
139+
const sql = await cubeQueryToSQL(query, SCHEMA);
140+
console.info('SQL: ', sql);
141+
const output: any = await duckdbExec(sql);
142+
expect(output).toHaveLength(4);
143+
});
112144
});

0 commit comments

Comments
 (0)