dEQP-VK.renderpass: Set IMAGE_USAGE_TRANSFER_SRC_BIT when needed
[platform/upstream/VK-GL-CTS.git] / external / vulkancts / modules / vulkan / shaderexecutor / vktShaderBuiltinTests.cpp
1 /*------------------------------------------------------------------------
2  * Vulkan Conformance Tests
3  * ------------------------
4  *
5  * Copyright (c) 2015 The Khronos Group Inc.
6  * Copyright (c) 2015 Samsung Electronics Co., Ltd.
7  *
8  * Permission is hereby granted, free of charge, to any person obtaining a
9  * copy of this software and/or associated documentation files (the
10  * "Materials"), to deal in the Materials without restriction, including
11  * without limitation the rights to use, copy, modify, merge, publish,
12  * distribute, sublicense, and/or sell copies of the Materials, and to
13  * permit persons to whom the Materials are furnished to do so, subject to
14  * the following conditions:
15  *
16  * The above copyright notice(s) and this permission notice shall be included
17  * in all copies or substantial portions of the Materials.
18  *
19  * The Materials are Confidential Information as defined by the
20  * Khronos Membership Agreement until designated non-confidential by Khronos,
21  * at which point this condition clause shall be removed.
22  *
23  * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
26  * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
27  * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
28  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
29  * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
30  *
31  *//*!
32  * \file
33  * \brief Vulkan shader render test cases
34  *//*--------------------------------------------------------------------*/
35
36 #include "vktShaderBuiltinTests.hpp"
37
38 #include "deUniquePtr.hpp"
39
40 #include "vktShaderBuiltinPrecisionTests.hpp"
41 #include "vktShaderBuiltinConstantTests.hpp"
42 #include "vktShaderCommonFunctionTests.hpp"
43 #include "vktShaderIntegerFunctionTests.hpp"
44 #include "vktShaderPackingFunctionTests.hpp"
45
46 namespace vkt
47 {
48 namespace shaderexecutor
49 {
50
51 tcu::TestCaseGroup* createBuiltinTests (tcu::TestContext& testCtx)
52 {
53         de::MovePtr<tcu::TestCaseGroup> builtinTests                    (new tcu::TestCaseGroup(testCtx, "builtin",             "Built-in tests"));
54         de::MovePtr<tcu::TestCaseGroup> builtinFunctionTests    (new tcu::TestCaseGroup(testCtx, "function",    "Built-in Function Tests"));
55
56         builtinFunctionTests->addChild(new ShaderCommonFunctionTests(testCtx));
57         builtinFunctionTests->addChild(new ShaderIntegerFunctionTests(testCtx));
58         builtinFunctionTests->addChild(new ShaderPackingFunctionTests(testCtx));
59
60         builtinTests->addChild(builtinFunctionTests.release());
61         builtinTests->addChild(new ShaderBuiltinConstantTests(testCtx));
62         builtinTests->addChild(new BuiltinPrecisionTests(testCtx));
63
64         return builtinTests.release();
65 }
66
67 } // shaderexecutor
68 } // vkt