1 /*------------------------------------------------------------------------- 2 * Vulkan Conformance Tests 3 * ------------------------ 4 * 5 * Copyright (c) 2023 LunarG, Inc. 6 * Copyright (c) 2023 Nintendo 7 * 8 * Licensed under the Apache License, Version 2.0 (the "License"); 9 * you may not use this file except in compliance with the License. 10 * You may obtain a copy of the License at 11 * 12 * http://www.apache.org/licenses/LICENSE-2.0 13 * 14 * Unless required by applicable law or agreed to in writing, software 15 * distributed under the License is distributed on an "AS IS" BASIS, 16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 * See the License for the specific language governing permissions and 18 * limitations under the License. 19 * 20 *//*! 21 * \file 22 * \brief Shader Object Tests 23 *//*--------------------------------------------------------------------*/ 24 25 #include "deUniquePtr.hpp" 26 #include "vktShaderObjectApiTests.hpp" 27 #include "vktShaderObjectCreateTests.hpp" 28 #include "vktShaderObjectLinkTests.hpp" 29 #include "vktShaderObjectBinaryTests.hpp" 30 #include "vktShaderObjectPipelineInteractionTests.hpp" 31 #include "vktShaderObjectBindingTests.hpp" 32 #include "vktShaderObjectPerformanceTests.hpp" 33 #include "vktShaderObjectRenderingTests.hpp" 34 #include "vktShaderObjectMiscTests.hpp" 35 36 namespace vkt 37 { 38 namespace ShaderObject 39 { 40 41 namespace 42 { 43 using GroupPtr = de::MovePtr<tcu::TestCaseGroup>; 44 } 45 createTests(tcu::TestContext & testCtx,const std::string & name)46tcu::TestCaseGroup *createTests(tcu::TestContext &testCtx, const std::string &name) 47 { 48 GroupPtr mainGroup(new tcu::TestCaseGroup(testCtx, name.c_str())); 49 50 mainGroup->addChild(createShaderObjectApiTests(testCtx)); 51 mainGroup->addChild(createShaderObjectCreateTests(testCtx)); 52 mainGroup->addChild(createShaderObjectLinkTests(testCtx)); 53 mainGroup->addChild(createShaderObjectBinaryTests(testCtx)); 54 mainGroup->addChild(createShaderObjectPipelineInteractionTests(testCtx)); 55 mainGroup->addChild(createShaderObjectBindingTests(testCtx)); 56 mainGroup->addChild(createShaderObjectPerformanceTests(testCtx)); 57 mainGroup->addChild(createShaderObjectRenderingTests(testCtx)); 58 mainGroup->addChild(createShaderObjectMiscTests(testCtx)); 59 60 return mainGroup.release(); 61 } 62 63 } // namespace ShaderObject 64 } // namespace vkt 65