| <!DOCTYPE html> |
| <script src=../../resources/testharness.js></script> |
| <script src=../../resources/testharnessreport.js></script> |
| <script> |
| // This test verifies that captureStream() throws the right exceptions. |
| |
| test(function() { |
| var canvas = document.createElement('canvas'); |
| assert_throws_dom("NotSupportedError", function() { canvas.captureStream(-0.5) }, |
| "cannot have negative frame rate"); |
| }, 'check captureStream() throws Exception with invalid frame rate'); |
| |
| function makeAsyncTest() { |
| return async_test(function(test) { |
| var canvas = document.createElement('canvas'); |
| var ctx = canvas.getContext("2d"); |
| |
| var image = document.createElement('img'); |
| image.onerror = test.step_func(function() { assert_not_reached("image loading failed"); }); |
| image.onload = test.step_func(function() { |
| var pattern = ctx.createPattern(image, 'repeat'); |
| ctx.fillStyle = pattern; |
| ctx.fillRect(0, 0, 100, 100); |
| |
| assert_throws_dom("SecurityError", function() { canvas.captureStream() }, |
| "cannot have cross origin"); |
| test.done(); |
| }); |
| image.src = "resources/svg-with-image-with-foreignobject.svg"; |
| }, 'check captureStream() throws Exception with cross origin content'); |
| } |
| |
| makeAsyncTest(); |
| |
| </script> |