Merge "Use de::ArrayBuffer, not raw arrays, in sglrReferenceContext."
[platform/upstream/VK-GL-CTS.git] / doc / testspecs / GLES31 / functional.shaders.implicit_conversions.txt
1 -------------------------------------------------------------------------
2 drawElements Quality Program Test Specification
3 -----------------------------------------------
4
5 Copyright 2014 The Android Open Source Project
6
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
10
11      http://www.apache.org/licenses/LICENSE-2.0
12
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18 -------------------------------------------------------------------------
19     GL_EXT_shader_implicit_conversions
20
21 Tests:
22  + dEQP-GLES31.functional.shaders.implicit_conversions.*
23
24 Includes:
25  + All valid implicit conversion pairs
26  + Promotion to vector types (for example int -> vec3)
27  + Binary operations
28    - Arithmetic
29    - Comparison
30  + Array subscription
31  + Calling function with implicit conversion on parameter type
32  + Negative tests for invalid assignments
33  + Negative tests for implict array / struct conversions
34
35 Excludes:
36  + Extensive function overloading tests with implicit conversions
37  + Extensive negative tests for various other implicit conversions
38    - Will be added in 2014.4 release
39
40 Description:
41
42 Valid cases compile and run a program that perform the implicit conversion
43 operation in either vertex and fragment shader. Results are checked against
44 reference values in the shader code and either black or white color is
45 selected based on that. The test verifies that all result pixels are white.
46
47 Negative cases attempt to compile a shader with the invalid operation and
48 checks that the compilation in fact fails.