mirror of
https://github.com/apache/superset.git
synced 2026-05-30 04:39:20 +00:00
fix(reports): scope global spinner wait to non-tiled path only
The pre-branch viewport-only wait_for_function ran regardless of which
screenshot path was taken. For tiled screenshots, per-tile checks in
take_tiled_screenshot already handle every viewport as we scroll, so
the pre-branch check is redundant there. For non-tiled screenshots,
element.screenshot() captures the full element including below-the-fold
content, so a global (all-spinners) check is correct.
Move the global querySelector('.loading').length === 0 check into each
non-tiled branch and remove it from the pre-branch position, so:
- non-tiled path: global check (waits for all charts including below fold)
- tiled path: no pre-check; per-tile viewport checks in screenshot_utils
handle spinner detection tile by tile
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
committed by
Amin Ghadersohi
parent
081e58b33d
commit
9f37704fb4
@@ -684,16 +684,7 @@ class TestWebDriverPlaywrightErrorHandling:
|
||||
driver.get_screenshot("http://example.com", "test-element", mock_user)
|
||||
|
||||
mock_page.wait_for_function.assert_called_once_with(
|
||||
"""() => {
|
||||
const els = document.querySelectorAll('.loading');
|
||||
for (const el of els) {
|
||||
const r = el.getBoundingClientRect();
|
||||
if (r.top < window.innerHeight && r.bottom > 0) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}""",
|
||||
"() => document.querySelectorAll('.loading').length === 0",
|
||||
timeout=60 * 1000,
|
||||
)
|
||||
# Guard against reintroducing the old snapshot-based approach
|
||||
|
||||
Reference in New Issue
Block a user