Add CTS_ARB_gl_spirv test implementation
[platform/upstream/VK-GL-CTS.git] / modules / internal / ditTestPackage.cpp
1 /*-------------------------------------------------------------------------
2  * drawElements Quality Program OpenGL ES 2.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 drawElements Internal Test Package
22  *//*--------------------------------------------------------------------*/
23
24 #include "ditTestPackage.hpp"
25 #include "ditBuildInfoTests.hpp"
26 #include "ditDelibsTests.hpp"
27 #include "ditFrameworkTests.hpp"
28 #include "ditImageIOTests.hpp"
29 #include "ditImageCompareTests.hpp"
30 #include "ditTestLogTests.hpp"
31 #include "ditSeedBuilderTests.hpp"
32 #include "ditSRGB8ConversionTest.hpp"
33
34 namespace dit
35 {
36 namespace
37 {
38
39 class TextureTests : public tcu::TestCaseGroup
40 {
41 public:
42         TextureTests (tcu::TestContext& testCtx)
43                 : tcu::TestCaseGroup(testCtx, "texture", "Tests for tcu::Texture and utils.")
44         {
45         }
46
47         void init (void)
48         {
49                 addChild(createSRGB8ConversionTest(m_testCtx));
50         }
51 };
52
53 class DeqpTests : public tcu::TestCaseGroup
54 {
55 public:
56         DeqpTests (tcu::TestContext& testCtx)
57                 : tcu::TestCaseGroup(testCtx, "deqp", "dEQP Test Framework Self-tests")
58         {
59         }
60
61         void init (void)
62         {
63                 addChild(new TestLogTests               (m_testCtx));
64                 addChild(new ImageIOTests               (m_testCtx));
65                 addChild(new ImageCompareTests  (m_testCtx));
66                 addChild(new TextureTests               (m_testCtx));
67                 addChild(createSeedBuilderTests (m_testCtx));
68         }
69 };
70
71 } // anonymous
72
73 class TestCaseExecutor : public tcu::TestCaseExecutor
74 {
75 public:
76         TestCaseExecutor (void)
77         {
78         }
79
80         ~TestCaseExecutor (void)
81         {
82         }
83
84         void init (tcu::TestCase* testCase, const std::string&)
85         {
86                 testCase->init();
87         }
88
89         void deinit (tcu::TestCase* testCase)
90         {
91                 testCase->deinit();
92         }
93
94         tcu::TestNode::IterateResult iterate (tcu::TestCase* testCase)
95         {
96                 return testCase->iterate();
97         }
98 };
99
100 TestPackage::TestPackage (tcu::TestContext& testCtx)
101         : tcu::TestPackage(testCtx, "dE-IT", "drawElements Internal Tests")
102 {
103 }
104
105 TestPackage::~TestPackage (void)
106 {
107 }
108
109 void TestPackage::init (void)
110 {
111         addChild(new BuildInfoTests     (m_testCtx));
112         addChild(new DelibsTests        (m_testCtx));
113         addChild(new FrameworkTests     (m_testCtx));
114         addChild(new DeqpTests          (m_testCtx));
115 }
116
117 tcu::TestCaseExecutor* TestPackage::createExecutor (void) const
118 {
119         return new TestCaseExecutor();
120 }
121
122 } // dit