From 61eeb33fdbc9925e18b7132947e99a895861b666 Mon Sep 17 00:00:00 2001
From: "bulach@chromium.org"
 <bulach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Date: Tue, 26 Jul 2011 15:30:31 +0000
Subject: Support GL_OES_EGL_image_external

Add support for GL_OES_EGL_image_external to the cmdbuffer code.
Original patch from http://codereview.chromium.org/7458008/
Landing on behalf of Daniel Sievers <sievers@chromium.org>

BUG=
TEST=new unit_tests

Review URL: http://codereview.chromium.org/7480014

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94096 0039d316-1c4b-4281-b951-d872f2087c98
---
 gpu/command_buffer/service/feature_info_unittest.cc | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

(limited to 'gpu/command_buffer/service/feature_info_unittest.cc')

diff --git a/gpu/command_buffer/service/feature_info_unittest.cc b/gpu/command_buffer/service/feature_info_unittest.cc
index f3c4797..95b47e0 100644
--- a/gpu/command_buffer/service/feature_info_unittest.cc
+++ b/gpu/command_buffer/service/feature_info_unittest.cc
@@ -60,6 +60,7 @@ TEST_F(FeatureInfoTest, Basic) {
   EXPECT_FALSE(info_.feature_flags().enable_texture_float_linear);
   EXPECT_FALSE(info_.feature_flags().enable_texture_half_float_linear);
   EXPECT_FALSE(info_.feature_flags().chromium_webglsl);
+  EXPECT_FALSE(info_.feature_flags().oes_egl_image_external);
 }
 
 TEST_F(FeatureInfoTest, InitializeNoExtensions) {
@@ -413,6 +414,22 @@ TEST_F(FeatureInfoTest, InitializeOES_rgb8_rgba8) {
       GL_RGBA8_OES));
 }
 
+TEST_F(FeatureInfoTest, InitializeOES_EGL_image_external) {
+  SetupInitExpectations("GL_OES_EGL_image_external");
+  info_.Initialize(NULL);
+  EXPECT_THAT(info_.extensions(),
+              HasSubstr("GL_OES_EGL_image_external"));
+  EXPECT_TRUE(info_.feature_flags().oes_egl_image_external);
+  EXPECT_TRUE(info_.validators()->texture_bind_target.IsValid(
+      GL_TEXTURE_EXTERNAL_OES));
+  EXPECT_TRUE(info_.validators()->get_tex_param_target.IsValid(
+      GL_TEXTURE_EXTERNAL_OES));
+  EXPECT_TRUE(info_.validators()->texture_parameter.IsValid(
+      GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES));
+  EXPECT_TRUE(info_.validators()->g_l_state.IsValid(
+      GL_TEXTURE_BINDING_EXTERNAL_OES));
+}
+
 }  // namespace gles2
 }  // namespace gpu
 
-- 
cgit v1.1