13c827367444ee418f129b2c238299f49d3264554Jarkko Poyry/*-------------------------------------------------------------------------
23c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * drawElements Quality Program OpenGL ES 2.0 Module
33c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * -------------------------------------------------
43c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
53c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Copyright 2014 The Android Open Source Project
63c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
73c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Licensed under the Apache License, Version 2.0 (the "License");
83c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * you may not use this file except in compliance with the License.
93c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * You may obtain a copy of the License at
103c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
113c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *      http://www.apache.org/licenses/LICENSE-2.0
123c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
133c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Unless required by applicable law or agreed to in writing, software
143c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * distributed under the License is distributed on an "AS IS" BASIS,
153c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
163c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * See the License for the specific language governing permissions and
173c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * limitations under the License.
183c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
193c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *//*!
203c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * \file
213c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * \brief Base class for a test case.
223c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *//*--------------------------------------------------------------------*/
233c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
243c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFunctionalTests.hpp"
253c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
263c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fColorClearTest.hpp"
273c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fLightAmountTest.hpp"
283c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderExecuteTest.hpp"
293c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFboApiTest.hpp"
303c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFboRenderTest.hpp"
313c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFboCompletenessTests.hpp"
323c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fRandomShaderTests.hpp"
333c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fPrerequisiteTests.hpp"
343c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fDepthTests.hpp"
353c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fStencilTests.hpp"
363c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fScissorTests.hpp"
373c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fVertexArrayTest.hpp"
383c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fRasterizationTests.hpp"
393c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fDepthStencilClearTests.hpp"
403c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fDepthStencilTests.hpp"
413c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fBlendTests.hpp"
423c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fRandomFragmentOpTests.hpp"
433c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fMultisampleTests.hpp"
443c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fUniformApiTests.hpp"
453c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fBufferWriteTests.hpp"
463c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fImplementationLimitTests.hpp"
473c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fDepthRangeTests.hpp"
483c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fDitheringTests.hpp"
493c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fClippingTests.hpp"
503c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fPolygonOffsetTests.hpp"
513c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fDrawTests.hpp"
523c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFragOpInteractionTests.hpp"
533c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFlushFinishTests.hpp"
543c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fDefaultVertexAttributeTests.hpp"
553c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fLifetimeTests.hpp"
563c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
573c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureFormatTests.hpp"
583c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureWrapTests.hpp"
593c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureFilteringTests.hpp"
603c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureMipmapTests.hpp"
613c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureSizeTests.hpp"
623c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureSpecificationTests.hpp"
633c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureCompletenessTests.hpp"
643c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fNegativeVertexArrayApiTests.hpp"
653c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fNegativeTextureApiTests.hpp"
663c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fNegativeFragmentApiTests.hpp"
673c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fNegativeBufferApiTests.hpp"
683c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fNegativeShaderApiTests.hpp"
693c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fNegativeStateApiTests.hpp"
703c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fVertexTextureTests.hpp"
713c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureUnitTests.hpp"
723c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
733c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderApiTests.hpp"
743c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderAlgorithmTests.hpp"
753c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderBuiltinVarTests.hpp"
763c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderConstExprTests.hpp"
773c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderDiscardTests.hpp"
783c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderIndexingTests.hpp"
793c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderLoopTests.hpp"
803c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderOperatorTests.hpp"
813c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderReturnTests.hpp"
823c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderStructTests.hpp"
833c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderMatrixTests.hpp"
843c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderTextureFunctionTests.hpp"
853c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fAttribLocationTests.hpp"
863c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderInvarianceTests.hpp"
873c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderFragDataTests.hpp"
883c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
893c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// State query tests
903c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fBooleanStateQueryTests.hpp"
913c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fIntegerStateQueryTests.hpp"
923c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFloatStateQueryTests.hpp"
933c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fTextureStateQueryTests.hpp"
943c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fStringQueryTests.hpp"
953c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fBufferObjectQueryTests.hpp"
963c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fFboStateQueryTests.hpp"
973c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fRboStateQueryTests.hpp"
983c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fShaderStateQueryTests.hpp"
993c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1003c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "es2fReadPixelsTests.hpp"
1013c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1023c827367444ee418f129b2c238299f49d3264554Jarkko Poyrynamespace deqp
1033c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
1043c827367444ee418f129b2c238299f49d3264554Jarkko Poyrynamespace gles2
1053c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
1063c827367444ee418f129b2c238299f49d3264554Jarkko Poyrynamespace Functional
1073c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
1083c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1093c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// ShadersTestGroup
1103c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1113c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass ShadersTestGroup : public TestCaseGroup
1123c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
1133c827367444ee418f129b2c238299f49d3264554Jarkko Poyrypublic:
1143c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	ShadersTestGroup (Context& context)
1153c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		: TestCaseGroup(context, "shaders", "Shader Tests")
1163c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1173c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1183c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1193c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual ~ShadersTestGroup (void)
1203c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1213c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1223c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1233c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual void init (void)
1243c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1253c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "preprocessor",			"Preprocessor Tests"));
1263c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "constants",				"Constant Literal Tests"));
1273c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "linkage",				"Linkage Tests"));
1283c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "conversions",			"Type Conversion Tests"));
1293c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "conditionals",			"Conditionals Tests"));
1303c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "declarations",			"Declarations Tests"));
1313c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "swizzles",				"Swizzle Tests"));
1323c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "functions",				"Function Tests"));
1333c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "keywords",				"Keyword Tests"));
1343c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "reserved_operators",		"Reserved Operator Tests"));
1353c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "qualification_order",	"Order of Qualification Tests"));
1363c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderExecuteTest(m_context, "scoping",				"Scoping of Declarations"));
1373c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1383c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderIndexingTests		(m_context));
1393c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderLoopTests			(m_context));
1403c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderOperatorTests		(m_context));
1413c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderMatrixTests			(m_context));
1423c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderReturnTests			(m_context));
1433c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderDiscardTests			(m_context));
1443c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderStructTests			(m_context));
1453c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderBuiltinVarTests		(m_context));
1463c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderTextureFunctionTests	(m_context));
1473c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderInvarianceTests		(m_context));
1483c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderFragDataTests		(m_context));
1493c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderAlgorithmTests		(m_context));
1503c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderConstExprTests		(m_context));
1513c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1523c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new RandomShaderTests(m_context));
1533c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1543c827367444ee418f129b2c238299f49d3264554Jarkko Poyry};
1553c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1563c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// TextureTestGroup
1573c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1583c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass TextureTestGroup : public TestCaseGroup
1593c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
1603c827367444ee418f129b2c238299f49d3264554Jarkko Poyrypublic:
1613c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	TextureTestGroup (Context& context)
1623c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		: TestCaseGroup(context, "texture", "Texture Tests")
1633c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1643c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1653c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1663c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual ~TextureTestGroup (void)
1673c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1683c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1693c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1703c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual void init (void)
1713c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1723c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureFormatTests			(m_context));
1733c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureSizeTests			(m_context));
1743c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureWrapTests			(m_context));
1753c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureFilteringTests		(m_context));
1763c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureMipmapTests			(m_context));
1773c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureSpecificationTests	(m_context));
1783c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureCompletenessTests	(m_context));
1793c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new VertexTextureTests			(m_context));
1803c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureUnitTests			(m_context));
1813c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1823c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1833c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual void deinit (void)
1843c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1853c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1863c827367444ee418f129b2c238299f49d3264554Jarkko Poyry};
1873c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1883c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass BufferTests : public TestCaseGroup
1893c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
1903c827367444ee418f129b2c238299f49d3264554Jarkko Poyrypublic:
1913c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	BufferTests (Context& context)
1923c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		: TestCaseGroup(context, "buffer", "Buffer object tests")
1933c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1943c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
1953c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
1963c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	void init (void)
1973c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
1983c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new BufferWriteTests(m_context));
1993c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2003c827367444ee418f129b2c238299f49d3264554Jarkko Poyry};
2013c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2023c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// FboTestGroup
2033c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2043c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass FboTestGroup : public TestCaseGroup
2053c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
2063c827367444ee418f129b2c238299f49d3264554Jarkko Poyrypublic:
2073c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	FboTestGroup (Context& context)
2083c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		: TestCaseGroup(context, "fbo", "Framebuffer Object Tests")
2093c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2103c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2113c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2123c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual ~FboTestGroup (void)
2133c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2143c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2153c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2163c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual void init (void)
2173c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2183c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new FboApiTestGroup(m_context));
2193c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new FboRenderTestGroup(m_context));
2203c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(createFboCompletenessTests(m_context));
2213c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2223c827367444ee418f129b2c238299f49d3264554Jarkko Poyry};
2233c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2243c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// NegativeApiTestGroup
2253c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2263c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass NegativeApiTestGroup : public TestCaseGroup
2273c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
2283c827367444ee418f129b2c238299f49d3264554Jarkko Poyrypublic:
2293c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	NegativeApiTestGroup (Context& context)
2303c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		: TestCaseGroup(context, "negative_api", "Negative API Tests")
2313c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2323c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2333c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2343c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual ~NegativeApiTestGroup (void)
2353c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2363c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2373c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2383c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	virtual void init (void)
2393c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2403c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new NegativeBufferApiTests			(m_context));
2413c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new NegativeFragmentApiTests		(m_context));
2423c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new NegativeShaderApiTests			(m_context));
2433c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new NegativeStateApiTests			(m_context));
2443c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new NegativeTextureApiTests		(m_context));
2453c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new NegativeVertexArrayApiTests	(m_context));
2463c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2473c827367444ee418f129b2c238299f49d3264554Jarkko Poyry};
2483c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2493c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// FragmentOpTests
2503c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2513c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass FragmentOpTests : public TestCaseGroup
2523c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
2533c827367444ee418f129b2c238299f49d3264554Jarkko Poyrypublic:
2543c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	FragmentOpTests (Context& context)
2553c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		: TestCaseGroup(context, "fragment_ops", "Per-Fragment Operation Tests")
2563c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2573c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2583c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2593c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	void init (void)
2603c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2613c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new DepthTests				(m_context));
2623c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new StencilTests			(m_context));
2633c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new DepthStencilTests		(m_context));
2643c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ScissorTests			(m_context));
2653c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new BlendTests				(m_context));
2663c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new RandomFragmentOpTests	(m_context));
2673c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new FragOpInteractionTests	(m_context));
2683c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2693c827367444ee418f129b2c238299f49d3264554Jarkko Poyry};
2703c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2713c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// StateQueryTests
2723c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2733c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass StateQueryTests : public TestCaseGroup
2743c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
2753c827367444ee418f129b2c238299f49d3264554Jarkko Poyrypublic:
2763c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	StateQueryTests (Context& context)
2773c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		: TestCaseGroup(context, "state_query", "State Query Tests")
2783c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2793c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2803c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2813c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	void init (void)
2823c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	{
2833c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new BooleanStateQueryTests		(m_context));
2843c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new IntegerStateQueryTests		(m_context));
2853c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new FloatStateQueryTests		(m_context));
2863c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new TextureStateQueryTests		(m_context));
2873c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new StringQueryTests			(m_context));
2883c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new BufferObjectQueryTests		(m_context));
2893c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new FboStateQueryTests			(m_context));
2903c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new RboStateQueryTests			(m_context));
2913c827367444ee418f129b2c238299f49d3264554Jarkko Poyry		addChild(new ShaderStateQueryTests		(m_context));
2923c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	}
2933c827367444ee418f129b2c238299f49d3264554Jarkko Poyry};
2943c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2953c827367444ee418f129b2c238299f49d3264554Jarkko Poyry// FunctionalTestGroup
2963c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
2973c827367444ee418f129b2c238299f49d3264554Jarkko PoyryFunctionalTests::FunctionalTests (Context& context)
2983c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	: TestCaseGroup(context, "functional", "Functionality Tests")
2993c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
3003c827367444ee418f129b2c238299f49d3264554Jarkko Poyry}
3013c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
3023c827367444ee418f129b2c238299f49d3264554Jarkko PoyryFunctionalTests::~FunctionalTests (void)
3033c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
3043c827367444ee418f129b2c238299f49d3264554Jarkko Poyry}
3053c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
3063c827367444ee418f129b2c238299f49d3264554Jarkko Poyryvoid FunctionalTests::init (void)
3073c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
3083c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new PrerequisiteTests			(m_context));
3093c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new ImplementationLimitTests	(m_context));
3103c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new ColorClearTest				(m_context));
3113c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new DepthStencilClearTests		(m_context));
3123c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new BufferTests				(m_context));
3133c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new LightAmountTest			(m_context));
3143c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new ShadersTestGroup			(m_context));
3153c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new TextureTestGroup			(m_context));
3163c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new FragmentOpTests			(m_context));
3173c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new FboTestGroup				(m_context));
3183c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new VertexArrayTestGroup		(m_context));
3193c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new ShaderApiTests				(m_context));
3203c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new NegativeApiTestGroup		(m_context));
3213c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new RasterizationTests			(m_context));
3223c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(createAttributeLocationTests	(m_context));
3233c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new MultisampleTests			(m_context));
3243c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new UniformApiTests			(m_context));
3253c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new ReadPixelsTests			(m_context));
3263c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new DepthRangeTests			(m_context));
3273c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new DitheringTests				(m_context));
3283c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new StateQueryTests			(m_context));
3293c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new ClippingTests				(m_context));
3303c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new PolygonOffsetTests			(m_context));
3313c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new DrawTests					(m_context));
3323c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new FlushFinishTests			(m_context));
3333c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(new DefaultVertexAttributeTests(m_context));
3343c827367444ee418f129b2c238299f49d3264554Jarkko Poyry	addChild(createLifetimeTests			(m_context));
3353c827367444ee418f129b2c238299f49d3264554Jarkko Poyry}
3363c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
3373c827367444ee418f129b2c238299f49d3264554Jarkko Poyry} // Functional
3383c827367444ee418f129b2c238299f49d3264554Jarkko Poyry} // gles2
3393c827367444ee418f129b2c238299f49d3264554Jarkko Poyry} // deqp
340