Merge "Fix color change verification in dithering tests" into nougat-cts-dev am:...
[platform/upstream/VK-GL-CTS.git] / modules / gles3 / performance / es3pPerformanceTests.cpp
1 /*-------------------------------------------------------------------------
2  * drawElements Quality Program OpenGL ES 3.0 Module
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  *//*!
20  * \file
21  * \brief Performance tests.
22  *//*--------------------------------------------------------------------*/
23
24 #include "es3pPerformanceTests.hpp"
25
26 #include "es3pBlendTests.hpp"
27 #include "es3pTextureFormatTests.hpp"
28 #include "es3pTextureFilteringTests.hpp"
29 #include "es3pTextureCountTests.hpp"
30 #include "es3pShaderOperatorTests.hpp"
31 #include "es3pShaderControlStatementTests.hpp"
32 #include "es3pShaderCompilerTests.hpp"
33 #include "es3pShaderOptimizationTests.hpp"
34 #include "es3pRedundantStateChangeTests.hpp"
35 #include "es3pStateChangeCallTests.hpp"
36 #include "es3pStateChangeTests.hpp"
37 #include "es3pBufferDataUploadTests.hpp"
38 #include "es3pDepthTests.hpp"
39
40 namespace deqp
41 {
42 namespace gles3
43 {
44 namespace Performance
45 {
46
47 // TextureTestGroup
48
49 class TextureTestGroup : public TestCaseGroup
50 {
51 public:
52         TextureTestGroup (Context& context)
53                 : TestCaseGroup(context, "texture", "Texture Performance Tests")
54         {
55         }
56
57         virtual void init (void)
58         {
59                 addChild(new TextureFormatTests         (m_context));
60                 addChild(new TextureFilteringTests      (m_context));
61                 addChild(new TextureCountTests          (m_context));
62         }
63 };
64
65 // ShadersTestGroup
66
67 class ShadersTestGroup : public TestCaseGroup
68 {
69 public:
70         ShadersTestGroup (Context& context)
71                 : TestCaseGroup(context, "shader", "Shader Performance Tests")
72         {
73         }
74
75         virtual void init (void)
76         {
77                 addChild(new ShaderOperatorTests                        (m_context));
78                 addChild(new ShaderControlStatementTests        (m_context));
79         }
80 };
81
82 // APITests
83
84 class APITests : public TestCaseGroup
85 {
86 public:
87         APITests (Context& context)
88                 : TestCaseGroup(context, "api", "API Performance Tests")
89         {
90         }
91
92         virtual void init (void)
93         {
94                 addChild(new StateChangeCallTests               (m_context));
95                 addChild(new StateChangeTests                   (m_context));
96                 addChild(new RedundantStateChangeTests  (m_context));
97         }
98 };
99
100 // BufferTestGroup
101
102 class BufferTestGroup : public TestCaseGroup
103 {
104 public:
105         BufferTestGroup (Context& context)
106                 : TestCaseGroup(context, "buffer", "Buffer Performance Tests")
107         {
108         }
109
110         virtual void init (void)
111         {
112                 addChild(new BufferDataUploadTests      (m_context));
113         }
114 };
115
116 // PerformanceTests
117
118 PerformanceTests::PerformanceTests (Context& context)
119         : TestCaseGroup(context, "performance", "Performance Tests")
120 {
121 }
122
123 PerformanceTests::~PerformanceTests (void)
124 {
125 }
126
127 void PerformanceTests::init (void)
128 {
129         addChild(new BlendTests                         (m_context));
130         addChild(new TextureTestGroup           (m_context));
131         addChild(new ShadersTestGroup           (m_context));
132         addChild(new ShaderCompilerTests        (m_context));
133         addChild(new APITests                           (m_context));
134         addChild(new BufferTestGroup            (m_context));
135         addChild(new DepthTests                         (m_context));
136 }
137
138 } // Performance
139 } // gles3
140 } // deqp