#include "tests/test_utils/ShaderExtensionTest.h"
namespace
{
const char EXTPragma[] = …;
const char ANGLEPragma[] = …;
const char VertexShaderCompileSucceeds1[] = …;
const char VertexShaderCompileSucceeds2[] = …;
#if defined(ANGLE_ENABLE_VULKAN)
const char VertexShaderCompileFails1[] = …;
const char VertexShaderCompileFails2[] = …;
const char VertexShaderCompileFails3[] = …;
const char VertexShaderCompileFails4[] = …;
const char VertexShaderCompileFails5[] = …;
#endif
const char FragmentShaderCompileSucceeds1[] = …;
const char FragmentShaderCompileSucceeds2[] = …;
#if defined(ANGLE_ENABLE_VULKAN)
const char FragmentShaderCompileFails1[] = …;
const char FragmentShaderCompileFails2[] = …;
const char FragmentShaderCompileFails3[] = …;
const char FragmentShaderCompileFails4[] = …;
const char FragmentShaderCompileFails5[] = …;
const char ComputeShaderCompileFails1[] = …;
const char ComputeShaderCompileFails2[] = …;
const char ComputeShaderCompileFails3[] = …;
const char ComputeShaderCompileFails4[] = …;
const char ComputeShaderCompileFails5[] = …;
const char ComputeShaderCompileFails6[] = …;
#endif
class EXTClipCullDistanceTest : public sh::ShaderExtensionTest
{ … };
class EXTClipCullDistanceForVertexShaderTest : public EXTClipCullDistanceTest
{ … };
class EXTClipCullDistanceForFragmentShaderTest : public EXTClipCullDistanceTest
{ … };
class EXTClipCullDistanceForComputeShaderTest : public EXTClipCullDistanceTest
{ … };
TEST_P(EXTClipCullDistanceForVertexShaderTest, CompileFailsWithoutExtension)
{ … }
TEST_P(EXTClipCullDistanceForVertexShaderTest, CompileFailsWithExtensionWithoutPragma)
{ … }
#if defined(ANGLE_ENABLE_VULKAN)
TEST_P(EXTClipCullDistanceForVertexShaderTest, CompileSucceedsVulkan)
{ … }
#endif
TEST_P(EXTClipCullDistanceForFragmentShaderTest, CompileFailsWithoutExtension)
{ … }
TEST_P(EXTClipCullDistanceForFragmentShaderTest, CompileFailsWithExtensionWithoutPragma)
{ … }
#if defined(ANGLE_ENABLE_VULKAN)
TEST_P(EXTClipCullDistanceForFragmentShaderTest, CompileSucceedsVulkan)
{ … }
class EXTClipCullDistanceForVertexShaderCompileFailureTest
: public EXTClipCullDistanceForVertexShaderTest
{ … };
class EXTClipCullDistanceForFragmentShaderCompileFailureTest
: public EXTClipCullDistanceForFragmentShaderTest
{ … };
class EXTClipCullDistanceForComputeShaderCompileFailureTest
: public EXTClipCullDistanceForComputeShaderTest
{ … };
TEST_P(EXTClipCullDistanceForVertexShaderCompileFailureTest, CompileFails)
{ … }
TEST_P(EXTClipCullDistanceForFragmentShaderCompileFailureTest, CompileFails)
{ … }
TEST_P(EXTClipCullDistanceForComputeShaderCompileFailureTest, CompileFails)
{ … }
#endif
INSTANTIATE_TEST_SUITE_P(…);
INSTANTIATE_TEST_SUITE_P(…);
#if defined(ANGLE_ENABLE_VULKAN)
INSTANTIATE_TEST_SUITE_P(…);
INSTANTIATE_TEST_SUITE_P(…);
INSTANTIATE_TEST_SUITE_P(…);
INSTANTIATE_TEST_SUITE_P(…);
#endif
}