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
34namespace dit
35{
36namespace
37{
38
39class TextureTests : public tcu::TestCaseGroup
40{
41public:
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
53class DeqpTests : public tcu::TestCaseGroup
54{
55public:
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
73class TestCaseExecutor : public tcu::TestCaseExecutor
74{
75public:
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
100TestPackage::TestPackage (tcu::TestContext& testCtx)
101	: tcu::TestPackage(testCtx, "dE-IT", "drawElements Internal Tests")
102{
103}
104
105TestPackage::~TestPackage (void)
106{
107}
108
109void 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
117tcu::TestCaseExecutor* TestPackage::createExecutor (void) const
118{
119	return new TestCaseExecutor();
120}
121
122} // dit
123