1e5c31af7Sopenharmony_ci/*-------------------------------------------------------------------------
2e5c31af7Sopenharmony_ci * drawElements Quality Program OpenGL ES 3.0 Module
3e5c31af7Sopenharmony_ci * -------------------------------------------------
4e5c31af7Sopenharmony_ci *
5e5c31af7Sopenharmony_ci * Copyright 2014 The Android Open Source Project
6e5c31af7Sopenharmony_ci *
7e5c31af7Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
8e5c31af7Sopenharmony_ci * you may not use this file except in compliance with the License.
9e5c31af7Sopenharmony_ci * You may obtain a copy of the License at
10e5c31af7Sopenharmony_ci *
11e5c31af7Sopenharmony_ci *      http://www.apache.org/licenses/LICENSE-2.0
12e5c31af7Sopenharmony_ci *
13e5c31af7Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
14e5c31af7Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
15e5c31af7Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16e5c31af7Sopenharmony_ci * See the License for the specific language governing permissions and
17e5c31af7Sopenharmony_ci * limitations under the License.
18e5c31af7Sopenharmony_ci *
19e5c31af7Sopenharmony_ci *//*!
20e5c31af7Sopenharmony_ci * \file
21e5c31af7Sopenharmony_ci * \brief Tests for precision and range of GLSL builtins and types.
22e5c31af7Sopenharmony_ci *//*--------------------------------------------------------------------*/
23e5c31af7Sopenharmony_ci
24e5c31af7Sopenharmony_ci#include "es3fBuiltinPrecisionTests.hpp"
25e5c31af7Sopenharmony_ci
26e5c31af7Sopenharmony_ci#include "deUniquePtr.hpp"
27e5c31af7Sopenharmony_ci#include "glsBuiltinPrecisionTests.hpp"
28e5c31af7Sopenharmony_ci
29e5c31af7Sopenharmony_ci#include <vector>
30e5c31af7Sopenharmony_ci
31e5c31af7Sopenharmony_cinamespace deqp
32e5c31af7Sopenharmony_ci{
33e5c31af7Sopenharmony_cinamespace gles3
34e5c31af7Sopenharmony_ci{
35e5c31af7Sopenharmony_cinamespace Functional
36e5c31af7Sopenharmony_ci{
37e5c31af7Sopenharmony_cinamespace bpt = gls::BuiltinPrecisionTests;
38e5c31af7Sopenharmony_ci
39e5c31af7Sopenharmony_ciTestCaseGroup* createBuiltinPrecisionTests (Context& context)
40e5c31af7Sopenharmony_ci{
41e5c31af7Sopenharmony_ci	TestCaseGroup*							group		= new TestCaseGroup(
42e5c31af7Sopenharmony_ci		context, "precision", "Builtin precision tests");
43e5c31af7Sopenharmony_ci	std::vector<glu::ShaderType>			shaderTypes;
44e5c31af7Sopenharmony_ci	de::MovePtr<const bpt::CaseFactories>	es3Cases	= bpt::createES3BuiltinCases();
45e5c31af7Sopenharmony_ci
46e5c31af7Sopenharmony_ci	shaderTypes.push_back(glu::SHADERTYPE_VERTEX);
47e5c31af7Sopenharmony_ci	shaderTypes.push_back(glu::SHADERTYPE_FRAGMENT);
48e5c31af7Sopenharmony_ci
49e5c31af7Sopenharmony_ci	bpt::addBuiltinPrecisionTests(context.getTestContext(),
50e5c31af7Sopenharmony_ci								  context.getRenderContext(),
51e5c31af7Sopenharmony_ci								  *es3Cases,
52e5c31af7Sopenharmony_ci								  shaderTypes,
53e5c31af7Sopenharmony_ci								  *group);
54e5c31af7Sopenharmony_ci	return group;
55e5c31af7Sopenharmony_ci}
56e5c31af7Sopenharmony_ci
57e5c31af7Sopenharmony_ci} // Functional
58e5c31af7Sopenharmony_ci} // gles3
59e5c31af7Sopenharmony_ci} // deqp
60