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