Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(170)

Side by Side Diff: third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-convertToBlob-noIdleTask.html

Issue 2613733002: Enforce OffscreenCanvas.convertToBlob to terminate after idling for too long (Closed)
Patch Set: test Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 <script src="../../resources/testharness.js"></script>
2 <script src="../../resources/testharnessreport.js"></script>
3 <script type = 'text/javascript'>
4 // In WebKit Layout Tests, flag "--enable-threaded-compositing", which is
Justin Novosad 2017/01/06 15:49:21 nit: WebKit -> blink
5 // essential for idle task running, is not turned on by default. This makes
6 // it convenient to test the case when CanvasAsyncBlobCreator is idling for
7 // too long and switching to forcing encoding in a normal task.
8 // Passing this test means that the enforcing mechanism in
9 // CanvasAsyncBlobCreator for OffscreenCanvas case is working as expected.
10 var w = 4;
11 var h = 4;
12
13 var newImg = new Image();
14 function imageLoaded() {
15 var canvas2 = document.createElement("canvas");
16 canvas2.width = w;
17 canvas2.height = h;
18 var ctx2 = canvas2.getContext("2d");
19 ctx2.drawImage(newImg, 0, 0, w, h);
20
21 var imageData = ctx2.getImageData(0, 0, w, h).data;
22 assert_equals(imageData[0], 255);
23 assert_equals(imageData[1], 1);
24 assert_equals(imageData[2], 2);
25 assert_equals(imageData[3], 255);
26 testImageFromOffscreen.done();
27 }
28
29 var testImageFromOffscreen = async_test(
30 "Check if the image loaded from blob returned by " +
31 "OffscreenCanvas.convertToBlob() have expected image data values.");
32
33 testImageFromOffscreen.step(function() {
34 newImg.onload = testImageFromOffscreen.step_func(imageLoaded);
35
36 var offscreenCanvas = new OffscreenCanvas(w, h);
37 var ctx = offscreenCanvas.getContext("2d");
38 ctx.fillStyle = "#FF0102";
39 ctx.fillRect(0, 0, w, h);
40
41 offscreenCanvas.convertToBlob().then(function(blob) {
42 newImg.src = URL.createObjectURL(blob);
43 });
44 });
45
46 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698