#include "common/angleutils.h"
#include "compiler/translator/SymbolTable.h"
#include "compiler/translator/tree_util/FindMain.h"
#include "compiler/translator/tree_util/IntermNode_util.h"
#include "compiler/translator/tree_util/IntermTraverse.h"
#include "tests/test_utils/ShaderCompileTreeTest.h"
#include <algorithm>
namespace sh
{
namespace
{
ExpectedLValues;
bool AreSymbolsTheSame(const TIntermSymbol *expected, const TIntermSymbol *candidate)
{ … }
bool AreLValuesTheSame(TIntermTyped *expected, TIntermTyped *candidate)
{ … }
TIntermTyped *CreateLValueNode(const ImmutableString &lValueName, const TType &type)
{ … }
ExpectedLValues CreateIndexedLValueNodeList(const ImmutableString &lValueName,
const TType &elementType,
unsigned arraySize)
{ … }
class VerifyOutputVariableInitializers final : public TIntermTraverser
{ … };
class FindStructByName final : public TIntermTraverser
{ … };
}
class InitOutputVariablesWebGL2Test : public ShaderCompileTreeTest
{ … };
class InitOutputVariablesWebGL2VertexShaderTest : public InitOutputVariablesWebGL2Test
{ … };
class InitOutputVariablesWebGL2FragmentShaderTest : public InitOutputVariablesWebGL2Test
{ … };
class InitOutputVariablesWebGL1FragmentShaderTest : public ShaderCompileTreeTest
{ … };
class InitOutputVariablesVertexShaderClipDistanceTest : public ShaderCompileTreeTest
{ … };
TEST_F(InitOutputVariablesWebGL2VertexShaderTest, OutputAllQualifiers)
{ … }
TEST_F(InitOutputVariablesWebGL2VertexShaderTest, OutputArray)
{ … }
TEST_F(InitOutputVariablesWebGL2VertexShaderTest, OutputStruct)
{ … }
TEST_F(InitOutputVariablesWebGL2VertexShaderTest, OutputFromESSL1Shader)
{ … }
TEST_F(InitOutputVariablesWebGL2FragmentShaderTest, Output)
{ … }
TEST_F(InitOutputVariablesWebGL2FragmentShaderTest, FragData)
{ … }
TEST_F(InitOutputVariablesWebGL1FragmentShaderTest, FragData)
{ … }
TEST_F(InitOutputVariablesWebGL1FragmentShaderTest, FragDataWithDrawBuffersExtEnabled)
{ … }
TEST_F(InitOutputVariablesWebGL2VertexShaderTest, InitGLPositionWhenNotStaticallyUsed)
{ … }
TEST_F(InitOutputVariablesWebGL2VertexShaderTest, InitGLPositionOnceWhenStaticallyUsed)
{ … }
TEST_F(InitOutputVariablesVertexShaderClipDistanceTest, RedeclareClipDistance)
{ … }
}