| <!doctype html> |
| <html> |
| <title>Ensure images from available images list can be drawn to a canvas</title> |
| <link rel="help" href="https://html.spec.whatwg.org/multipage/#the-list-of-available-images"> |
| <meta charset="utf-8"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id="log"></div> |
| <script> |
| async_test(function(t) { |
| var i = new Image(); |
| i.onerror = t.unreached_func(); |
| i.onload = t.step_func(function() { |
| var i2 = new Image(); |
| // Potentially start multiple image loading tasks by performing several |
| // relevant mutations. This could lead to an invalid state later in an |
| // erroneous implementation. |
| i2.crossOrigin = true; |
| // Start an image loading task that is expected to short-circuit since |
| // the requested image is present in the list of available images. |
| i2.src = "3.jpg"; |
| i2.onerror = t.unreached_func(); |
| // Ensure the loaded image is in a state that is usable by a 2d canvas. |
| i2.onload = t.step_func_done(function() { |
| var c = document.createElement('canvas'); |
| var ctx = c.getContext('2d'); |
| ctx.drawImage(i2, 0, 0); |
| }); |
| }); |
| // Request an image which should be added to the list of available images. |
| i.src = "3.jpg"; |
| }); |
| </script> |