data-url.html (1131B)
1 <!doctype html> 2 <meta charset="utf-8"> 3 <title>data URL image</title> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <div id=log></div> 7 <script> 8 setup({ single_test: true }); 9 10 var c = document.createElement("canvas"), 11 con = c.getContext("2d"), 12 img = document.createElement("img") 13 img.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAA+UlEQVR4nO3RoRHAQBDEsOu/6YR+B2sgIO4Z3919pMwDMCRtHoAhafMADEmbB2BI2jwAQ9LmARiSNg/AkLR5AIakzQMwJG0egCFp8wAMSZsHYEjaPABD0uYBGJI2D8CQtHkAhqTNAzAkbR6AIWnzAAxJmwdgSNo8AEPS5gEYkjYPwJC0eQCGpM0DMCRtHoAhafMADEmbB2BI2jwAQ9LmARiSNg/AkLR5AIakzQMwJG0egCFp8wAMSZsHYEjaPABD0uYBGJI2D8CQtHkAhqTNAzAkbR6AIWnzAAxJmwdgSNo8AEPS5gEYkjYPwJC0eQCGpM0DMCRtHsDjB5K06yueJFXJAAAAAElFTkSuQmCC" 14 img.onload = () => { 15 con.drawImage(img, 0, 0) 16 var data = con.getImageData(0, 0, 10, 10) // should not throw as data URLs are same-origin 17 for(var i = 0; i < data.data.length; i++) { 18 var expected = ((i+1) % 4 == 0) ? 255 : 0 19 assert_equals(data.data[i], expected) 20 } 21 c.toDataURL() // shouldn't throw either 22 done() 23 } 24 </script>