mirror of
https://github.com/apache/superset.git
synced 2026-05-11 10:55:43 +00:00
Address /review-code findings — the previous round's hardening fixed flake but a few assertions still gave weak signals: - The chart-rendered selector matched a still-loading chart cell, since Superset's `Loading` spinner itself renders an SVG. Exclude the spinner via `:not(:has([data-test="loading-indicator"]))` and centralize the selector as `EmbeddedPage.RENDERED_CHART_SELECTOR`. - The "dashboard renders" test only proved iframe/header chrome, not the dashboard. Add `waitForChartRendered()` so the test name matches what it asserts. - The `hideTitle` test passed for the wrong reason if the locator drifted (`toBeHidden()` succeeds for absent elements). Add an explicit `toHaveCount(0)` so the contrast against the baseline visibility check in test 1 is load-bearing. - `tokenCallCount` was a `>=1` check that any rendered dashboard would satisfy. Tighten to `=== 1` to actually exercise the SDK's caching contract. - Drop the redundant `appUrl` shadow of `appServer.url`. - Move `import os` to module top in the docker-light config; document the strict `"true"`-only env-var truthiness convention. Pre-commit clean (type-check, prettier, oxlint, ruff, mypy). Local re-verification blocked by an unrelated worktree env issue (semantic layers feature has incomplete state — the docker-compose-light stack doesn't bind-mount superset-core/, so the image's stale copy lacks the new submodule); CI on the chromium-embedded project will validate. Changes are strictly stronger assertions and refactors so they cannot turn a previously-passing test into a false positive. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>