summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/fast/canvas/webgl/canvas-test.html
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/WebKit/LayoutTests/fast/canvas/webgl/canvas-test.html')
-rw-r--r--third_party/WebKit/LayoutTests/fast/canvas/webgl/canvas-test.html185
1 files changed, 0 insertions, 185 deletions
diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/canvas-test.html b/third_party/WebKit/LayoutTests/fast/canvas/webgl/canvas-test.html
deleted file mode 100644
index f409660..0000000
--- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/canvas-test.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
-<title>WebGL Canvas Conformance Tests</title>
-<script src="resources/desktop-gl-constants.js" type="text/javascript"></script>
-<script src="../../../resources/js-test.js"></script>
-<script src="resources/webgl-test.js"></script>
-<script src="../../../resources/run-after-layout-and-paint.js"></script>
-</head>
-<body>
-<div id="description"></div>
-<div id="console"></div>
-<canvas id="canvas" style="width: 50px; height: 50px;"> </canvas>
-<canvas id="canvas2d" width="40" height="40"> </canvas>
-<script>
-jsTestIsAsync = true;
-if (window.initNonKhronosFramework) {
- window.initNonKhronosFramework(true);
-}
-
-description("This test ensures WebGL implementations interact correctly with the canvas tag.");
-
-debug("");
-debug("Canvas.getContext");
-
-var canvas = document.getElementById("canvas");
-var canvas2d = document.getElementById("canvas2d");
-var ctx2d = canvas2d.getContext("2d");
-var gl = create3DContext(canvas);
-if (!gl) {
- testFailed("context does not exist");
-} else {
- testPassed("context exists");
-
- debug("");
- debug("Checking canvas and WebGL interaction");
-
- // Check that a canvas with no width or height is 300x150 pixels
- shouldBe('canvas.width', '300');
- shouldBe('canvas.height', '150');
-
- // Check get a 4 value gl parameter as a csv string.
- function getValue4v(name) {
- var v = gl.getParameter(name);
- var result = '' +
- v[0] + ',' +
- v[1] + ',' +
- v[2] + ',' +
- v[3];
- return result;
- }
-
- function getViewport() {
- return getValue4v(gl.VIEWPORT);
- }
-
- function getClearColor() {
- return getValue4v(gl.COLOR_CLEAR_VALUE);
- }
-
- function isAboutEqual(a, b) {
- return Math.abs(a - b) < 0.01;
- }
-
- function isAboutEqualInt(a, b) {
- return Math.abs(a - b) < 3;
- }
-
- function checkCanvasContentIs(r3d,g3d,b3d,a3d) {
- var r2d;
- var g2d;
- var b2d;
- var a2d;
-
- function checkPixel(x, y, r3d,g3d,b3d,a3d) {
- var offset = (y * 40 + x) * 4;
- r2d = imgData.data[offset];
- g2d = imgData.data[offset + 1];
- b2d = imgData.data[offset + 2];
- a2d = imgData.data[offset + 3];
- //debug('' + x + ', ' + y + "(" + offset + ") = " + r2d + ", " + g2d + ", " + b2d + ", " + a2d);
- return isAboutEqualInt(r2d, r3d) &&
- isAboutEqualInt(g2d, g3d) &&
- isAboutEqualInt(b2d, b3d) &&
- isAboutEqualInt(a2d, a3d);
- }
-
- function checkPixels(r3d,g3d,b3d,a3d) {
- return checkPixel(0, 0, r3d, g3d, b3d, a3d) &&
- checkPixel(0, 39, r3d, g3d, b3d, a3d) &&
- checkPixel(39, 0, r3d, g3d, b3d, a3d) &&
- checkPixel(39, 39, r3d, g3d, b3d, a3d) &&
- checkPixel(0, 0, r3d, g3d, b3d, a3d);
- };
-
- // Set to just take the color from the 3d canvas
- ctx2d.globalCompositeOperation = 'copy';
-
- // fill 2d canvas with orange
- ctx2d.fillStyle = "rgb(255,192,128)";
- ctx2d.fillRect (0, 0, 40, 40);
-
- // get the image data
- var imgData = ctx2d.getImageData(0, 0, 40, 40);
-
- // check it got cleared.
- if (!checkPixels(255, 192, 128, 255)) {
- testFailed("unable to fill 2d context.");
- return;
- }
-
- // draw 3d canvas on top.
- ctx2d.drawImage(canvas, 0,0, 40, 40);
-
- // get the image data
- var imgData = ctx2d.getImageData(0, 0, 40, 40);
-
- // Check it's the expected color.
- if (!checkPixels(r3d, g3d, b3d, a3d)) {
- testFailed("pixels are " + r2d + "," + g2d + "," + b2d + "," + a2d +
- " expected " + r3d + "," + g3d + "," + b3d + "," + a3d);
- } else {
- testPassed("pixels are " + r3d + "," + g3d + "," + b3d + "," + a3d);
- }
- }
-
- checkCanvasContentIs(0, 0, 0, 0);
- shouldBe('getViewport()', '"0,0,300,150"');
-
- // Change the display size of the canvas and check
- // the viewport size does not change.
- debug("");
- debug("change display size of canvas and see that viewport does not change");
- canvas.style.width = "100px";
- canvas.style.height = "25px";
- runAfterLayoutAndPaint(function() {
- if (canvas.clientWidth == 100 &&
- canvas.clientHeight == 25) {
- shouldBe('getViewport()', '"0,0,300,150"');
- shouldBe('canvas.width', '300');
- shouldBe('canvas.height', '150');
-
- // Change the actual size of the canvas
- // Check that the viewport does not change.
- // Check that the clear color does not change.
- // Check that the color mask does not change.
- debug("");
- debug("change the actual size of the canvas and see that the viewport does not change");
- gl.clearColor(0.25, 0.5, 0.75, 1);
- gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
- checkCanvasContentIs(64, 128, 192, 255);
- gl.colorMask(0,0,0,0);
- canvas.width = 400;
- canvas.height = 10;
-
- var v = gl.getParameter(gl.COLOR_CLEAR_VALUE);
- assertMsg(isAboutEqual(v[0], 0.25) &&
- isAboutEqual(v[1], 0.5) &&
- isAboutEqual(v[2], 0.75) &&
- isAboutEqual(v[3], 1),
- "gl.clearColor should not change after canvas resize");
- v = gl.getParameter(gl.COLOR_WRITEMASK);
- assertMsg(isAboutEqual(v[0], 0) &&
- isAboutEqual(v[1], 0) &&
- isAboutEqual(v[2], 0) &&
- isAboutEqual(v[3], 0),
- "gl.colorMask should not change after canvas resize");
- shouldBe('getViewport()', '"0,0,300,150"');
- checkCanvasContentIs(0, 0, 0, 0);
-
- debug("");
-
- finishJSTest();
- }
- });
-}
-
-</script>
-<script>
-</script>
-
-</body>
-</html>