Skip to content

Commit bb7f09f

Browse files
committed
enable view join tests for tesseract
1 parent d7da863 commit bb7f09f

File tree

1 file changed

+75
-93
lines changed

1 file changed

+75
-93
lines changed

packages/cubejs-schema-compiler/test/integration/postgres/views-join-order-join-maps.test.ts

Lines changed: 75 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -130,102 +130,84 @@ cube('D', {
130130
`
131131
);
132132

133-
if (getEnv('nativeSqlPlanner')) {
134-
it('querying A member proxied to leaf D', () => {
135-
// TODO: Fix in tesseract
136-
});
137-
} else {
138-
it('querying A member proxied to leaf D', async () => {
139-
const [sql, _params] = await dbRunner.runQueryTest({
140-
dimensions: [
141-
'View.A_id',
142-
'View.A_name',
143-
'View.A_d_name',
144-
],
145-
timeDimensions: [],
146-
segments: [],
147-
filters: [],
148-
total: true,
149-
}, transformResultsForTesseractIfNeeded([{
150-
view___a_id: 1,
151-
view___a_name: 'a',
152-
view___a_d_name: 'd3',
153-
}]), { compiler, joinGraph, cubeEvaluator });
133+
it('querying A member proxied to leaf D', async () => {
134+
const [sql, _params] = await dbRunner.runQueryTest({
135+
dimensions: [
136+
'View.A_id',
137+
'View.A_name',
138+
'View.A_d_name',
139+
],
140+
timeDimensions: [],
141+
segments: [],
142+
filters: [],
143+
total: true,
144+
}, transformResultsForTesseractIfNeeded([{
145+
view___a_id: 1,
146+
view___a_name: 'a',
147+
view___a_d_name: 'd3',
148+
}]), { compiler, joinGraph, cubeEvaluator });
154149

155-
expect(sql).toMatch(/AS "b"/);
156-
expect(sql).toMatch(/AS "c"/);
157-
expect(sql).toMatch(/AS "d"/);
158-
expect(sql).toMatch(/ON "a".id = "b".fk/);
159-
expect(sql).toMatch(/ON "b".id = "c".fk/);
160-
expect(sql).toMatch(/ON "c".id = "d".fk_d/);
161-
expect(sql).not.toMatch(/ON "a".id = "d".fk/);
162-
});
163-
}
150+
expect(sql).toMatch(/AS "b"/);
151+
expect(sql).toMatch(/AS "c"/);
152+
expect(sql).toMatch(/AS "d"/);
153+
expect(sql).toMatch(/ON "a".id = "b".fk/);
154+
expect(sql).toMatch(/ON "b".id = "c".fk/);
155+
expect(sql).toMatch(/ON "c".id = "d".fk_d/);
156+
expect(sql).not.toMatch(/ON "a".id = "d".fk/);
157+
});
164158

165-
if (getEnv('nativeSqlPlanner')) {
166-
it('querying A member proxied to non-leaf C', () => {
167-
// TODO: Fix in tesseract
168-
});
169-
} else {
170-
it('querying A member proxied to non-leaf C', async () => {
171-
const [sql, _params] = await dbRunner.runQueryTest({
172-
dimensions: [
173-
'View.A_id',
174-
'View.A_name',
175-
'View.A_c_name',
176-
],
177-
timeDimensions: [],
178-
segments: [],
179-
filters: [],
180-
total: true,
181-
}, transformResultsForTesseractIfNeeded([{
182-
view___a_id: 1,
183-
view___a_name: 'a',
184-
view___a_c_name: 'c1',
185-
}]), { compiler, joinGraph, cubeEvaluator });
159+
it('querying A member proxied to non-leaf C', async () => {
160+
const [sql, _params] = await dbRunner.runQueryTest({
161+
dimensions: [
162+
'View.A_id',
163+
'View.A_name',
164+
'View.A_c_name',
165+
],
166+
timeDimensions: [],
167+
segments: [],
168+
filters: [],
169+
total: true,
170+
}, transformResultsForTesseractIfNeeded([{
171+
view___a_id: 1,
172+
view___a_name: 'a',
173+
view___a_c_name: 'c1',
174+
}]), { compiler, joinGraph, cubeEvaluator });
186175

187-
expect(sql).toMatch(/AS "b"/);
188-
expect(sql).toMatch(/AS "c"/);
189-
expect(sql).toMatch(/ON "a".id = "b".fk/);
190-
expect(sql).toMatch(/ON "b".id = "c".fk/);
191-
expect(sql).not.toMatch(/ON "c".id = "d".fk_d/);
192-
expect(sql).not.toMatch(/AS "d"/);
193-
expect(sql).not.toMatch(/ON "a".id = "c".fk_a/);
194-
});
195-
}
176+
expect(sql).toMatch(/AS "b"/);
177+
expect(sql).toMatch(/AS "c"/);
178+
expect(sql).toMatch(/ON "a".id = "b".fk/);
179+
expect(sql).toMatch(/ON "b".id = "c".fk/);
180+
expect(sql).not.toMatch(/ON "c".id = "d".fk_d/);
181+
expect(sql).not.toMatch(/AS "d"/);
182+
expect(sql).not.toMatch(/ON "a".id = "c".fk_a/);
183+
});
196184

197-
if (getEnv('nativeSqlPlanner')) {
198-
it('querying A member proxied to non-leaf C', () => {
199-
// TODO: Fix in tesseract
200-
});
201-
} else {
202-
it('querying A member proxied to non-leaf C', async () => {
203-
const [sql, _params] = await dbRunner.runQueryTest({
204-
dimensions: [
205-
'View.A_id',
206-
'View.A_name',
207-
'View.A_c_name',
208-
'View.A_d_name',
209-
],
210-
timeDimensions: [],
211-
segments: [],
212-
filters: [],
213-
total: true,
214-
}, transformResultsForTesseractIfNeeded([{
215-
view___a_id: 1,
216-
view___a_name: 'a',
217-
view___a_c_name: 'c1',
218-
view___a_d_name: 'd3',
219-
}]), { compiler, joinGraph, cubeEvaluator });
185+
it('querying A member proxied to non-leaf C', async () => {
186+
const [sql, _params] = await dbRunner.runQueryTest({
187+
dimensions: [
188+
'View.A_id',
189+
'View.A_name',
190+
'View.A_c_name',
191+
'View.A_d_name',
192+
],
193+
timeDimensions: [],
194+
segments: [],
195+
filters: [],
196+
total: true,
197+
}, transformResultsForTesseractIfNeeded([{
198+
view___a_id: 1,
199+
view___a_name: 'a',
200+
view___a_c_name: 'c1',
201+
view___a_d_name: 'd3',
202+
}]), { compiler, joinGraph, cubeEvaluator });
220203

221-
expect(sql).toMatch(/AS "b"/);
222-
expect(sql).toMatch(/AS "c"/);
223-
expect(sql).toMatch(/AS "d"/);
224-
expect(sql).toMatch(/ON "a".id = "b".fk/);
225-
expect(sql).toMatch(/ON "b".id = "c".fk/);
226-
expect(sql).toMatch(/ON "c".id = "d".fk_d/);
227-
expect(sql).not.toMatch(/ON "a".id = "c".fk_a/);
228-
expect(sql).not.toMatch(/ON "a".id = "d".fk/);
229-
});
230-
}
204+
expect(sql).toMatch(/AS "b"/);
205+
expect(sql).toMatch(/AS "c"/);
206+
expect(sql).toMatch(/AS "d"/);
207+
expect(sql).toMatch(/ON "a".id = "b".fk/);
208+
expect(sql).toMatch(/ON "b".id = "c".fk/);
209+
expect(sql).toMatch(/ON "c".id = "d".fk_d/);
210+
expect(sql).not.toMatch(/ON "a".id = "c".fk_a/);
211+
expect(sql).not.toMatch(/ON "a".id = "d".fk/);
212+
});
231213
});

0 commit comments

Comments
 (0)