1------------------------------------------------------------------------- 2drawElements Quality Program Test Specification 3----------------------------------------------- 4 5Copyright 2014 The Android Open Source Project 6 7Licensed under the Apache License, Version 2.0 (the "License"); 8you may not use this file except in compliance with the License. 9You may obtain a copy of the License at 10 11 http://www.apache.org/licenses/LICENSE-2.0 12 13Unless required by applicable law or agreed to in writing, software 14distributed under the License is distributed on an "AS IS" BASIS, 15WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16See the License for the specific language governing permissions and 17limitations under the License. 18------------------------------------------------------------------------- 19 Arrays of arrays tests 20 21Tests: 22 + dEQP-GLES31.functional.shaders.arrays_of_arrays.* 23 + dEQP-GLES31.functional.ssbo.*arrays_of_arrays* 24 + dEQP-GLES31.functional.ssbo.*_level_array* 25 + dEQP-GLES31.functional.ubo.* 26 + dEQP-GLES31.functional.program_interface_query.* (selected cases) 27 + dEQP-GLES31.functional.shaders.functions.* 28 29Includes: 30 + Arrays of arrays of 2, 3, and more levels 31 + Constructors with explicit sizes 32 + Constructors with implicit sizes 33 + Arrays of arrays as function return types 34 + Arrays of arrays as function in, out, and inout parameters 35 + Accessing arrays of arrays 36 - Indexing arrays of arrays with constant and dynamic expressions 37 + Explicit and implicit sized type declarations 38 - Size from both constructor and assignment from another array 39 - Different type declaration syntaxes 40 + .length() 41 + Arrays of arrays in function overloading 42 - Tests to verify that different sized arrays of arrays can be used to 43 overload functions 44 + Negative cases 45 - Dynamic expression as array size 46 - Empty declarations 47 - Multi-level SSBO/UBO instance arrays 48 + Arrays of arrays inside SSBOs, UBOs 49 - Access, property queries using legacy and program interface query APIs 50 51Excludes: 52 + Extensive negative tests 53 - Will be added in 2014.4 release 54 55Description: 56 57Valid cases compile and run a program that perform the operation under test 58in either vertex and fragment shader. Results are checked against reference 59values in the shader code and either black or white color is selected based 60on that. The test verifies that all result pixels are white. 61 62Negative cases attempt to compile a shader with the invalid operation and 63checks that the compilation in fact fails. 64