blob: c0ae84148af586764b24e828c0ba72793230e76f [file] [log] [blame]
xidachen9bf98772016-11-10 20:27:011<!DOCTYPE html>
2<meta charset="utf-8">
3<title>Canvas's ImageBitmapRenderingContext test</title>
4<script src="/resources/testharness.js"></script>
5<script src="/resources/testharnessreport.js"></script>
6<link rel="help" href="https://html.spec.whatwg.org/multipage/scripting.html#the-imagebitmap-rendering-context">
7<script>
8var width = 10;
9var height = 10;
10
11promise_test(function() {
12 function testException(image) {
13 var dstCanvas = document.createElement('canvas');
14 dstCanvas.width = width;
15 dstCanvas.height = height;
16 var dstCtx = dstCanvas.getContext('bitmaprenderer');
17 dstCtx.transferFromImageBitmap(image);
18
19 // The image should be detached after transferFromImageBitmap.
20 assert_equals(image.width, 0);
21 assert_equals(image.height, 0);
22 assert_throws("InvalidStateError", function() { dstCtx.transferFromImageBitmap(image); });
23 }
24
25 var srcCanvas = document.createElement('canvas');
26 srcCanvas.width = width;
27 srcCanvas.height = height;
28 var ctx = srcCanvas.getContext('2d');
29 ctx.fillStyle = 'rgba(0, 255, 0, 0.5)';
30 ctx.fillRect(0, 0, width, height);
xidachen47e0eb92016-11-14 19:43:1131 return createImageBitmap(srcCanvas).then(testException);
xidachen9bf98772016-11-10 20:27:0132}, "Test transferFromImageBitmap(image) with a detached image should throw InvalidStateError");
33
34</script>