Split WebGL compatibility into two extensions.
The mechanism for requesting extensions is now a separate extension.
Added a way to query the extensions that support enabling.
BUG=angleproject:1523
Change-Id: I2efaa9f6d67b12ecae325f455404e34ba04d0e7c
Reviewed-on: https://chromium-review.googlesource.com/414529
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/tests/gl_tests/WebGLCompatibilityTest.cpp b/src/tests/gl_tests/WebGLCompatibilityTest.cpp
index 48a9d2b..ebc0efc 100644
--- a/src/tests/gl_tests/WebGLCompatibilityTest.cpp
+++ b/src/tests/gl_tests/WebGLCompatibilityTest.cpp
@@ -30,13 +30,13 @@
void SetUp() override
{
ANGLETest::SetUp();
- glEnableExtensionANGLE = reinterpret_cast<PFNGLENABLEEXTENSIONANGLEPROC>(
- eglGetProcAddress("glEnableExtensionANGLE"));
+ glRequestExtensionANGLE = reinterpret_cast<PFNGLREQUESTEXTENSIONANGLEPROC>(
+ eglGetProcAddress("glRequestExtensionANGLE"));
}
void TearDown() override { ANGLETest::TearDown(); }
- PFNGLENABLEEXTENSIONANGLEPROC glEnableExtensionANGLE = nullptr;
+ PFNGLREQUESTEXTENSIONANGLEPROC glRequestExtensionANGLE = nullptr;
};
// Context creation would fail if EGL_ANGLE_create_context_webgl_compatibility was not available so
@@ -49,9 +49,9 @@
// Verify that all extension entry points are available
TEST_P(WebGLCompatibilityTest, EntryPoints)
{
- if (extensionEnabled("GL_ANGLE_webgl_compatibility"))
+ if (extensionEnabled("GL_ANGLE_request_extension"))
{
- EXPECT_NE(nullptr, eglGetProcAddress("glEnableExtensionANGLE"));
+ EXPECT_NE(nullptr, eglGetProcAddress("glRequestExtensionANGLE"));
}
}
@@ -74,7 +74,7 @@
// Test that attempting to enable an extension that doesn't exist generates GL_INVALID_OPERATION
TEST_P(WebGLCompatibilityTest, EnableExtensionValidation)
{
- EXPECT_EQ(GL_FALSE, glEnableExtensionANGLE("invalid_extension_string"));
+ glRequestExtensionANGLE("invalid_extension_string");
EXPECT_GL_ERROR(GL_INVALID_OPERATION);
}
@@ -102,8 +102,9 @@
glDrawElements(GL_TRIANGLES, 2, GL_UNSIGNED_INT, nullptr);
EXPECT_GL_ERROR(GL_INVALID_ENUM);
- if (glEnableExtensionANGLE("GL_OES_element_index_uint"))
+ if (extensionRequestable("GL_OES_element_index_uint"))
{
+ glRequestExtensionANGLE("GL_OES_element_index_uint");
EXPECT_GL_NO_ERROR();
EXPECT_TRUE(extensionEnabled("GL_OES_element_index_uint"));