mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-11-10 13:18:45 +02:00
Automatic update from web-platform-tests Fix scroll to text WPT flakiness Since stash.py polls until results are available, the tests can time out in a single threaded environment if the test page tries to fetch results before the target page stashes them. This patch moves the polling to stash.js instead, so that the target page is free to stash results. Also adds a window.close() call on the target page after stashing results, otherwise each test case leaves a leftover window which can slow down the test environment. Bug: https://github.com/web-platform-tests/wpt/issues/20269 Change-Id: Ia2df8f889596e91207aca92f6ecb290c9f96d201 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2018099 Commit-Queue: Nick Burris <nburris@chromium.org> Reviewed-by: Robert Ma <robertma@chromium.org> Cr-Commit-Position: refs/heads/master@{#735578} -- wpt-commits: 9912dbe9d6cb67fdfa3f86b662c1c205d5fd6242 wpt-pr: 21416
29 lines
753 B
JavaScript
29 lines
753 B
JavaScript
// Put test results into Stash
|
|
function stashResultsThenClose(key, results) {
|
|
fetch(`/scroll-to-text-fragment/stash.py?key=${key}`, {
|
|
method: 'POST',
|
|
body: JSON.stringify(results)
|
|
}).then(() => {
|
|
window.close();
|
|
});
|
|
}
|
|
|
|
// Fetch test results from the Stash
|
|
function fetchResults(key, resolve, reject) {
|
|
fetch(`/scroll-to-text-fragment/stash.py?key=${key}`).then(response => {
|
|
return response.text();
|
|
}).then(text => {
|
|
if (text) {
|
|
try {
|
|
const results = JSON.parse(text);
|
|
resolve(results);
|
|
} catch(e) {
|
|
reject();
|
|
}
|
|
} else {
|
|
// We keep trying to fetch results as the target page may not have stashed
|
|
// them yet.
|
|
fetchResults(key, resolve, reject);
|
|
}
|
|
});
|
|
}
|