Restrict the tests that use ClearBuffer to ES3.
We had changed the configurations to run them in ES2 mode, while
ClearBuffer is an ES3-only method.
BUG=angle:769
Change-Id: I63d92af4702a133aa8bbf52444dfef59a4f602b0
Reviewed-on: https://chromium-review.googlesource.com/221064
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
diff --git a/tests/angle_tests/ClearTest.cpp b/tests/angle_tests/ClearTest.cpp
index 3c86788..253cbdf 100644
--- a/tests/angle_tests/ClearTest.cpp
+++ b/tests/angle_tests/ClearTest.cpp
@@ -4,11 +4,14 @@
typedef ::testing::Types<TFT<Gles::Three, Rend::D3D11>, TFT<Gles::Two, Rend::D3D11>, TFT<Gles::Two, Rend::D3D9>> TestFixtureTypes;
TYPED_TEST_CASE(ClearTest, TestFixtureTypes);
+typedef ::testing::Types<TFT<Gles::Three, Rend::D3D11>> TestFixtureTypesES3;
+TYPED_TEST_CASE(ClearTestES3, TestFixtureTypesES3);
+
template<typename T>
-class ClearTest : public ANGLETest
+class ClearTestBase : public ANGLETest
{
-protected:
- ClearTest() : ANGLETest(T::GetGlesMajorVersion(), T::GetRequestedRenderer())
+ protected:
+ ClearTestBase() : ANGLETest(T::GetGlesMajorVersion(), T::GetRequestedRenderer())
{
setWindowWidth(128);
setWindowHeight(128);
@@ -67,6 +70,14 @@
GLuint mFBO;
};
+template <typename T>
+class ClearTest : public ClearTestBase<T>
+{};
+
+template <typename T>
+class ClearTestES3 : public ClearTestBase<T>
+{};
+
TYPED_TEST(ClearTest, ClearIssue)
{
glEnable(GL_DEPTH_TEST);
@@ -108,7 +119,7 @@
// Requires ES3
// This tests a bug where in a masked clear when calling "ClearBuffer", we would
// mistakenly clear every channel (including the masked-out ones)
-TYPED_TEST(ClearTest, MaskedClearBufferBug)
+TYPED_TEST(ClearTestES3, MaskedClearBufferBug)
{
unsigned char pixelData[] = { 255, 255, 255, 255 };
@@ -145,7 +156,7 @@
glDeleteTextures(2, textures);
}
-TYPED_TEST(ClearTest, BadFBOSerialBug)
+TYPED_TEST(ClearTestES3, BadFBOSerialBug)
{
// First make a simple framebuffer, and clear it to green
glBindFramebuffer(GL_FRAMEBUFFER, mFBO);