OLD | NEW |
| (Empty) |
1 <html> | |
2 <head> | |
3 <script src="../../../resources/js-test.js"></script> | |
4 <script src="resources/webgl-test.js"></script> | |
5 </head> | |
6 <body> | |
7 <div id="description"></div> | |
8 <div id="console"></div> | |
9 | |
10 <script> | |
11 description("Test bufferData/bufferSubData with ArrayBuffer input"); | |
12 | |
13 debug('Regression test for <a href="https://bugs.webkit.org/show_bug.cgi?id=4188
4">https://bugs.webkit.org/show_bug.cgi?id=41884</a> : <code>Implement bufferDat
a and bufferSubData with ArrayBuffer as input</code>'); | |
14 | |
15 if (window.internals) | |
16 window.internals.settings.setWebGLErrorsToConsoleEnabled(false); | |
17 | |
18 var gl = create3DContext(); | |
19 shouldBeNonNull("gl"); | |
20 | |
21 var array = new ArrayBuffer(128); | |
22 shouldBeNonNull("array"); | |
23 | |
24 var buf = gl.createBuffer(); | |
25 shouldBeNonNull(buf); | |
26 | |
27 gl.bufferData(gl.ARRAY_BUFFER, array, gl.STATIC_DRAW); | |
28 glErrorShouldBe(gl, gl.INVALID_OPERATION); | |
29 | |
30 gl.bindBuffer(gl.ARRAY_BUFFER, buf); | |
31 glErrorShouldBe(gl, gl.NO_ERROR); | |
32 | |
33 gl.bufferData(gl.ARRAY_BUFFER, -10, gl.STATIC_DRAW); | |
34 glErrorShouldBe(gl, gl.INVALID_VALUE); | |
35 | |
36 gl.bufferData(gl.ARRAY_BUFFER, null, gl.STATIC_DRAW); | |
37 glErrorShouldBe(gl, gl.INVALID_VALUE); | |
38 | |
39 gl.bufferData(gl.ARRAY_BUFFER, array, gl.STATIC_DRAW); | |
40 glErrorShouldBe(gl, gl.NO_ERROR); | |
41 | |
42 array = new ArrayBuffer(64); | |
43 | |
44 gl.bufferSubData(gl.ARRAY_BUFFER, -10, array); | |
45 glErrorShouldBe(gl, gl.INVALID_VALUE); | |
46 | |
47 gl.bufferSubData(gl.ARRAY_BUFFER, -10, new Float32Array(8)); | |
48 glErrorShouldBe(gl, gl.INVALID_VALUE); | |
49 | |
50 gl.bufferSubData(gl.ARRAY_BUFFER, 10, array); | |
51 glErrorShouldBe(gl, gl.NO_ERROR); | |
52 | |
53 gl.bufferSubData(gl.ARRAY_BUFFER, 10, null); | |
54 glErrorShouldBe(gl, gl.INVALID_VALUE); | |
55 </script> | |
56 | |
57 </body> | |
58 </html> | |
OLD | NEW |