// 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);
}
});
}