1#ifndef _TES3TESTCASE_HPP
2#define _TES3TESTCASE_HPP
3/*-------------------------------------------------------------------------
4 * drawElements Quality Program OpenGL ES 3.0 Module
5 * -------------------------------------------------
6 *
7 * Copyright 2014 The Android Open Source Project
8 *
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
12 *
13 *      http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 *
21 *//*!
22 * \file
23 * \brief OpenGL ES 3.0 test case.
24 *//*--------------------------------------------------------------------*/
25
26#include "tcuDefs.hpp"
27#include "tcuTestCase.hpp"
28#include "tes3Context.hpp"
29
30namespace deqp
31{
32namespace gles3
33{
34
35class TestCaseGroup : public tcu::TestCaseGroup
36{
37public:
38						TestCaseGroup		(Context& context, const char* name, const char* description);
39						TestCaseGroup		(Context& context, const char* name, const char* description, const std::vector<TestNode*>& children);
40	virtual				~TestCaseGroup		(void) {}
41
42	Context&			getContext			(void) { return m_context; }
43
44protected:
45	Context&			m_context;
46};
47
48class TestCase : public tcu::TestCase
49{
50public:
51						TestCase			(Context& context, const char* name, const char* description);
52						TestCase			(Context& context, tcu::TestNodeType nodeType, const char* name, const char* description);
53	virtual				~TestCase			(void) {}
54
55protected:
56	Context&			m_context;
57};
58
59inline TestCaseGroup::TestCaseGroup (Context& context, const char* name, const char* description)
60	: tcu::TestCaseGroup	(context.getTestContext(), name, description)
61	, m_context				(context)
62{
63}
64
65inline TestCaseGroup::TestCaseGroup (Context& context, const char* name, const char* description, const std::vector<TestNode*>& children)
66	: tcu::TestCaseGroup	(context.getTestContext(), name, description, children)
67	, m_context				(context)
68{
69}
70
71inline TestCase::TestCase (Context& context, const char* name, const char* description)
72	: tcu::TestCase			(context.getTestContext(), name, description)
73	, m_context				(context)
74{
75}
76
77inline TestCase::TestCase (Context& context, tcu::TestNodeType nodeType, const char* name, const char* description)
78	: tcu::TestCase			(context.getTestContext(), nodeType, name, description)
79	, m_context				(context)
80{
81}
82
83} // gles3
84} // deqp
85
86#endif // _TES3TESTCASE_HPP
87