| Index: third_party/WebKit/LayoutTests/fast/canvas/canvas-resetTransform.html
|
| diff --git a/third_party/WebKit/LayoutTests/fast/canvas/canvas-resetTransform.html b/third_party/WebKit/LayoutTests/fast/canvas/canvas-resetTransform.html
|
| index fe2d369d1244f670254f57fac2d8745166e79ee0..f689b7108f0ed35c7a59309dc8a88967a25b69f3 100644
|
| --- a/third_party/WebKit/LayoutTests/fast/canvas/canvas-resetTransform.html
|
| +++ b/third_party/WebKit/LayoutTests/fast/canvas/canvas-resetTransform.html
|
| @@ -1,9 +1,97 @@
|
| -<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
| -<html>
|
| -<head>
|
| -<script src="../../resources/js-test.js"></script>
|
| -</head>
|
| +<script src="../../resources/testharness.js"></script>
|
| +<script src="../../resources/testharnessreport.js"></script>
|
| <body>
|
| -<script src="script-tests/canvas-resetTransform.js"></script>
|
| +<script>
|
| +test(function(t) {
|
| +
|
| + var canvas = document.createElement('canvas');
|
| + document.body.appendChild(canvas);
|
| + canvas.setAttribute('width', '100');
|
| + canvas.setAttribute('height', '100');
|
| + var ctx = canvas.getContext('2d');
|
| +
|
| + ctx.save();
|
| + ctx.scale(0.5, 0.5);
|
| + ctx.resetTransform();
|
| + ctx.fillStyle = 'green';
|
| + ctx.fillRect(0, 0, 100, 100);
|
| + ctx.restore();
|
| +
|
| + var imageData = ctx.getImageData(98, 98, 1, 1).data;
|
| + assert_array_equals(imageData.slice(0, 3), [0, 128, 0]);
|
| +
|
| + ctx.save();
|
| + ctx.scale(0.5, 0.5);
|
| + ctx.save();
|
| + ctx.resetTransform();
|
| + ctx.fillStyle = 'green';
|
| + ctx.fillRect(0, 0, 100, 100);
|
| + ctx.restore();
|
| + ctx.fillStyle = 'red';
|
| + ctx.fillRect(0, 0, 100, 100);
|
| + ctx.restore();
|
| +
|
| + imageData = ctx.getImageData(98, 98, 1, 1).data;
|
| + assert_array_equals(imageData.slice(0, 3), [0, 128, 0]);
|
| +
|
| + imageData = ctx.getImageData(48, 48, 1, 1).data;
|
| + assert_array_equals(imageData.slice(0, 3), [255, 0, 0]);
|
| +
|
| + /* This should draw a green rectangle on on top of a red one. The red should not be visible. */
|
| + ctx.save();
|
| + ctx.beginPath();
|
| + ctx.moveTo(0, 0);
|
| + ctx.lineTo(100, 0);
|
| + ctx.lineTo(100, 100);
|
| + ctx.lineTo(0, 100);
|
| + ctx.fillStyle = 'red';
|
| + ctx.fill();
|
| + ctx.translate(200, 0);
|
| + ctx.resetTransform();
|
| + ctx.fillStyle = 'green';
|
| + ctx.fill();
|
| + ctx.restore();
|
| +
|
| + imageData = ctx.getImageData(50, 50, 1, 1).data;
|
| + assert_array_equals(imageData.slice(0, 3), [0, 128, 0]);
|
| +
|
| + ctx.save();
|
| + ctx.fillStyle = 'red';
|
| + ctx.fillRect(0, 0, 100, 100);
|
| + ctx.beginPath();
|
| + ctx.moveTo(0, 0);
|
| + ctx.lineTo(100, 0);
|
| + ctx.lineTo(100, 100);
|
| + ctx.lineTo(0, 100);
|
| + ctx.scale(0, 0);
|
| + ctx.resetTransform();
|
| + ctx.fillStyle = 'green';
|
| + ctx.fill();
|
| + ctx.restore();
|
| +
|
| + imageData = ctx.getImageData(98, 98, 1, 1).data;
|
| + assert_array_equals(imageData.slice(0, 3), [0, 128, 0]);
|
| +
|
| + ctx.save();
|
| + ctx.fillStyle = 'red';
|
| + ctx.fillRect(0, 0, 100, 100);
|
| + ctx.beginPath();
|
| + ctx.moveTo(0, 0);
|
| + ctx.lineTo(100, 0);
|
| + ctx.lineTo(100, 50);
|
| + ctx.scale(0, 0);
|
| + ctx.lineTo(100, 100);
|
| + ctx.resetTransform();
|
| + ctx.lineTo(0, 100);
|
| + ctx.fillStyle = 'green';
|
| + ctx.fill();
|
| + ctx.restore();
|
| +
|
| + imageData = ctx.getImageData(98, 98, 1, 1).data;
|
| + assert_array_equals(imageData.slice(0, 3), [255, 0, 0]);
|
| +
|
| + imageData = ctx.getImageData(98, 48, 1, 1).data;
|
| + assert_array_equals(imageData.slice(0, 3), [0, 128, 0]);
|
| +}, "This test checks resetTransform in canvas v5");
|
| +</script>
|
| </body>
|
| -</html>
|
|
|