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

Side by Side Diff: conformance/more/functions/texSubImage2DBadArgs.html

Issue 41503006: Add ToT WebGL conformance tests : part 8 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/webgl/sdk/tests/
Patch Set: Created 7 years, 1 month 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 | Annotate | Revision Log
Property Changes:
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <!--
6
7 /*
8 ** Copyright (c) 2012 The Khronos Group Inc.
9 **
10 ** Permission is hereby granted, free of charge, to any person obtaining a
11 ** copy of this software and/or associated documentation files (the
12 ** "Materials"), to deal in the Materials without restriction, including
13 ** without limitation the rights to use, copy, modify, merge, publish,
14 ** distribute, sublicense, and/or sell copies of the Materials, and to
15 ** permit persons to whom the Materials are furnished to do so, subject to
16 ** the following conditions:
17 **
18 ** The above copyright notice and this permission notice shall be included
19 ** in all copies or substantial portions of the Materials.
20 **
21 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
24 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
25 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
26 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
27 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
28 */
29
30 -->
31 <link rel="stylesheet" type="text/css" href="../unit.css" />
32 <script type="application/x-javascript" src="../unit.js"></script>
33 <script type="application/x-javascript" src="../util.js"></script>
34 <script type="application/x-javascript">
35
36 Tests.startUnit = function () {
37 var canvas = document.getElementById('gl');
38 var gl = wrapGLContext(getGLContext(canvas));
39 return [gl];
40 }
41
42 Tests.setup = function(gl) {
43 var tex = gl.createTexture();
44 gl.bindTexture(gl.TEXTURE_2D, tex);
45 return [gl]
46 }
47
48 Tests.teardown = function(gl,tex) {
49 gl.bindTexture(gl.TEXTURE_2D, null);
50 gl.deleteTexture(tex);
51 }
52
53 Tests.testTexImage2D = function(gl) {
54 gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, 2,2,0,gl.RGBA,gl.UNSIGNED_BYTE, new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]));
55 assertGLError(gl, gl.INVALID_OPERATION, "not enough data", function(){
56 gl.texSubImage2D(gl.TEXTURE_2D, 0,0, 0, 2,1,gl.RGBA,gl.UNSIGNED_BYTE, ne w Uint8Array([0,0,0,0]));
57 });
58 assertGLError(gl, gl.INVALID_OPERATION, "not enough data", function(){
59 gl.texSubImage2D(gl.TEXTURE_2D, 0,0, 0, 1,2,gl.RGBA,gl.UNSIGNED_BYTE, ne w Uint8Array([0,0,0,0]));
60 });
61 assertGLError(gl, gl.INVALID_ENUM, "bad target", function(){
62 gl.texSubImage2D(gl.FLOAT, 0, 0,0, 1,1,gl.RGBA,gl.UNSIGNED_BYTE, new Uin t8Array([0,0,0,0]));
63 });
64 assertGLError(gl, gl.INVALID_VALUE, "width out of range", function(){
65 gl.texSubImage2D(gl.TEXTURE_2D, 0,0, 0, 3,1,gl.RGBA,gl.UNSIGNED_BYTE, ne w Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]));
66 });
67 assertGLError(gl, gl.INVALID_VALUE, "height out of range", function(){
68 gl.texSubImage2D(gl.TEXTURE_2D, 0,0, 0, 1,3,gl.RGBA,gl.UNSIGNED_BYTE, ne w Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]));
69 });
70 assertOk("zero size", function(){
71 gl.texSubImage2D(gl.TEXTURE_2D, 0,0, 0, 0,0,gl.RGBA,gl.UNSIGNED_BYTE, ne w Uint8Array([0,0,0,0]));
72 });
73 assertSomeGLError(gl, "negative width", function(){
74 gl.texSubImage2D(gl.TEXTURE_2D, 0,0, 0, -1,1,gl.RGBA,gl.UNSIGNED_BYTE, n ew Uint8Array([0,0,0,0]));
75 });
76 assertSomeGLError(gl, "negative height", function(){
77 gl.texSubImage2D(gl.TEXTURE_2D, 0,0, 0, 1,-1,gl.RGBA,gl.UNSIGNED_BYTE, n ew Uint8Array([0,0,0,0]));
78 });
79 assertGLError(gl, gl.INVALID_VALUE, "negative x", function(){
80 gl.texSubImage2D(gl.TEXTURE_2D, 0,-1,1,1,1,gl.RGBA,gl.UNSIGNED_BYTE, new Uint8Array([0,0,0,0]));
81 });
82 assertGLError(gl, gl.INVALID_VALUE, "negative y", function(){
83 gl.texSubImage2D(gl.TEXTURE_2D, 0,1,-1,1,1,gl.RGBA,gl.UNSIGNED_BYTE, new Uint8Array([0,0,0,0]));
84 });
85 assertGLError(gl, gl.INVALID_ENUM, "bad format", function(){
86 gl.texSubImage2D(gl.TEXTURE_2D, 0, 0,0, 1,1,gl.FLOAT,gl.UNSIGNED_BYTE, n ew Uint8Array([0,0,0,0]));
87 });
88 assertGLError(gl, gl.INVALID_ENUM, "bad type", function(){
89 gl.texSubImage2D(gl.TEXTURE_2D, 0, 0,0, 1,1,gl.RGBA,gl.TEXTURE_2D, new U int8Array([0,0,0,0]));
90 });
91 assertGLError(gl, gl.INVALID_OPERATION, "not enough data", function(){
92 gl.texSubImage2D(gl.TEXTURE_2D, 0, 0,0, 1,1,gl.RGBA,gl.UNSIGNED_BYTE, ne w Uint8Array([0,0,0]));
93 });
94 assertGLError(gl, gl.INVALID_OPERATION, "format does not match internal form at", function(){
95 gl.texSubImage2D(gl.TEXTURE_2D, 0, 0,0, 1,1,gl.RGB,gl.UNSIGNED_BYTE, new Uint8Array([0,0,0]));
96 });
97 assertGLError(gl, gl.INVALID_OPERATION, "type does not match original", func tion(){
98 gl.texSubImage2D(gl.TEXTURE_2D, 0, 0,0, 1,1,gl.RGBA,gl.UNSIGNED_SHORT_4_ 4_4_4, new Uint16Array([0]));
99 });
100 }
101
102
103 Tests.endUnit = function(gl) {
104 }
105
106 </script>
107 <style>canvas{ position:absolute; }</style>
108 </head><body>
109 <canvas id="gl" width="16" height="16"></canvas>
110 </body></html>
OLDNEW
« no previous file with comments | « conformance/more/functions/texSubImage2D.html ('k') | conformance/more/functions/texSubImage2DHTML.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698