fix(explore): Filters with custom SQL disappearing (#21114)

* fix(explore): Filters with custom SQL disappearing

* Fix adhoc filter for query b disappearing

* Improve test coverage
This commit is contained in:
Kamil Gabryjelski
2022-08-17 22:15:41 +02:00
committed by GitHub
parent 151795663b
commit 55304b02cd
4 changed files with 144 additions and 18 deletions

View File

@@ -30,6 +30,35 @@ const getExploreFormData = (overrides: JsonObject = {}) => ({
comparator: ['boys'],
filterOptionName: '123',
},
{
clause: 'WHERE' as const,
expressionType: 'SQL' as const,
operator: null,
subject: null,
comparator: null,
sqlExpression: "name = 'John'",
filterOptionName: '456',
},
{
clause: 'WHERE' as const,
expressionType: 'SQL' as const,
operator: null,
subject: null,
comparator: null,
sqlExpression: "city = 'Warsaw'",
filterOptionName: '567',
},
],
adhoc_filters_b: [
{
clause: 'WHERE' as const,
expressionType: 'SQL' as const,
operator: null,
subject: null,
comparator: null,
sqlExpression: "country = 'Poland'",
filterOptionName: '789',
},
],
applied_time_extras: {},
color_scheme: 'supersetColors',
@@ -111,6 +140,53 @@ const getExpectedResultFormData = (overrides: JsonObject = {}) => ({
comparator: ['boys'],
filterOptionName: '123',
},
{
clause: 'WHERE' as const,
expressionType: 'SQL' as const,
operator: null,
subject: null,
comparator: null,
sqlExpression: "name = 'John'",
filterOptionName: '456',
},
{
clause: 'WHERE' as const,
expressionType: 'SQL' as const,
operator: null,
subject: null,
comparator: null,
sqlExpression: "city = 'Warsaw'",
filterOptionName: '567',
},
{
clause: 'WHERE',
expressionType: 'SIMPLE',
operator: 'IN',
subject: 'name',
comparator: ['Aaron'],
isExtra: true,
filterOptionName: expect.any(String),
},
{
clause: 'WHERE',
expressionType: 'SIMPLE',
operator: '<=',
subject: 'num_boys',
comparator: 10000,
isExtra: true,
filterOptionName: expect.any(String),
},
],
adhoc_filters_b: [
{
clause: 'WHERE' as const,
expressionType: 'SQL' as const,
operator: null,
subject: null,
comparator: null,
sqlExpression: "country = 'Poland'",
filterOptionName: expect.any(String),
},
{
clause: 'WHERE',
expressionType: 'SIMPLE',