| <!DOCTYPE html> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/common/canvas-tests.js"></script> |
| <link rel="help" href="https://html.spec.whatwg.org/#dom-canvas-transfercontroltooffscreen"> |
| <script> |
| |
| test(function() { |
| var placeholder = document.createElement('canvas'); |
| placeholder.width = 100; |
| placeholder.height = 50; |
| var offscreenCanvas = placeholder.transferControlToOffscreen(); |
| assert_equals(offscreenCanvas.width, 100); |
| assert_equals(offscreenCanvas.height, 50); |
| }, "Test that an OffscreenCanvas generated by transferControlToOffscreen gets correct width and height"); |
| |
| test(function() { |
| var placeholder = document.createElement('canvas'); |
| placeholder.width = 100; |
| placeholder.height = 50; |
| var offscreenCanvas = placeholder.transferControlToOffscreen(); |
| assert_throws("InvalidStateError", function() { placeholder.getContext('2d'); }); |
| }, "Test that calling getContext on a placeholder canvas that has already transferred its control throws an exception"); |
| |
| test(function() { |
| var placeholder = document.createElement('canvas'); |
| placeholder.width = 100; |
| placeholder.height = 50; |
| var offscreenCanvas = placeholder.transferControlToOffscreen(); |
| assert_throws("InvalidStateError", function() { placeholder.transferControlToOffscreen(); }); |
| }, "Test that calling transferControlToOffscreen twice throws an exception"); |
| |
| </script> |
| |