xref: /aosp_15_r20/external/deqp/external/vulkancts/modules/vulkan/api/vktApiTests.cpp (revision 35238bce31c2a825756842865a792f8cf7f89930)
1 /*-------------------------------------------------------------------------
2  * Vulkan Conformance Tests
3  * ------------------------
4  *
5  * Copyright (c) 2015 Google 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 API Tests
22  *//*--------------------------------------------------------------------*/
23 
24 #include "vktApiTests.hpp"
25 
26 #include "vktTestGroupUtil.hpp"
27 #include "vktApiDeviceInitializationTests.hpp"
28 #include "vktApiDriverPropertiesTests.hpp"
29 #include "vktApiObjectManagementTests.hpp"
30 #include "vktApiBufferTests.hpp"
31 #include "vktApiBufferViewCreateTests.hpp"
32 #include "vktApiBufferViewAccessTests.hpp"
33 #include "vktApiFeatureInfo.hpp"
34 #include "vktApiCommandBuffersTests.hpp"
35 #include "vktApiCopiesAndBlittingTests.hpp"
36 #include "vktApiImageClearingTests.hpp"
37 #include "vktApiFillBufferTests.hpp"
38 #include "vktApiDescriptorPoolTests.hpp"
39 #include "vktApiNullHandleTests.hpp"
40 #include "vktApiGranularityTests.hpp"
41 #include "vktApiGetMemoryCommitment.hpp"
42 #include "vktApiVersionCheck.hpp"
43 #include "vktApiMaintenance3Check.hpp"
44 #include "vktApiDescriptorSetTests.hpp"
45 #include "vktApiPipelineTests.hpp"
46 #include "vktApiMemoryRequirementInvarianceTests.hpp"
47 #include "vktApiBufferMemoryRequirementsTests.hpp"
48 #include "vktApiGetDeviceProcAddrTests.hpp"
49 #include "vktApiMaintenance6Check.hpp"
50 #include "vktApiExtensionDuplicatesTests.hpp"
51 
52 #ifndef CTS_USES_VULKANSC
53 #include "vktApiSmokeTests.hpp"
54 #include "vktApiBufferMarkerTests.hpp"
55 #include "vktApiDeviceDrmPropertiesTests.hpp"
56 #include "vktApiExternalMemoryTests.hpp"
57 #include "vktApiToolingInfoTests.hpp"
58 #include "vktApiFormatPropertiesExtendedKHRtests.hpp"
59 #include "vktApiImageCompressionControlTests.hpp"
60 #include "vktApiFrameBoundaryTests.hpp"
61 #include "vktApiPhysicalDeviceFormatPropertiesMaint5Tests.hpp"
62 #endif // CTS_USES_VULKANSC
63 
64 namespace vkt
65 {
66 namespace api
67 {
68 
69 namespace
70 {
71 
createBufferViewTests(tcu::TestCaseGroup * bufferViewTests)72 void createBufferViewTests(tcu::TestCaseGroup *bufferViewTests)
73 {
74     tcu::TestContext &testCtx = bufferViewTests->getTestContext();
75 
76     bufferViewTests->addChild(createBufferViewCreateTests(testCtx));
77     bufferViewTests->addChild(createBufferViewAccessTests(testCtx));
78 }
79 
createApiTests(tcu::TestCaseGroup * apiTests)80 void createApiTests(tcu::TestCaseGroup *apiTests)
81 {
82     tcu::TestContext &testCtx = apiTests->getTestContext();
83 
84     apiTests->addChild(createVersionSanityCheckTests(testCtx));
85     apiTests->addChild(createDriverPropertiesTests(testCtx));
86 #ifndef CTS_USES_VULKANSC
87     apiTests->addChild(createSmokeTests(testCtx));
88 #endif // CTS_USES_VULKANSC
89     apiTests->addChild(api::createFeatureInfoTests(testCtx));
90 #ifndef CTS_USES_VULKANSC
91     apiTests->addChild(createDeviceDrmPropertiesTests(testCtx));
92 #endif // CTS_USES_VULKANSC
93     apiTests->addChild(createDeviceInitializationTests(testCtx));
94     apiTests->addChild(createObjectManagementTests(testCtx));
95     apiTests->addChild(createBufferTests(testCtx));
96 #ifndef CTS_USES_VULKANSC
97     apiTests->addChild(createBufferMarkerTests(testCtx));
98 #endif // CTS_USES_VULKANSC
99     apiTests->addChild(createTestGroup(testCtx, "buffer_view", createBufferViewTests));
100     apiTests->addChild(createCommandBuffersTests(testCtx));
101     apiTests->addChild(createCopiesAndBlittingTests(testCtx));
102     apiTests->addChild(createImageClearingTests(testCtx));
103     apiTests->addChild(createFillAndUpdateBufferTests(testCtx));
104     apiTests->addChild(createDescriptorPoolTests(testCtx));
105     apiTests->addChild(createNullHandleTests(testCtx));
106     apiTests->addChild(createGranularityQueryTests(testCtx));
107     apiTests->addChild(createMemoryCommitmentTests(testCtx));
108 #ifndef CTS_USES_VULKANSC
109     apiTests->addChild(createExternalMemoryTests(testCtx));
110 #endif // CTS_USES_VULKANSC
111     apiTests->addChild(createMaintenance3Tests(testCtx));
112     apiTests->addChild(createDescriptorSetTests(testCtx));
113     apiTests->addChild(createPipelineTests(testCtx));
114     apiTests->addChild(createMemoryRequirementInvarianceTests(testCtx));
115 #ifndef CTS_USES_VULKANSC
116     apiTests->addChild(createToolingInfoTests(testCtx));
117     apiTests->addChild(createFormatPropertiesExtendedKHRTests(testCtx));
118 #endif // CTS_USES_VULKANSC
119     apiTests->addChild(createBufferMemoryRequirementsTests(testCtx));
120 #ifndef CTS_USES_VULKANSC
121     apiTests->addChild(createImageCompressionControlTests(testCtx));
122     apiTests->addChild(createGetDeviceProcAddrTests(testCtx));
123     apiTests->addChild(createMaintenance6Tests(testCtx));
124     apiTests->addChild(createFrameBoundaryTests(testCtx));
125     apiTests->addChild(createMaintenance5Tests(testCtx));
126 #endif
127     apiTests->addChild(createExtensionDuplicatesTests(testCtx));
128 }
129 
130 } // namespace
131 
createTests(tcu::TestContext & testCtx,const std::string & name)132 tcu::TestCaseGroup *createTests(tcu::TestContext &testCtx, const std::string &name)
133 {
134     return createTestGroup(testCtx, name, createApiTests);
135 }
136 
137 } // namespace api
138 } // namespace vkt
139