| ------------------------------------------------------------------------- |
| drawElements Quality Program Test Specification |
| ----------------------------------------------- |
| |
| Copyright 2014 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| ------------------------------------------------------------------------- |
| Arrays of arrays tests |
| |
| Tests: |
| + dEQP-GLES31.functional.shaders.arrays_of_arrays.* |
| + dEQP-GLES31.functional.ssbo.*arrays_of_arrays* |
| + dEQP-GLES31.functional.ssbo.*_level_array* |
| + dEQP-GLES31.functional.ubo.* |
| + dEQP-GLES31.functional.program_interface_query.* (selected cases) |
| + dEQP-GLES31.functional.shaders.functions.* |
| |
| Includes: |
| + Arrays of arrays of 2, 3, and more levels |
| + Constructors with explicit sizes |
| + Constructors with implicit sizes |
| + Arrays of arrays as function return types |
| + Arrays of arrays as function in, out, and inout parameters |
| + Accessing arrays of arrays |
| - Indexing arrays of arrays with constant and dynamic expressions |
| + Explicit and implicit sized type declarations |
| - Size from both constructor and assignment from another array |
| - Different type declaration syntaxes |
| + .length() |
| + Arrays of arrays in function overloading |
| - Tests to verify that different sized arrays of arrays can be used to |
| overload functions |
| + Negative cases |
| - Dynamic expression as array size |
| - Empty declarations |
| - Multi-level SSBO/UBO instance arrays |
| + Arrays of arrays inside SSBOs, UBOs |
| - Access, property queries using legacy and program interface query APIs |
| |
| Excludes: |
| + Extensive negative tests |
| - Will be added in 2014.4 release |
| |
| Description: |
| |
| Valid cases compile and run a program that perform the operation under test |
| in either vertex and fragment shader. Results are checked against reference |
| values in the shader code and either black or white color is selected based |
| on that. The test verifies that all result pixels are white. |
| |
| Negative cases attempt to compile a shader with the invalid operation and |
| checks that the compilation in fact fails. |