Fix TextureAttachment support for unsized DS formats

Unsized DS formats should not pick up support from ES3 automatically.
Also unsized DEPTH COMPONENT textures should not be allowed as texture
attachments without also having support for GL_ANGLE_depth_texture or
GL_OES_depth_texture extensions.
This change modifies some unsized formats to require extension support
for TextureAttachment use.

There are a couple of tests bugs that were exposed by this change so
updated those tests as well.

This CL only changes TextureAttachment support, but it's quite possible
that renderbuffer (and texture) support may also need to be updated.
Will attempt that in a follow-on.

Bug: angleproject:3952
Change-Id: I75d15330dc418c421cd2855135e1e8100a89b2e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877135
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
diff --git a/src/tests/gl_tests/TextureTest.cpp b/src/tests/gl_tests/TextureTest.cpp
index 2e5ca72..9073199 100644
--- a/src/tests/gl_tests/TextureTest.cpp
+++ b/src/tests/gl_tests/TextureTest.cpp
@@ -4976,6 +4976,8 @@
 {
     ANGLE_SKIP_TEST_IF(IsD3D11());
     ANGLE_SKIP_TEST_IF(IsIntel() && IsD3D9());
+    ANGLE_SKIP_TEST_IF(!IsGLExtensionEnabled("GL_ANGLE_depth_texture") &&
+                       !IsGLExtensionEnabled("GL_OES_depth_texture"));
 
     // When the depth texture is specified with unsized internalformat implementations follow
     // OES_depth_texture behavior. Otherwise they follow GLES 3.0 behavior.