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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/canvas/canvas-drawImage-bleed.html

Issue 2186553003: Update two layout tests to reflect bleeding in ctx.drawImage (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 4 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 <!DOCTYPE HTML>
2 <script src="../../resources/testharness.js"></script>
3 <script src="../../resources/testharnessreport.js"></script>
4 <script>
5 function drawAndTestCanvas(srcCanvas, dstWidth, dstHeight, x, y, dw, dh, shouldB eGreen)
6 {
7 var dstCanvas = document.createElement('canvas');
8 dstCanvas.width = dstWidth;
9 dstCanvas.height = dstHeight;
10 var dstCtx = dstCanvas.getContext('2d');
11 dstCtx.fillStyle = '#00FF00';
12 dstCtx.fillRect(0, 0, dstWidth, dstHeight);
13 dstCtx.drawImage(srcCanvas, 5, 5, 10, 10, x, y, dw, dh);
14 var isOnePixelNotGreen = false;
15 for (var i = 0; i < dstWidth; i++) {
16 for (var j = 0; j < dstHeight; j++) {
17 var d = dstCtx.getImageData(i, j, 1, 1).data;
18 if (shouldBeGreen && (d[0] != 0 || d[1] != 255 || d[2] != 0 || d[3] != 255)) {
19 assert_true(false);
20 return;
21 }
22 if (!shouldBeGreen && (d[0] != 0 || d[1] != 255 || d[2] != 0 || d[3] != 255)) {
23 isOnePixelNotGreen = true;
24 break;
25 }
26 }
27 if (isOnePixelNotGreen)
28 break;
29 }
30 if (!shouldBeGreen)
31 assert_true(isOnePixelNotGreen);
32 }
33
34 test(function() {
35 var srcCanvas = document.createElement('canvas');
36 srcCanvas.width = 20;
37 srcCanvas.height = 20;
38 var srcCtx = srcCanvas.getContext('2d');
39 srcCtx.fillStyle = '#FF0000';
40 srcCtx.fillRect(0, 0, 20, 20);
41 srcCtx.fillStyle = '#00FF00';
42 srcCtx.fillRect(5, 5, 10, 10);
43
44 drawAndTestCanvas(srcCanvas, 20, 20, 5, 5, 10, 10, true); // no scaling, no bleeding
45 drawAndTestCanvas(srcCanvas, 40, 40, 10, 10, 20, 20, false); // scaling, ble eding
46 }, 'drawImage should sample outside of src rect when scaling');
47 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698