1/*------------------------------------------------------------------------
2 * Vulkan Conformance Tests
3 * ------------------------
4 *
5 * Copyright (c) 2016 The Khronos Group Inc.
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 Geometry Shader Tests
22 *//*--------------------------------------------------------------------*/
23
24#include "vktGeometryTests.hpp"
25#include "vktGeometryBasicGeometryShaderTests.hpp"
26#include "vktGeometryInputGeometryShaderTests.hpp"
27#include "vktGeometryLayeredRenderingTests.hpp"
28#include "vktGeometryInstancedRenderingTests.hpp"
29#include "vktGeometryVaryingGeometryShaderTests.hpp"
30#include "vktGeometryEmitGeometryShaderTests.hpp"
31#include "vktTestGroupUtil.hpp"
32
33namespace vkt
34{
35namespace geometry
36{
37namespace
38{
39
40void createChildren (tcu::TestCaseGroup* geometryTests)
41{
42	tcu::TestContext& testCtx = geometryTests->getTestContext();
43
44	geometryTests->addChild(createInputGeometryShaderTests		(testCtx));
45	geometryTests->addChild(createBasicGeometryShaderTests		(testCtx));
46	geometryTests->addChild(createLayeredRenderingTests			(testCtx));
47	geometryTests->addChild(createInstancedRenderingTests		(testCtx));
48	geometryTests->addChild(createVaryingGeometryShaderTests	(testCtx));
49	geometryTests->addChild(createEmitGeometryShaderTests		(testCtx));
50}
51
52} // anonymous
53
54tcu::TestCaseGroup* createTests (tcu::TestContext& testCtx, const std::string& name)
55{
56	return createTestGroup(testCtx, name.c_str(), createChildren);
57}
58
59} // geometry
60} // vkt
61