xref: /aosp_15_r20/external/deqp/external/openglcts/modules/gl/gl4cSpirvExtensionsTests.hpp (revision 35238bce31c2a825756842865a792f8cf7f89930)
1 #ifndef _GL4CSPIRVEXTENSIONSTESTS_HPP
2 #define _GL4CSPIRVEXTENSIONSTESTS_HPP
3 /*-------------------------------------------------------------------------
4  * OpenGL Conformance Test Suite
5  * -----------------------------
6  *
7  * Copyright (c) 2017 The Khronos Group Inc.
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
24  */ /*-------------------------------------------------------------------*/
25 
26 /**
27  */ /*!
28  * \file  gl4cSpirvExtensionsTests.cpp
29  * \brief Conformance tests for the GL_ARB_spirv_extensions functionality.
30  */ /*-------------------------------------------------------------------*/
31 
32 #include "glcTestCase.hpp"
33 #include "glwDefs.hpp"
34 #include "glwEnums.hpp"
35 #include "tcuDefs.hpp"
36 
37 using namespace glw;
38 using namespace glu;
39 
40 namespace gl4cts
41 {
42 
43 /** Test verifies GetIntegerv query for NUM_SPIR_V_EXTENSIONS <pname>
44  *  and GetStringi query for SPIR_V_EXTENSIONS <pname>
45  **/
46 class SpirvExtensionsQueriesTestCase : public deqp::TestCase
47 {
48 public:
49     /* Public methods */
50     SpirvExtensionsQueriesTestCase(deqp::Context &context);
51 
52     void init();
53     tcu::TestNode::IterateResult iterate();
54 
55 private:
56     /* Private members */
57     /* Private methods */
58 };
59 
60 /** Test group which encapsulates spirv extensions conformance tests */
61 class SpirvExtensionsTests : public deqp::TestCaseGroup
62 {
63 public:
64     /* Public methods */
65     SpirvExtensionsTests(deqp::Context &context);
66 
67     void init();
68 
69 private:
70     SpirvExtensionsTests(const SpirvExtensionsTests &other);
71     SpirvExtensionsTests &operator=(const SpirvExtensionsTests &other);
72 };
73 
74 } // namespace gl4cts
75 
76 #endif // _GL4CSPIRVEXTENSIONSTESTS_HPP
77