Skip to content

Commit d175656

Browse files
committed
Update UI integration test suite
Signed-off-by: Andrew Stein <steinlink@gmail.com>
1 parent 8669501 commit d175656

57 files changed

Lines changed: 2499 additions & 1651 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.devcontainer/devcontainer.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,13 @@
1414

1515
"features": {
1616
"ghcr.io/devcontainers/features/rust:1": {},
17-
"ghcr.io/devcontainers-extra/features/pnpm:2": {}
17+
"ghcr.io/devcontainers/features/node:1": {
18+
"version": "22"
19+
},
20+
"ghcr.io/devcontainers-extra/features/pnpm:2": {},
21+
"ghcr.io/devcontainers/features/python:1": {
22+
"version": "3.14"
23+
}
1824
},
1925

2026
"postCreateCommand": "./.devcontainer/postcreate.sh"

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ __pycache__/
99
.clangd
1010
.DS_Store
1111
.emsdk
12+
.pnpm-store
1213
.ipynb_checkpoints
1314
.perspectiverc
1415
.vscode/*

docs/src/components/Demo/layouts.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ export const LAYOUTS = {
3131
fg_gradient: 17.4,
3232
},
3333
},
34+
group_rollup_mode: "rollup",
3435
settings: true,
3536
title: "Market Monitor",
3637
group_by: ["name"],
@@ -52,6 +53,7 @@ export const LAYOUTS = {
5253
plugin: "datagrid",
5354
title: "Blotter",
5455
columns: ["ask", "bid", "chg"],
56+
group_rollup_mode: "rollup",
5557
sort: [
5658
["name", "desc"],
5759
["lastUpdate", "desc"],
@@ -63,6 +65,7 @@ export const LAYOUTS = {
6365
},
6466
"x bar": {
6567
title: "Px (Δ)",
68+
group_rollup_mode: "flat",
6669
columns: ["chg"],
6770
plugin: "X Bar",
6871
sort: [["chg", "asc"]],
@@ -71,6 +74,7 @@ export const LAYOUTS = {
7174
},
7275
"y line": {
7376
title: "Time Series (Px)",
77+
group_rollup_mode: "flat",
7478
plugin: "Y Line",
7579
group_by: ["lastUpdate"],
7680
split_by: [],
@@ -81,6 +85,7 @@ export const LAYOUTS = {
8185
},
8286
"xy scatter": {
8387
title: "Spread Scatter",
88+
group_rollup_mode: "flat",
8489
plugin: "X/Y Scatter",
8590
group_by: ["name"],
8691
split_by: [],
@@ -90,6 +95,7 @@ export const LAYOUTS = {
9095
},
9196
treemap: {
9297
plugin: "Treemap",
98+
group_rollup_mode: "flat",
9399
title: "Volume Map",
94100
group_by: ["name", "client"],
95101
split_by: [],
@@ -101,6 +107,7 @@ export const LAYOUTS = {
101107
],
102108
},
103109
heatmap: {
110+
group_rollup_mode: "flat",
104111
title: "Spread Heatmap",
105112
columns: ["name"],
106113
plugin: "Heatmap",

examples/blocks/src/dataset/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,13 +175,13 @@
175175
const make_run_click_callback = (state) => async () => {
176176
state.table?.delete?.({ lazy: true });
177177
state.table = gen_data();
178-
await window.psp_workspace.addTable("superstore", state.table);
178+
// await window.psp_workspace.addTable("superstore", state.table);
179179
};
180180

181181
const make_del_click_callback = (state) => async () => {
182182
if (state.table) {
183183
// await viewer.eject();
184-
await window.psp_workspace.removeTable("superstore");
184+
// await window.psp_workspace.removeTable("superstore");
185185
await state.table.then((x) => x.delete({ lazy: true }));
186186
state.table = undefined;
187187
}

packages/viewer-d3fc/test/js/axisLabel.spec.ts

Lines changed: 32 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ function confirmDataIsNotEpochForm(dateValues: any[]) {
6060
test.describe("Axis Values With Grouped Data With A Date Field In The Group", () => {
6161
test("X Bar y-axis label with grouped data", async ({ page }) => {
6262
await page.click('div[data-plugin="X Bar"]');
63-
await page.waitForSelector("perspective-viewer");
63+
await page.waitForSelector("perspective-viewer-d3fc-xbar");
6464

6565
const dateValues = await page.evaluate(async () => {
6666
let viewer = document.querySelector("perspective-viewer");
@@ -93,7 +93,7 @@ test.describe("Axis Values With Grouped Data With A Date Field In The Group", ()
9393

9494
test("Y Bar x-axis label with grouped data", async ({ page }) => {
9595
await page.click('div[data-plugin="Y Bar"]');
96-
await page.waitForSelector("perspective-viewer");
96+
await page.waitForSelector("perspective-viewer-d3fc-ybar");
9797

9898
const dateValues = await page.evaluate(async () => {
9999
let viewer = document.querySelector("perspective-viewer");
@@ -126,7 +126,7 @@ test.describe("Axis Values With Grouped Data With A Date Field In The Group", ()
126126

127127
test("OHLC x-axis label with grouped data", async ({ page }) => {
128128
await page.click('div[data-plugin="OHLC"]');
129-
await page.waitForSelector("perspective-viewer");
129+
await page.waitForSelector("perspective-viewer-d3fc-ohlc");
130130

131131
const dateValues = await page.evaluate(async () => {
132132
let viewer = document.querySelector("perspective-viewer");
@@ -159,40 +159,44 @@ test.describe("Axis Values With Grouped Data With A Date Field In The Group", ()
159159

160160
test("Heatmap x-axis label with grouped data", async ({ page }) => {
161161
await page.click('div[data-plugin="Heatmap"]');
162-
await page.waitForSelector("perspective-viewer");
162+
await page.waitForSelector("perspective-viewer-d3fc-heatmap");
163163

164-
const dateValues = await page.evaluate(async () => {
165-
let viewer = document.querySelector("perspective-viewer");
164+
const dateValues = await page
165+
.evaluate(async () => {
166+
let viewer = document.querySelector("perspective-viewer");
166167

167-
if (!viewer) {
168-
return Error("Invalid Viewer");
169-
}
168+
if (!viewer) {
169+
return Error("Invalid Viewer");
170+
}
170171

171-
const plugin_element = viewer.querySelector(
172-
`perspective-viewer-d3fc-heatmap`,
173-
);
172+
const plugin_element = viewer.querySelector(
173+
`perspective-viewer-d3fc-heatmap`,
174+
);
174175

175-
if (!plugin_element) {
176-
throw Error("Invalid Plugin Element");
177-
}
176+
if (!plugin_element) {
177+
throw Error("Invalid Plugin Element");
178+
}
178179

179-
const shadowRoot = plugin_element.shadowRoot;
180-
const dateTextElements = shadowRoot.querySelectorAll(
181-
"div d3fc-group d3fc-svg.x-axis.bottom-axis svg g.group:last-child g.tick text",
182-
);
180+
const shadowRoot = plugin_element.shadowRoot;
181+
const dateTextElements = shadowRoot.querySelectorAll(
182+
"div d3fc-group d3fc-svg.x-axis.bottom-axis svg g.group:last-child g.tick text",
183+
);
183184

184-
// collect and return the actual date data to be used.
185-
return Array.from(dateTextElements).map((el) =>
186-
el.textContent?.trim(),
187-
);
188-
});
185+
// collect and return the actual date data to be used.
186+
return Array.from(dateTextElements).map((el) =>
187+
el.textContent?.trim(),
188+
);
189+
})
190+
.catch((e) => e);
191+
192+
await page.pause();
189193

190194
confirmDataIsNotEpochForm(dateValues);
191195
});
192196

193197
test("Y Line x-axis label with grouped data", async ({ page }) => {
194198
await page.click('div[data-plugin="Y Line"]');
195-
await page.waitForSelector("perspective-viewer");
199+
await page.waitForSelector("perspective-viewer-d3fc-yline");
196200

197201
const dateValues = await page.evaluate(async () => {
198202
let viewer = document.querySelector("perspective-viewer");
@@ -225,7 +229,7 @@ test.describe("Axis Values With Grouped Data With A Date Field In The Group", ()
225229

226230
test("Y Area x-axis label with grouped data", async ({ page }) => {
227231
await page.click('div[data-plugin="Y Area"]');
228-
await page.waitForSelector("perspective-viewer");
232+
await page.waitForSelector("perspective-viewer-d3fc-yarea");
229233

230234
const dateValues = await page.evaluate(async () => {
231235
let viewer = document.querySelector("perspective-viewer");
@@ -258,7 +262,7 @@ test.describe("Axis Values With Grouped Data With A Date Field In The Group", ()
258262

259263
test("Y Scatter x-axis label with grouped data", async ({ page }) => {
260264
await page.click('div[data-plugin="Y Scatter"]');
261-
await page.waitForSelector("perspective-viewer");
265+
await page.waitForSelector("perspective-viewer-d3fc-yscatter");
262266

263267
const dateValues = await page.evaluate(async () => {
264268
let viewer = document.querySelector("perspective-viewer");
@@ -291,7 +295,7 @@ test.describe("Axis Values With Grouped Data With A Date Field In The Group", ()
291295

292296
test("CandleStick x-axis label with grouped data", async ({ page }) => {
293297
await page.click('div[data-plugin="Candlestick"]');
294-
await page.waitForSelector("perspective-viewer");
298+
await page.waitForSelector("perspective-viewer-d3fc-candlestick");
295299

296300
const dateValues = await page.evaluate(async () => {
297301
let viewer = document.querySelector("perspective-viewer");

packages/viewer-d3fc/test/js/line.spec.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,7 @@ test.describe("Line regressions", () => {
7272
?.shadowRoot?.innerHTML;
7373
});
7474

75-
compareContentsToSnapshot(out!, [
76-
"line-charts-denser-than-one-second-regression.txt",
77-
]);
75+
await compareContentsToSnapshot(out!);
7876
});
7977

8078
test("Zoom on a chart with split Y axis renders the right axis", async ({

0 commit comments

Comments
 (0)