shared-storage-writable-img-request-in-sandboxed-iframe-inner.https.sub.html (1117B)
1 <!doctype html> 2 <body> 3 <script src=/resources/testharness.js></script> 4 <script src=/shared-storage/resources/util.js></script> 5 <script> 6 7 async function init() { 8 // Create image that sets (expectedKey, expectedValue) to shared storage 9 // via response header. 10 let {expectedKey, expectedValue} = parseExpectedKeyAndValueData(); 11 const imgSrc = 12 `/shared-storage/resources/shared-storage-writable-pixel.png` 13 + `?key=${expectedKey}&value=${expectedValue}`; 14 let image = document.createElement('img'); 15 image.src = imgSrc; 16 image.sharedStorageWritable = true; 17 18 let parentOrOpener = window.opener || window.parent; 19 const promise = new Promise((resolve, reject) => { 20 image.addEventListener('load', () => { 21 parentOrOpener.postMessage({sharedStorageImageLoadStatus: "success"}, "*"); 22 resolve(); 23 }); 24 image.addEventListener('error', () => { 25 parentOrOpener.postMessage({sharedStorageImageLoadStatus: error}, "*"); 26 reject(error); 27 }); 28 }); 29 30 // Navigate and wait for image load. 31 document.body.appendChild(image); 32 await promise; 33 } 34 35 init(); 36 </script> 37 </body>