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

Side by Side Diff: conformance/more/functions/copyTexSubImage2DBadArgs.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.copyTexImage2D(gl.TEXTURE_2D, 0, gl.RGBA, 0,0, 16,16, 0);
55 assertGLError(gl, gl.INVALID_VALUE, "width > dst tex width", function(){
56 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,0, 17,1);
57 });
58 assertGLError(gl, gl.INVALID_VALUE, "height > dst tex height", function(){
59 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,0, 1,17);
60 });
61 // The spec says the source image dimensions can be out of range.
62 assertOk("x > dst tex width", function(){
63 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 16,0, 1,1);
64 });
65 assertOk("y > dst tex width", function(){
66 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,16, 1,1);
67 });
68 assertOk("x < 0", function(){
69 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, -1,0, 1,1);
70 });
71 assertOk("y < 0", function(){
72 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,-1, 1,1);
73 });
74 assertGLError(gl, gl.INVALID_VALUE, "width < 0", function(){
75 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,0, -1,1);
76 });
77 assertGLError(gl, gl.INVALID_VALUE, "height < 0", function(){
78 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,0, 1,-1);
79 });
80 assertGLError(gl, gl.INVALID_VALUE, "xoffset < 0", function(){
81 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, -1,0, 0,0, 16,16);
82 });
83 assertGLError(gl, gl.INVALID_VALUE, "yoffset < 0", function(){
84 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,-1, 0,0, 16,16);
85 });
86 assertOk("x < 0 full width", function(){
87 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, -1,0, 16,16);
88 });
89 assertOk("y < 0 full height", function(){
90 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,-1, 16,16);
91 });
92 assertOk(function(){
93 gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0,0, 0,0, 16,16);
94 });
95 assertGLError(gl, gl.INVALID_ENUM, "bad target", function(){
96 gl.copyTexSubImage2D(gl.FLOAT, 0, 0,0, 0,0, 16,16);
97 });
98 assertGLError(gl, gl.INVALID_VALUE, "", function(){
99 gl.copyTexSubImage2D(gl.TEXTURE_2D, -1, 0,0, 0,0, 16,16);
100 });
101 }
102
103
104 Tests.endUnit = function(gl) {
105 }
106
107 </script>
108 <style>canvas{ position:absolute; }</style>
109 </head><body>
110 <canvas id="gl" width="16" height="16"></canvas>
111 </body></html>
OLDNEW
« no previous file with comments | « conformance/more/functions/copyTexSubImage2D.html ('k') | conformance/more/functions/deleteBufferBadArgs.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698